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

Post on 22-Apr-2015

642 views 0 download

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

Praca z GitemDawid Cieszyński

CrystalCode Studio / Sagittario sp. z o. o.

dawid.cieszynski@crystalcode.pl / dawid.cieszynski@sagittario.pl

+48 517 087 356

Agenda

• Wprowadzenie do gita

• Instalacja GitExtensions i posh-git

• Podstawowe polecenia

• Praca z branchami

• Workflow

• Materiały

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

Git

• Cross-platform DVCS

• Lekki i szybki

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

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

Jak zacząć

• Git Extensions

• .NET Framework 4.0

• Posh-Git

• Power Shell 2.0

Jak zacząć

Podstawy

• staging

• branch, tag, HEAD, ORIG_HEAD

Podstawy

• staging

• branch, tag, HEAD, ORIG_HEAD

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

„brandzlowanie”

„brandzlowanie”

„brandzlowanie”

„brandzlowanie”

„brandzlowanie”

• git branch / git checkout -b

• git checkout

• git merge

• git rebase / git rebase –i

• git reset

• git rebase -i HEAD~10

Zdalne repozytorium

• git remote add

• git pull (git fetch; git merge)

• git push

• git fetch

Workflow

• git pull

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

• git pull i ewentualnie rozwiązanie konfliktów

• git push

Typy workflow

• Centralized workflow

• Feature Branch Workflow

• Gitflow Workflow

• Forking Workflow

Centralized workflow

Feature Branch Workflow

Gitflow Workflow

• Vincent Driessen http://nvie.com

Gitflow Workflow

Gitflow Workflow

Gitflow Workflow

Gitflow Workflow

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

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

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)

Praca z GitemDawid Cieszyński

CrystalCode Studio / Sagittario sp. z o. o.

dawid.cieszynski@crystalcode.pl / dawid.cieszynski@sagittario.pl

+48 517 087 356