Начало работы с Git
Скачать, установить и почитать документацию можно на сайте https://git-scm.com
Дальнейшие действия будут производиться на примере работы с командной строкой.
Всегда перед любыми изменениями запрашиваем последнюю версию с сервера git pull
Переходим в папку, где у нас локально будут храниться репозитории (код проекта)
cd ./source/repos/
В Windows по умолчанию создаётся вот такая папка в корневой папке пользователя
Клонируем репозиторий к себе в локальную папку
git clone https://<git_link>/<project_name>.git
Если на этом этапе получаем ошибку SSL сертификата, то ищем решение в заметках
Переходим в папку с названием нашего репозитория (проекта)
cd ./<project_name>
Переключаемся на нужную нам ветку (например, DEV - ветка разработки)
git checkout DEV
Получаем последнюю версию изменений
git pull
Создаём свою собственную ветку, в которой будем вести разработку
git checkout -b <branch_name>
Вносим изменения, создаём новые файлы, делаем доработки и т.п.
Проверяем статус нашей ветки, покажет все изменения
git status
Получаем последнюю версию изменений
git pull
Если разработка ведётся в команде, то лучше получать послдение изменения с ключом --rebase. Так мы избегаем запутывания сделанных изменений в ветке.
git pull --rebase
Выбираем изменения для фиксации (коммита)
Конкретные файлы или папки
git add <path or file name>
или все изменения
git add -A
Делаем коммит (фиксацию изменений) с комментарием
git commit -m "комментарий (50 символов)"
Если ошиблись в комменте, то можно исправить
git commit --amend -m "новый комментарий (50 символов)"
Отправляем изменения на сервер в текущую ветку
git push
или
git push origin
Если разработка ведётся длительное время и в родительнскую ветку уже внесены зменения другими разработчика, то для избежания мерж конфликтов и получения этих изменений в свою ветку можно произвести перебазирование ветки
Переключаеся на свою ветку
git checkout <target-branch-name>
Производим ребейз из родительской ветки (или из которой хотим получить изменения)
git rebase <source-branch-name>
Получим сообщение об успешном перебазировании: Successfully rebased and updated После чего проверяем статус изменений
git status
- где скорее всего увидим сообщение о том, что наша локальная версия ветки отличается от нашей же удалённой ветки (origin-<target-branch-name>). И подсказку, что для устранения расхождений необходимо использовать команду git push
.
Производим слияние нашей ветки разработки с основной (родительской) веткой
Переключаемся на ветку, в которую будем сливать доработку из своей ветки
git checkout <target-branch-name>
Получаем последнюю версию изменений
git pull
Делаем слияние из нашей ветки в выбранную ветку
git merge <yours-branch-name>
Удаление ветки
После слияния ветку можно удалить.
Удаление локальной ветки, если произведён merge изменений из этой ветки (--delete)
git branch -d <yours-branch-name>
Удаление локальной ветки без каких либо проверок (--delete --force)
git branch -D <yours-branch-name>
Удаление ветки из удалённого репозитория
git push <remote-repository-name> --delete <yours-branch-name>
Пример: git push origin --delete DEV
Last updated
Was this helpful?