▍Шпаргалка по работе с Git¶
Git clone¶
Для клонирования ветки master:
git clone https://github.com/test/test.git
Для клонирования определенной ветки:
git clone https://github.com/test/test.git -b branch-name
Git checkout¶
Лучше всего не работать напрямую в master, а создавать отдельные ветки под разные опции. Как только вы решите, что все фичи соответствуют требованиям и готовы к тестированию, смело сливайте их с веткой master.
В процессе работы возникает необходимость перехода в отдельную ветку репозитория. Это можно сделать следующей командой.
Если ветка уже создана:
git checkout branch-name
Если вы создаете новую ветку опций:
git checkout -b branch-name
Git pull¶
Ваша команда или коллега-разработчик могут изменять ветки репозитория. И каждый раз перед написанием кода вы должны вливать эти изменения в ветку, с которой будете работать. Перейдите в ветку через checkout и выполните команду git pull. Последние изменения будут влиты в локальный репозиторий.
Git add и commit¶
Команды add и commit почти всегда неразлучны. Это как захват и сохранение данных. Вы не сможете ничего сохранить, пока не захватите нужные данные. Таким образом, команда add всегда предшествует commit. С командой add вы указываете определенный файл, который требуется захватить в текущем состоянии, а commit сохраняет его копию.
Для захвата всех файлов (кроме исключений из git ignore) понадобится git add. Захват текущего состояния отдельно взятого файла (к примеру, index.html) делается через git add index.html.
После создания снимков репозитория их нужно закоммитить и сохранить в локальный репозиторий. Это делается через следующую команду:
git commit -m 'commit message'
Сообщение в коммите должно пояснить специфику сохраняемых снимков. Например:
git add index.html
git commit -m 'создание кнопки формы опции'
Две команды можно объединить через оператор &&:
git add index.html && git commit -m 'создание html структуры футера'
Сохранить изменения во всех файлах:
git add -A && git commit -m 'создание html структуры футера'
Git stash и merge¶
git stash сохранит все изменения ветки, которые вы не хотите коммитить. Это значит, что вы можете ждать, пока другой разработчик закоммитит и вольет копию своих изменений в ветку, и параллельно экспериментировать с той же веткой. Git всячески это приветствует. Если вы хотите просто влить новые изменения в локальный репозиторий, но не выполнять слияния с веткой, то просто сохраните эти изменения через stash. git stash сохранит копию этих изменений. Их можно будет просмотреть через список git stash.
git merge – это команда, которая сливает два разных снимка репозитория. Вы можете сливать разные снимки изменений одной и той же ветви, сделанные разными разработчиками. Либо же можно сливать разные снимки разных веток.
При переходе в ветку master команда git merge сливает ветку dev с master и наоборот.
Git push¶
git push отправляет локальный репозиторий на сервер, доступный другим пользователям.
git push -u origin branch-name
Сохранить логин и пароль от репозитория¶
Чтобы каждый раз не вводить данные авторизации, необходимо добавить: