Git w VS

Writing /home/grochu/public_html/wiki/data/cache/7/76e2bf84cdddea26da864f2075f1f2c0.i failed
Unable to save cache file. Hint: disk full; file permissions; safe_mode setting.
Writing /home/grochu/public_html/wiki/data/meta/zajecia/znd_2017_1/source_control_git.meta failed
Unable to save metadata file. Hint: disk full; file permissions; safe_mode setting.
Writing /home/grochu/public_html/wiki/data/cache/2/214a7a88ab5ad2c42f60c1efc3cfe40f.i failed
Writing /home/grochu/public_html/wiki/data/meta/zajecia/znd_2017_1/sidebar.meta failed

REVEAL

Git w VS

Nowe repozytorium

  • File → New → Project → Add to Source Control

Pobierania istniejącego repozytorium (clone)

Configuracja repozytorium

  • Team Explorer → Settings → Repository settings

<fs x-small>Źródło: https://www.visualstudio.com/en-us/docs/git/gitquickstart</fs>

commit - zatwierdzanie zmian

  • Staged changes - lista zmian, która powędruje do następnego zatwierdzenia

<fs x-small>Źródło: https://www.visualstudio.com/en-us/docs/git/gitquickstart</fs>

Historia zmian

Porównywanie zmian

Synchronizacja ze zdalnym repozytorium

  • push - wysyłanie zmian
  • pull = fetch + merge - pobieranie zmian i łączenie z lokalną kopią

<fs x-small>Źródło: https://www.visualstudio.com/en-us/docs/git/gitquickstart</fs>

Gałęzie (branches)

  • gałęzie zawierają równolegle rozwijane wersje kodu, pomiędzy którymi możemy w prosty sposób się przełączać (checkout)
  • merge - dołącza zmiany z innej gałęzi

<fs x-small>Źródło: https://www.visualstudio.com/en-us/docs/git/gitquickstart</fs>

Konflikty

<fs x-small>Źródło: https://www.hanselman.com/blog/</fs>

Cofanie zmian

Pull request

Po wysłaniu zmian umieszczonych w osobnej gałęzi możemy poprosić członków zespołu o weryfikację kodu i dodanie do głównej gałęzi

<fs x-small>Źródło: https://www.visualstudio.com/en-us/docs/git/gitquickstart</fs>

Typowy workflow

  1. tworzymy nową gałąź
  2. zmieniamy zawartość nowej gałęzi i zatwierdzamy zmiany
  3. gdy praca skończona wysyłamy gałąź do zdalnego repozytorium
  4. składamy prośbę (pull request) o weryfikację kodu i integrację z główną gałęzią
  5. aktualizujemy lokalną kopię ze zmianami, które mogli nanieść inni użytkownicy, rozwiązujemy konflikty

<fs x-small>Źródło: https://www.visualstudio.com/en-us/docs/git/tutorial/gitworkflow</fs>

A successful Git workflow

<fs x-small>Źródło: http://nvie.com/ </fs>

Więcej informacji