Your SlideShare is downloading. ×
0
Черная и белая магия Git
Выговский Леонид
vygovskiy.com

НТЦ «Аргус»
argustelecom.ru

Application Developers Days 4
13 дек...
Git — система для богов?
13 декабря 2013г.

Черная и белая магия Git

2 из 29
Фарфор и ...
13 декабря 2013г.

Черная и белая магия Git

3 из 29
http://legacy.edenspiekermann.com/projects/hering-web
… и сантехника
13 декабря 2013г.

Черная и белая магия Git

4 из 29
http://www.flickr.com/photos/cgt/4592048715
Файловая система

Stage area

Локальный репозиторий

Удаленный репозиторий

13 декабря 2013г.

Черная и белая магия Git

5...
Репозиторий Git
tree 68782cedc
100644 blob 259f9e

.gitignore

040000 tree 9aa10b

documents

100755 blob 4152a1

build.sh...
демонстрация
13 декабря 2013г.

Черная и белая магия Git

7 из 29
История коммитов
commit be97d6
commit a4a878

commit d67882
commit c782c

tree 68782c

13 декабря 2013г.

tree 81ebe3

tre...
Ссылки

commit be97d6
tag 2.0

master
HEAD

commit a4a878

commit d67882
commit c782c
stable
ver_2.1

13 декабря 2013г.

Ч...
Относительные ссылки
HEAD~3
cmt a4a878

HEAD^1^1
HEAD~2
cmt be97d6

HEAD~1
cmt d67882

HEAD
cmt d67882

HEAD~1^2
cmt c782c...
демонстрация
13 декабря 2013г.

Черная и белая магия Git

11 из 29
Три состояния Git
HEAD

Индекс

Текущее
дерево

Следующее
дерево

.git/objects/

.git/index

Последний
коммит

Следующий
к...
демонстрация
13 декабря 2013г.

Черная и белая магия Git

13 из 29
Откат коммитов
HEAD
Индекс
Последний Следующий
коммит
коммит

Файлы
Текущие
изменения

reset --soft

Да

Нет

Нет

