SlideShare a Scribd company logo
1 of 32
Git для продолжающих Иван Евтухович
Оверсан-Скалакси scalaxy.ru О докладчике
План работ ,[object Object]
Работа с ветками
Внесение изменений
Бонус
~/.gitconfig [user] email = evtuhovich@gmail.com name = Ivan Evtukhovich [color] ui = auto [alias] st = status ci = commit co = checkout
.git/config [remote "origin"] url = git@trionet.ru:railsclub.ru fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master
.git/config [push] default = current ,[object Object]
matching (по-умолчанию) – все ветки с совпадающими именами
tracking – текущую ветку в ее upstream
Называйте ветки локально так же, как на удаленном сервере
.gitignore log/* tmp/* .idea db/*.sqlite3 db/schema.rb ,[object Object]
Где почитать? ,[object Object]
man git-config
Работа с ветками
git checkout ,[object Object]
git checkout --track origin/new_branch
git checkout <commit-id> -- <path to file>
git checkout ./
git cherry-pick git cherry-pick <commit-id>
git cherry git cherry release master -v + <commit-id> Добавил отсылку письма  - <commit-id> Размер рута из конфига. + <commit-id>Task #14067 - <commit-id> Отдаем информацию в json
git rebase git rebase -i master pick  414649e  Bridge по-умолчанию  pick  3341985  Zabbix trouble pick  fd6f679  Из массива цен берем slots - 1 squash   0dbba34  Баг с ценами
git rebase master feature feature2 (*)
git rebase --onto master feature feature2 master feature
Сложный перенос? А если надо перенести много коммитов из одной ветку в другую?
Объединим 2 приема master (copy) release git co master git co -b copy git rebase --onto release <blue-id> copy -i git co release git merge copy
Продолжение master release copy git co release git merge copy
Внесение изменений HEAD Index Working directory
git status # On branch master # Changes to be committed: #  (use &quot;git reset HEAD <file>...&quot; to unstage) # # modified:  2.txt # # Changed but not updated: #  (use &quot;git add <file>...&quot; to update what will be committed) #  (use &quot;git checkout -- <file>...&quot; to discard changes in working directory) # # modified:  1.txt # # Untracked files: #  (use &quot;git add <file>...&quot; to include in what will be committed) # # 1.html # 2.html
git add ./ Обычно делают так: git add ./ git commit -a -m”Какой красивый фикс” А если изменений много?
git add -e ,[object Object],[object Object]

More Related Content

What's hot

"Почему язык Lua — это интересно?", Ник Заварицкий, (Mail.ru Group)
"Почему язык Lua — это интересно?", Ник Заварицкий, (Mail.ru Group)"Почему язык Lua — это интересно?", Ник Заварицкий, (Mail.ru Group)
"Почему язык Lua — это интересно?", Ник Заварицкий, (Mail.ru Group)
Badoo Development
 
что такое Git и как с ним бороться
что такое Git и как с ним боротьсячто такое Git и как с ним бороться
что такое Git и как с ним бороться
Владимир Кожаев
 
Логирование в Python: то, о чем не пишут в документации
Логирование в Python: то, о чем не пишут в документацииЛогирование в Python: то, о чем не пишут в документации
Логирование в Python: то, о чем не пишут в документации
Ivan Kolodyazhny
 

What's hot (20)

Gitlab devconf
Gitlab devconfGitlab devconf
Gitlab devconf
 
Язык Lua — секреты производительности / Ник Заварицкий (Mail.ru)
Язык Lua — секреты производительности / Ник Заварицкий (Mail.ru)Язык Lua — секреты производительности / Ник Заварицкий (Mail.ru)
Язык Lua — секреты производительности / Ник Заварицкий (Mail.ru)
 
"Опыт внедрения автоматизации на PHP проектах (Docker, Gitlab CI)"
"Опыт внедрения автоматизации на PHP проектах (Docker, Gitlab CI)""Опыт внедрения автоматизации на PHP проектах (Docker, Gitlab CI)"
"Опыт внедрения автоматизации на PHP проектах (Docker, Gitlab CI)"
 
"Почему язык Lua — это интересно?", Ник Заварицкий, (Mail.ru Group)
"Почему язык Lua — это интересно?", Ник Заварицкий, (Mail.ru Group)"Почему язык Lua — это интересно?", Ник Заварицкий, (Mail.ru Group)
"Почему язык Lua — это интересно?", Ник Заварицкий, (Mail.ru Group)
 
Ngs 1 2
Ngs 1 2Ngs 1 2
Ngs 1 2
 
Git (presentation)
Git (presentation)Git (presentation)
Git (presentation)
 
Внедрение Docker в процесс разработки демонов. Доклад Константина Карпова на ...
Внедрение Docker в процесс разработки демонов. Доклад Константина Карпова на ...Внедрение Docker в процесс разработки демонов. Доклад Константина Карпова на ...
Внедрение Docker в процесс разработки демонов. Доклад Константина Карпова на ...
 
БЭМ: новости проектов и последние релизы — Владимир Гриненко
БЭМ: новости проектов и последние релизы — Владимир ГриненкоБЭМ: новости проектов и последние релизы — Владимир Гриненко
БЭМ: новости проектов и последние релизы — Владимир Гриненко
 
Дмитрий Пронин – Python для веба
Дмитрий Пронин – Python для вебаДмитрий Пронин – Python для веба
Дмитрий Пронин – Python для веба
 
что такое Git и как с ним бороться
что такое Git и как с ним боротьсячто такое Git и как с ним бороться
что такое Git и как с ним бороться
 
Зачем программистам Ansible
Зачем программистам AnsibleЗачем программистам Ansible
Зачем программистам Ansible
 
Reform: путь к лучшему ORM
Reform: путь к лучшему ORMReform: путь к лучшему ORM
Reform: путь к лучшему ORM
 
Логирование в Python: то, о чем не пишут в документации
Логирование в Python: то, о чем не пишут в документацииЛогирование в Python: то, о чем не пишут в документации
Логирование в Python: то, о чем не пишут в документации
 
Retro vs Volley
Retro vs VolleyRetro vs Volley
Retro vs Volley
 
M18 backups
M18 backupsM18 backups
M18 backups
 
2014.10.15 Сергей Бурладян, Avito.ru
2014.10.15 Сергей Бурладян, Avito.ru2014.10.15 Сергей Бурладян, Avito.ru
2014.10.15 Сергей Бурладян, Avito.ru
 
2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench
2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench
2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench
 
Git
GitGit
Git
 
Ngs 2 0_0
Ngs 2 0_0Ngs 2 0_0
Ngs 2 0_0
 
2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia
2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia
2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia
 

Similar to Git для продолжающих

Как удержать проект от анархии с помощью Git
Как удержать проект от анархии с помощью Git Как удержать проект от анархии с помощью Git
Как удержать проект от анархии с помощью Git
phpdevby
 
Как удержать проект от анархии с помощью Git
Как удержать проект от анархии с помощью GitКак удержать проект от анархии с помощью Git
Как удержать проект от анархии с помощью Git
phpdevby
 
Антон Шумихин - Redmin&Git
Антон Шумихин - Redmin&GitАнтон Шумихин - Redmin&Git
Антон Шумихин - Redmin&Git
GAiN@ESD
 

Similar to Git для продолжающих (20)

Git for you
Git for youGit for you
Git for you
 
Git presentation
Git presentationGit presentation
Git presentation
 
Как удержать проект от анархии с помощью Git
Как удержать проект от анархии с помощью Git Как удержать проект от анархии с помощью Git
Как удержать проект от анархии с помощью Git
 
Как удержать проект от анархии с помощью Git
Как удержать проект от анархии с помощью GitКак удержать проект от анархии с помощью Git
Как удержать проект от анархии с помощью Git
 
Системы управления версиями (VCS). Знакомство с Git.
Системы управления версиями (VCS). Знакомство с Git.Системы управления версиями (VCS). Знакомство с Git.
Системы управления версиями (VCS). Знакомство с Git.
 
базовые принципы работы с Git
базовые принципы работы с Gitбазовые принципы работы с Git
базовые принципы работы с Git
 
Git для начинающих
Git для начинающихGit для начинающих
Git для начинающих
 
Распределенные системы контоля версия на примере git
Распределенные системы контоля версия на примере gitРаспределенные системы контоля версия на примере git
Распределенные системы контоля версия на примере git
 
Git for experienced
Git for experiencedGit for experienced
Git for experienced
 
Minimal Version Selection - dependency management in Go 1.11, Golang Meetup 0...
Minimal Version Selection - dependency management in Go 1.11, Golang Meetup 0...Minimal Version Selection - dependency management in Go 1.11, Golang Meetup 0...
Minimal Version Selection - dependency management in Go 1.11, Golang Meetup 0...
 
Git - распределенная система контроля версий
Git - распределенная система контроля версийGit - распределенная система контроля версий
Git - распределенная система контроля версий
 
Презентация Git-flow (на русском)
Презентация Git-flow (на русском)Презентация Git-flow (на русском)
Презентация Git-flow (на русском)
 
Антон Шумихин - Redmin&Git
Антон Шумихин - Redmin&GitАнтон Шумихин - Redmin&Git
Антон Шумихин - Redmin&Git
 
Gradle in Enterprise, Is it possible?
Gradle in Enterprise, Is it possible?Gradle in Enterprise, Is it possible?
Gradle in Enterprise, Is it possible?
 
Git basis
Git basisGit basis
Git basis
 
GitFlow_MOEX
GitFlow_MOEXGitFlow_MOEX
GitFlow_MOEX
 
MxxRu::externals: Repositoryless Dependency Manager
MxxRu::externals: Repositoryless Dependency ManagerMxxRu::externals: Repositoryless Dependency Manager
MxxRu::externals: Repositoryless Dependency Manager
 
Try to be professional
Try to be professionalTry to be professional
Try to be professional
 
DDOS mitigation software solutions
DDOS mitigation software solutionsDDOS mitigation software solutions
DDOS mitigation software solutions
 
iweb01
iweb01iweb01
iweb01
 

More from Ivan Evtukhovich

Нетрадиционное использование Ruby и PostgreSQL
Нетрадиционное использование Ruby и PostgreSQLНетрадиционное использование Ruby и PostgreSQL
Нетрадиционное использование Ruby и PostgreSQL
Ivan Evtukhovich
 

More from Ivan Evtukhovich (11)

Развитие DevOps/NoOps инструментов. Что было, что есть, что будет.
Развитие DevOps/NoOps инструментов.  Что было, что есть, что будет.Развитие DevOps/NoOps инструментов.  Что было, что есть, что будет.
Развитие DevOps/NoOps инструментов. Что было, что есть, что будет.
 
Микросервисы: откуда столько шума?
Микросервисы: откуда столько шума?Микросервисы: откуда столько шума?
Микросервисы: откуда столько шума?
 
Микросервисы: откуда столько шума?
Микросервисы: откуда столько шума?Микросервисы: откуда столько шума?
Микросервисы: откуда столько шума?
 
Жизнь консалтинга в мире DevOps
Жизнь консалтинга в мире DevOpsЖизнь консалтинга в мире DevOps
Жизнь консалтинга в мире DevOps
 
DevOps и системы управления конфигурацией. SECON 2015
DevOps и системы управления конфигурацией. SECON 2015DevOps и системы управления конфигурацией. SECON 2015
DevOps и системы управления конфигурацией. SECON 2015
 
Куда движется управление инфраструктурой
Куда движется управление инфраструктуройКуда движется управление инфраструктурой
Куда движется управление инфраструктурой
 
Повторяемость для котиков: библиотекарь и книжная полка
Повторяемость для котиков: библиотекарь и книжная полкаПовторяемость для котиков: библиотекарь и книжная полка
Повторяемость для котиков: библиотекарь и книжная полка
 
Continuousdelivery
ContinuousdeliveryContinuousdelivery
Continuousdelivery
 
Нетрадиционное использование Ruby и PostgreSQL
Нетрадиционное использование Ruby и PostgreSQLНетрадиционное использование Ruby и PostgreSQL
Нетрадиционное использование Ruby и PostgreSQL
 
Vim or die
Vim or dieVim or die
Vim or die
 
Краткое описание Scrum
Краткое описание ScrumКраткое описание Scrum
Краткое описание Scrum
 

Git для продолжающих