Работа с Git

Основные команды:

git checkout master - переключение ветви на 'master'.

git checkout -b issue/3 - создание и переключение ветви на 'issue/3'.

git branch -d issue/3 - удаление ветви 'issue/3'.

git status - какие файлы отредактированы и ждут добавления (красного цвета ждут).

git add file.txt - добавление файла 'file.txt' перед коммитом.

git add . - добавление всех файлов, которые ждут добавления перед коммитом.

git restore file.txt - отмена добавления файла 'file.txt'.

git commit -m "I changed file.txt" - создание коммита в ветке, в которой мы сейчас находимся.

git commit -S -m "I changed file.txt" - создание верифицированного коммита.

git push origin issue/3 - отправка коммитов из текущей локальной ветки в удаленную (работа с веткой 'issue/3').

git pull origin master - получение в локального мастера все удаленные изменения этой ветки.

git log - отображение отправленных коммитов по текущей ветке.

git rm -r file1 - удаление одного файла.

git rm <file1> <file2> ... <fileN> - удаление нескольких файлов.


Игнорирование предупреждений:

Иногда могут случаться конфликты версий при переключениях и тд. Для большинства команд работает флаг --force, благодаря которому можно игнорировать различные предупреждения и ошибки.


Слияние веток:

Допустим есть ветка issue/4. Хотим слить ее с мастером.

Делаем следующее:
git checkout master - переключение ветви на 'master'.
git merge issue/4 - слияние ветки 'issue/4'.
git push - отправка коммитов из текущей локальной ветки в удаленную.


Если мы хотим форкнуть проект для основы своего:

git clone https://github.com/evg-goncharenko/test - клонируем свой репозиторий.
cd test - перемещаемся в наш репозиторий.
git pull https://github.com/Buddy-app-developing/BuddyWiki - забираем данные с репозитория, который мы хотим форкнуть.
git push origin master - отправка коммитов из текущей локальной ветки в удаленную.

Если мы хотим откатиться к определенному коммиту локально и удаленно:

git reset --hard 743acea - возврат к нужному коммиту.
git push --force - отправка изменений из текущей локальной ветки в удаленную.


Изменение имени папки в репозитории:

git mv old_name new_name
git add .
git commit -m "Change the directory name"
git push origin master