reset [...
демонстрация
13 декабря 2013г.

Черная и белая магия Git

15 из 29
когда что-то пошло не так...
13 декабря 2013г.

Черная и белая магия Git
http://www.genickbruch.com/vb/showthread.php?t=42...
Используй reflog!
13 декабря 2013г.

Черная и белая магия Git

17 из 29
http://www.ghostvolta.com/e3hulk-hogans-main-event...
демонстрация
13 декабря 2013г.

Черная и белая магия Git

18 из 29
черная магия
13 декабря 2013г.

Черная и белая магия Git

19 из 29
http://photographers.com.ua/photo/koldunjya-256487/
Эти операции меняют хэши коммитов!

git rebase -i

git filter-branch

Настройка коммитов

Наведение порядка

13 декабря 20...
демонстрация
13 декабря 2013г.

Черная и белая магия Git

21 из 29
-f — смертельный
ингредиент
13 декабря 2013г.

Черная и белая магия Git

22 из 29
http://barbatos.ru/215-religiya-indejtse...
белая магия
13 декабря 2013г.

Черная и белая магия Git

23 из 29
http://barbatos.ru/215-religiya-indejtsev-majya-chast-4....
слияние (merge)
13 декабря 2013г.

Черная и белая магия Git

24 из 29
http://turizm.lib.ru/img/n/nowak_anatolij_wladimirow...
Красивая история
D vova

git pull [merge]

B vova

git pull -rebase

C igor

D vova merge
D vova
C igor merge
C igor
B vov...
заметки на коммитах
13 декабря 2013г.

Черная и белая магия Git

26 из 29

http://commons.wikimedia.org/wiki/File:Sticky_n...
Заметки на коммитах
commit a4a878

Важная
заметка

13 декабря 2013г.

commit c782c

Просто
заметка

Черная и белая магия G...
аттрибуты
13 декабря 2013г.

Черная и белая магия Git

28 из 29

http://www.stanleyandkatrina.com/2013/09/word-of-week-kat...
7

8

9

6

0

5

F
E
D
C
B
A

13 декабря 2013г.

Черная и белая магия Git

29 из 29
Upcoming SlideShare
Loading in...5
×

Черная и белая магия Git (мастер-класс)

540

Published on

Доклад Леонида Выговского на конференции Application Developer Days-4. г.Минск 13 декабря 2013

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
540
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
11
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • Работа с объектами
  • Важный слайд!
    Каждый коммит — это полное представление рабочей копии в каждый момент времени
    Историю делают последовательности коммитов, которые привязаны к рабочим копиям
  • Важный слайд!
    Надо понимать, что ссылка — это не более чем именнованный коммит. Ветки и метки — это просто ссылки на коммиты.
    Другими словами — ссылка — это указатель на зафиксированный набор файлов в сохраненном формате
  • Важный слайд!
    Надо понимать, что ссылка — это не более чем именнованный коммит. Ветки и метки — это просто ссылки на коммиты.
    Другими словами — ссылка — это указатель на зафиксированный набор файлов в сохраненном формате
  • Работа со ссылками
  • ==== Три состояния
  • ==== Откаты истории
  • ==== Откаты истории
  • ==== Откаты истории
  • Важный слайд!
    Надо понимать, что ссылка — это не более чем именнованный коммит. Ветки и метки — это просто ссылки на коммиты.
    Другими словами — ссылка — это указатель на зафиксированный набор файлов в сохраненном формате
  • Важный слайд!
    Надо понимать, что ссылка — это не более чем именнованный коммит. Ветки и метки — это просто ссылки на коммиты.
    Другими словами — ссылка — это указатель на зафиксированный набор файлов в сохраненном формате
  • Transcript of "Черная и белая магия Git (мастер-класс)"

    1. 1. Черная и белая магия Git Выговский Леонид vygovskiy.com НТЦ «Аргус» argustelecom.ru Application Developers Days 4 13 декабря 2013г
    2. 2. Git — система для богов? 13 декабря 2013г. Черная и белая магия Git 2 из 29
    3. 3. Фарфор и ... 13 декабря 2013г. Черная и белая магия Git 3 из 29 http://legacy.edenspiekermann.com/projects/hering-web
    4. 4. … и сантехника 13 декабря 2013г. Черная и белая магия Git 4 из 29 http://www.flickr.com/photos/cgt/4592048715
    5. 5. Файловая система Stage area Локальный репозиторий Удаленный репозиторий 13 декабря 2013г. Черная и белая магия Git 5 из 29
    6. 6. Репозиторий Git tree 68782cedc 100644 blob 259f9e .gitignore 040000 tree 9aa10b documents 100755 blob 4152a1 build.sh 040000 tree 07a876 source 100644 blob 9bb0b0 040000 tree a82735 100755 blob 809d5c 13 декабря 2013г. Черная и белая магия Git 6 из 29
    7. 7. демонстрация 13 декабря 2013г. Черная и белая магия Git 7 из 29
    8. 8. История коммитов commit be97d6 commit a4a878 commit d67882 commit c782c tree 68782c 13 декабря 2013г. tree 81ebe3 tree 9769f8 Черная и белая магия Git tree 68782c 8 из 29
    9. 9. Ссылки commit be97d6 tag 2.0 master HEAD commit a4a878 commit d67882 commit c782c stable ver_2.1 13 декабря 2013г. Черная и белая магия Git 9 из 29
    10. 10. Относительные ссылки HEAD~3 cmt a4a878 HEAD^1^1 HEAD~2 cmt be97d6 HEAD~1 cmt d67882 HEAD cmt d67882 HEAD~1^2 cmt c782c HEAD^^3 cmt e8f6b 13 декабря 2013г. Черная и белая магия Git 10 из 29
    11. 11. демонстрация 13 декабря 2013г. Черная и белая магия Git 11 из 29
    12. 12. Три состояния Git HEAD Индекс Текущее дерево Следующее дерево .git/objects/ .git/index Последний коммит Следующий коммит 13 декабря 2013г. Черная и белая магия Git Файлы Рабочее Дерево Текущие изменения 12 из 29
    13. 13. демонстрация 13 декабря 2013г. Черная и белая магия Git 13 из 29
    14. 14. Откат коммитов HEAD Индекс Последний Следующий коммит коммит Файлы Текущие изменения reset --soft Да Нет Нет reset [--mixed] Да Да Нет reset --hard Да Да Да Да Да checkout Да (ветка) Возможна потеря данных только при reset --hard 13 декабря 2013г. Черная и белая магия Git 14 из 29
    15. 15. демонстрация 13 декабря 2013г. Черная и белая магия Git 15 из 29
    16. 16. когда что-то пошло не так... 13 декабря 2013г. Черная и белая магия Git http://www.genickbruch.com/vb/showthread.php?t=42411 16 из 29
    17. 17. Используй reflog! 13 декабря 2013г. Черная и белая магия Git 17 из 29 http://www.ghostvolta.com/e3hulk-hogans-main-events/
    18. 18. демонстрация 13 декабря 2013г. Черная и белая магия Git 18 из 29
    19. 19. черная магия 13 декабря 2013г. Черная и белая магия Git 19 из 29 http://photographers.com.ua/photo/koldunjya-256487/
    20. 20. Эти операции меняют хэши коммитов! git rebase -i git filter-branch Настройка коммитов Наведение порядка 13 декабря 2013г. Черная и белая магия Git 20 из 29
    21. 21. демонстрация 13 декабря 2013г. Черная и белая магия Git 21 из 29
    22. 22. -f — смертельный ингредиент 13 декабря 2013г. Черная и белая магия Git 22 из 29 http://barbatos.ru/215-religiya-indejtsev-majya-chast-4.html
    23. 23. белая магия 13 декабря 2013г. Черная и белая магия Git 23 из 29 http://barbatos.ru/215-religiya-indejtsev-majya-chast-4.html
    24. 24. слияние (merge) 13 декабря 2013г. Черная и белая магия Git 24 из 29 http://turizm.lib.ru/img/n/nowak_anatolij_wladimirowich/action/
    25. 25. Красивая история D vova git pull [merge] B vova git pull -rebase C igor D vova merge D vova C igor merge C igor B vova merge B vova A vova 13 декабря 2013г. A vova merge Черная и белая магия Git 25 из 29
    26. 26. заметки на коммитах 13 декабря 2013г. Черная и белая магия Git 26 из 29 http://commons.wikimedia.org/wiki/File:Sticky_notes_on_the_wall_of_the_Wikimedia_Foundation_office,_2010-10-26.jpg
    27. 27. Заметки на коммитах commit a4a878 Важная заметка 13 декабря 2013г. commit c782c Просто заметка Черная и белая магия Git commit d67882 Кто здесь? 27 из 29
    28. 28. аттрибуты 13 декабря 2013г. Черная и белая магия Git 28 из 29 http://www.stanleyandkatrina.com/2013/09/word-of-week-katrina-von-cat-master-of.html
    29. 29. 7 8 9 6 0 5 F E D C B A 13 декабря 2013г. Черная и белая магия Git 29 из 29
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×