diff --git a/.gitignore b/.gitignore index 9d17fc14..1b1a0b8c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,6 @@ # Коллекция полезных .gitignore от GitHub: https://github.com/github/gitignore # Игнорирование всех markdown-файлов: -*.md # Исключение из игнорирования конкретного файла: !init.md diff --git a/branch.md b/branch.md new file mode 100644 index 00000000..21f6dcf5 --- /dev/null +++ b/branch.md @@ -0,0 +1,14 @@ +## S3. Манипуляции через ссылки, нет ссылки — в мусор +#### HEAD — текущая ссылка, tag — фиксированная ссылка, branch — движущаяся за HEAD ссылка +#### checkout — перемещение на ветку или коммит, reset — перемещение с веткой на коммит +#### Видно то, на что есть ссылки, остальное — мусор +- `git tag` — вывести список тегов +- `git tag ` — создать тег +- `git branch` — вывести список локальных веток +- `git branch -av` — вывести список локальных и удаленных веток +- `git branch ` — создать ветку +- `git branch -d ` — удалить ветку +- `git checkout ` или `git switch --detach ` — переместить HEAD на коммит, причем получится detached HEAD +- `git checkout `или `git switch ` — переместить HEAD на ветку +- `git checkout -b ` или `git switch -c ` — создать ветку и перейти на нее +- `git reset --hard ` — переместить HEAD и текущую ветку на `` \ No newline at end of file diff --git a/commit.md b/commit.md new file mode 100644 index 00000000..258cd957 --- /dev/null +++ b/commit.md @@ -0,0 +1,9 @@ +## S2. Хранятся состояния директории, постепенная сборка коммита +#### Хранятся файлы, разница вычисляется на лету +#### Commit index для сборки коммита +- `git add .` — добавить все измененные файлы в индекс +- `git commit -m ` — записать изменения из индекса в репозиторий +- `git status -sb` — вывести состояние директории и индекса кратко с указанием текущей ветки +- `git restore .` или `git checkout .` — отменить изменения в директории по индексу +- `git restore -S .` или `git reset .` — отменить изменения индекса по коммиту (отмена `git add .`) +- `git rm ` — удалить файл из индекса, чтобы перестать хранить его историю в репозитории \ No newline at end of file diff --git a/init.md b/init.md new file mode 100644 index 00000000..84a27dc6 --- /dev/null +++ b/init.md @@ -0,0 +1,4 @@ +## S1. Все локально +#### Все данные хранятся в локальных репозиториях, изменения между ними можно синхронизировать +- `git init` — создать пустой репозиторий +- `git clone ` — склонировать репозиторий в новую директорию \ No newline at end of file