Upload
7bits
View
99
Download
4
Embed Size (px)
Citation preview
Коллективная работа с кодом: git.
Разработчики. Занятие 10
Как работают централизованные системы контроля версий
• Централизованный сервер – самое уязвимое место в системе
• Низкая скорость работы• Нет доступа к истории оффлайн• Плохо поддерживает ветвление
Недостатки SVN
Как работают распределенные системы контроля версий
• У каждого – полная копия репозитория• Многие команды выполняются
локально, без запроса к серверу• Скорость работы• Работа с проектом оффлайн• Можно использовать несколько
удалённых репозиториев в одном проекте.
• Удобная работа с ветками
Преимущества распределённых систем контроля версий
Распределённые системы контроля версий
• Git• Mercurial• Bazaar
Git
Git был разработан Линусом Торвальдсом для управления разработкой кода ядра Linux.
Основы Git.Хранение данных в SVN и Git.
Хранение данных в SVN и Git
Хранение данных в SVN: набор файлов и изменений, сделанных для каждого файла.
Хранение данных в SVN и Git
Хранение данных в Git: хранение слепков файловой системы (папки с проектом)
Три состояния изменений в Git
• Changes to commit• Not staged changes• Untracked
git status
Ветки (branches)
Ветки (branches)
Ветки (branches)
Базовые команды Gitgit clonegit addgit commitgit statusgit fetchgit pushgit pullgit checkoutgit branchgit loggit diff
Github, Opensource
Github – сервис для хостинга git репозиториев для совместной разработки.
Opensource contributions by location
http://davidfischer.github.io/gdc2/#languages/All
GUI клиенты для Git
SourceTree (Mac OS X 10.6+, Windows 7+)
Интеграция с редактором: зачем?
git blame по хоткею в VIM:
Интеграция с текстовыми редакторами
• SublimeText• VIM• Emacs• Все IDE от JetBrains (IntelliJ IDEA,
RubyMine и другие)• Eclipse
Что посмотреть/почитать?
• http://git-scm.com/book/ru/