Команды для синхронизации локального репозитория с удалённым.
git remote add origin https://github.com/YandexPracticum/first-project.git — находясь в папке с локальным репозиторием, привязываем его к удалённому (URL у вас будет свой);
git push -u origin main — заливаем все файлы из локального репозитория в удалённый, который уже привязали.
Команды для того чтобы сделать сохранение — коммит.
git add название_файла — готовим выбранный файл к коммиту;
git add -A — чтобы ничего не потерять, можно подготовить к коммиту сразу все файлы, в которых были изменения;
git commit -m "комментарий к коммиту" — делаем коммит. К сохранённым файлам оставляем комментарий для того, чтобы проще было понять, какие сделаны изменения.
Забыл что-то добавить в коммит— git commit --amend:
Запуск команды откроет Vim. Он предложит изменить комментарий к последнему коммиту. Нажмите i, чтобы начать писать, и введите новый комментарий к коммиту. Как закончите, нажмите esc, введите :wq и нажмите Enter. Так вы сохраните новый комментарий и выйдете из Vim.
git log — посмотреть подробный лог коммитов.
git log --oneline — посмотреть короткий просмотр коммитов.
git diff — посмотреть изменения в «рабочей зоне»; они маркируются гитом как modifided, new или deleted.
git diff --staged — посмотреть изменения, добавленные в staged.
git diff a9928ab 11bada1 — сравнить изменения двух коммитов.
Команды для публикации изменений:
git pull — забрать изменения, сделанные другими разработчиками;
git push — опубликовать изменения в удалённый репозиторий.
Команды для отмены изменений:
Когда всё перестаёт работать, проще всего откатиться назад — вернуться к последнему коммиту. За это отвечает команда git reset.
git reset HEAD. Подход не затрагивает файлы, с которыми вы работаете. Если файл был изменён или добавлен, но не переведён в staged, сброс изменений этот файл не затронет.
git reset --hard. Команда удаляет вообще все изменения: и из staged, и из рабочей зоны. После неё вернуть изменения не выйдет.
Команда git reset --hard позволяет вернуться к любому коммиту. Для этого после команды указывают номер коммита — первые 7 цифр его хеша.
Команды для работы с ветками:
git branch название_ветки — создать новую ветку.
git checkout название_ветки — переключиться в ветку.
git checkout -b название_ветки — создать ветку и сразу переключиться в неё.
git branch -D название_ветки — удалить ветку. Чтобы всё прошло хорошо, нужно переключиться из удаляемой ветки.
git merge название_ветки — скопировать все изменения из ветки в ветку. Чтобы перенести изменения из ветки develop в ветку main, нужно находиться в ветке main и ввести git merge develop;
git revert -m основной_родитель хеш_коммита — отмена коммита слияния веток. Опция -m со значением больше 0 указывает на основную ветку, которая будет сохранена.
git revert хеш_коммита — отмена изменений выбранного коммита. Он не был создан при слиянии, поэтому имеет одного предка.
git stash — скрытие незакоммиченных изменений в текущей рабочей ветке. Опция save название_стэша даёт этим изменениям имена.
git stash pop — возврат последних изменений в любой ветке.
git stash list — показ списка спрятанных во всех ветках изменений и, если для стэша не задано имя, последнего коммита в этой ветке.
git stash apply stash@{n} — возврат выбранных спрятанных изменений из листа стэша, где n — номер в нём.
git stash clear — очистка листа стеша.
Работа с командной строкой - bash
pwd — покажи в какой я папке;
ls — покажи файлы в папке, где я сейчас;
cd first-project — перейди в папку first-project;
cd first-project/html — перейди в папку html, находящуюся в папке first-project;
cd .. — перейди на уровень выше в родительскую папку;
cd ~ — перейди в домашнюю директорию (у нас это /Users/stas_basov);
mkdir second-project — в текущей папке создай папку с именем second-project;
rm about.html — удали файл about.html;
rmdir images — удали папку images;
rm -r second-project — удали папку second-project и всё, что она содержит;
touch index.html — создай файл index.html в текущей папке;
touch index.html style.css script.js — если нужно создать несколько файлов, их имена можно вводить через пробел.
Быстрая навигация
↑ — показать предыдущую команду из буфера.
↓ — показать следующую команду из буфера.
Tab — автоматически дописать команду или путь.
Ctrl + A — перейти в начало строки.
Ctrl + E — перейти в конец строки.
Копирование и перемещение
cp — копировать файл. После команды перечисляют файлы для копирования, а затем — директорию, где должны оказаться копии.
mv — переместить файл. Синтаксис аналогичен команде cp.
Полезные команды
Команды можно передавать терминалу списком, разделяя двумя амперсандами &&.
Скопировать кодBASH# создали папку, перешли в неё, создали два файла, инициализировали гит mkdir simple && cd simple && touch index.html style.css && git init
Просмотр и редактирование
cat — вывести на экран содержимое текстового файла.
cat -n — выполнить команду cat, пронумеровав строки.
cat -s — выполнить команду cat, удалив повторяющиеся строки.
Текстовый редактор Vim
esc — перейти в командный режим, например, для выхода из vim.
i — перейти в командный режим для редактирования, например, чтобы оставить комментарий.
esc и :q! — выйти из vim, не сохранив файл.
esc и :wq — выйти из vim, сохранив файл.