22
Коллективная работа с кодом: git. Разработчики. Занятие 10

Стажировка-2013, разработчики, занятие 10. Git

  • Upload
    7bits

  • View
    99

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Стажировка-2013, разработчики, занятие 10. Git

Коллективная работа с кодом: git.

Разработчики. Занятие 10

Page 2: Стажировка-2013, разработчики, занятие 10. Git

Как работают централизованные системы контроля версий

Page 3: Стажировка-2013, разработчики, занятие 10. Git

• Централизованный сервер – самое уязвимое место в системе

• Низкая скорость работы• Нет доступа к истории оффлайн• Плохо поддерживает ветвление

Недостатки SVN

Page 4: Стажировка-2013, разработчики, занятие 10. Git

Как работают распределенные системы контроля версий

Page 5: Стажировка-2013, разработчики, занятие 10. Git

• У каждого – полная копия репозитория• Многие команды выполняются

локально, без запроса к серверу• Скорость работы• Работа с проектом оффлайн• Можно использовать несколько

удалённых репозиториев в одном проекте.

• Удобная работа с ветками

Преимущества распределённых систем контроля версий

Page 6: Стажировка-2013, разработчики, занятие 10. Git

Распределённые системы контроля версий

• Git• Mercurial• Bazaar

Page 7: Стажировка-2013, разработчики, занятие 10. Git

Git

Git был разработан Линусом Торвальдсом для управления разработкой кода ядра Linux.

Page 8: Стажировка-2013, разработчики, занятие 10. Git

Основы Git.Хранение данных в SVN и Git.

Page 9: Стажировка-2013, разработчики, занятие 10. Git

Хранение данных в SVN и Git

Хранение данных в SVN: набор файлов и изменений, сделанных для каждого файла.

Page 10: Стажировка-2013, разработчики, занятие 10. Git

Хранение данных в SVN и Git

Хранение данных в Git: хранение слепков файловой системы (папки с проектом)

Page 11: Стажировка-2013, разработчики, занятие 10. Git

Три состояния изменений в Git

• Changes to commit• Not staged changes• Untracked

Page 12: Стажировка-2013, разработчики, занятие 10. Git

git status

Page 13: Стажировка-2013, разработчики, занятие 10. Git

Ветки (branches)

Page 14: Стажировка-2013, разработчики, занятие 10. Git

Ветки (branches)

Page 15: Стажировка-2013, разработчики, занятие 10. Git

Ветки (branches)

Page 16: Стажировка-2013, разработчики, занятие 10. Git

Базовые команды Gitgit clonegit addgit commitgit statusgit fetchgit pushgit pullgit checkoutgit branchgit loggit diff

Page 17: Стажировка-2013, разработчики, занятие 10. Git

Github, Opensource

Github – сервис для хостинга git репозиториев для совместной разработки.

Page 19: Стажировка-2013, разработчики, занятие 10. Git

GUI клиенты для Git

SourceTree (Mac OS X 10.6+, Windows 7+)

Page 20: Стажировка-2013, разработчики, занятие 10. Git

Интеграция с редактором: зачем?

git blame по хоткею в VIM:

Page 21: Стажировка-2013, разработчики, занятие 10. Git

Интеграция с текстовыми редакторами

• SublimeText• VIM• Emacs• Все IDE от JetBrains (IntelliJ IDEA,

RubyMine и другие)• Eclipse

Page 22: Стажировка-2013, разработчики, занятие 10. Git

Что посмотреть/почитать?

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