Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

32
Praca z Gitem Dawid Cieszyński CrystalCode Studio / Sagittario sp. z o. o. [email protected] / [email protected] +48 517 087 356

description

Prezentacja przygotowana przez Dawida Cieszyńskiego dotycząca pracy z Gitem.

Transcript of Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Page 1: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Praca z GitemDawid Cieszyński

CrystalCode Studio / Sagittario sp. z o. o.

[email protected] / [email protected]

+48 517 087 356

Page 2: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Agenda

• Wprowadzenie do gita

• Instalacja GitExtensions i posh-git

• Podstawowe polecenia

• Praca z branchami

• Workflow

• Materiały

Page 3: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Wprowadzenie

• Rozproszony system kontroli wersji (DVCS)

• Pełna kopia lokalna (razem z historią)

• Zmiany współdzielone przez wszystkich

• Każdy ma kopię zapasową

• Pełne wsparcie pracy offline

• Brak możliwości blokowania plików (lock)

• Pierwsze pobranie danych może trwać dłużej

Page 4: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Git

• Cross-platform DVCS

• Lekki i szybki

• Obsługiwany z konsoli lub przez środowisko graficzne oraz większość IDE

Page 5: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Git

• Migawki, nie różnice

• Niemal każda operacja jest lokalna

• Git ma wbudowane mechanizmy spójności danych

• Standardowo Git wyłącznie dodaje nowe dane

Page 6: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Jak zacząć

• Git Extensions

• .NET Framework 4.0

• Posh-Git

• Power Shell 2.0

Page 7: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14
Page 8: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Jak zacząć

Page 9: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14
Page 10: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14
Page 11: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Podstawy

• staging

• branch, tag, HEAD, ORIG_HEAD

Page 12: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Podstawy

• staging

• branch, tag, HEAD, ORIG_HEAD

Page 13: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Podstawy

• git init / git clone

• git add

• git commit

• git status

• git log / git shortlog / git reflog

• git stash / git stash apply

• git commit --amend

• git show

Page 14: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

„brandzlowanie”

Page 15: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

„brandzlowanie”

Page 16: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

„brandzlowanie”

Page 17: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

„brandzlowanie”

Page 18: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

„brandzlowanie”

• git branch / git checkout -b

• git checkout

• git merge

• git rebase / git rebase –i

• git reset

• git rebase -i HEAD~10

Page 19: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Zdalne repozytorium

• git remote add

• git pull (git fetch; git merge)

• git push

• git fetch

Page 20: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Workflow

• git pull

• wprowadzenie zmian w plikach + commity lokalne + praca na branchachlokalnych

• git pull i ewentualnie rozwiązanie konfliktów

• git push

Page 21: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Typy workflow

• Centralized workflow

• Feature Branch Workflow

• Gitflow Workflow

• Forking Workflow

Page 22: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Centralized workflow

Page 23: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Feature Branch Workflow

Page 24: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Gitflow Workflow

• Vincent Driessen http://nvie.com

Page 25: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Gitflow Workflow

Page 26: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Gitflow Workflow

Page 27: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Gitflow Workflow

Page 28: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Gitflow Workflow

Page 29: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Forking Workflow

1. The project maintainer initializes the official repository

2. Developers fork the official repository

3. Developers clone their forked repositories

4. Developers work on their features

5. Developers publish their features

6. The project maintainer integrates their features

7. Developers synchronize with the official repository

Page 30: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Podsumowanie

• Jak działa git

• Jak go zainstalować oraz używać commitów i branchy

• Jak podłączyć się do zdalnego repozytorium oraz pobierać i wysyłać zmiany

• Jak pracować z gitem w projektach

W prezentacji wykorzystano rysunki z: git-scm.com, www.atlassian.com

Page 31: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Materiały

• Informacje o gicie:

• http://git-scm.com/book/pl

• http://pcottle.github.io/learnGitBranching/

• http://www.atlassian.com/git/workflows

• http://nvie.com/posts/a-successful-git-branching-model/

• Darmowe repozytoria gita:

• https://github.com/ (bezpłatnie tylko repo publiczne)

• https://bitbucket.org/ (bezpłatnie ograniczenie do 5 osób w zespole, brak ograniczenia ilości i wielkości repozytoriów)

Page 32: Prezentacja "Praca z Gitem" - Dawid Cieszyński OLMUG 22.01.14

Praca z GitemDawid Cieszyński

CrystalCode Studio / Sagittario sp. z o. o.

[email protected] / [email protected]

+48 517 087 356