Please enable JavaScript.
Coggle requires JavaScript to display documents.
Git - Coggle Diagram
Git
общие команды
git - команда в командной строке, которая открывает git
-
-
-
-
-
clear - убрать все, что выше
-
Git add
-
-
Если файл изменяется после предыдущего коммита, то файлу присваивается статус “modified” - и он не зафиксирован в гите
-
-
-m - это мэссэдж в конце коммита - в котором ты пишешь строчкой, что именно в комите добавлено
-
git log - посмотреть историю коммитов - вылазят хэшы - уникальные идентификаторы коммитов в виде строки символов
Git checkout
Git checkout - используется как перемещение между коммитами, версиями отдельных файлов и ветками. Перемещает состояние проекта возвращая к указанному снимку. При этом не удаляет коммиты. В любой момент можно вернуться к актуальной версии.
-
-
git checkout <хэш коммита #2> --путьдофайла1 путьдо_файла_2 - возвращает два файла file1 и file2 к версии, которая была у них в указанном коммите
git checkout --. - вернет все файлы в репозитории, которая у них была в последнем коммите (HEAD) - это работает только для неотслеживаемых (untracked или modified) измененией.
-- - две черты - указывают, что после них идет обычный текст, например, путь до файла, а не команда или параметр команды
-
-
Git rebase
Git rebase - тоже сливает ветки, как и git merge.
-
-
-
-
git cherry-pick
Используется тогда, когда нам надо "взять" один или несколько коммитов из другой ветки в нашу ветку
git cherry-pick --edit Хотим перенести коммит из другой ветки, но при этом хотим
поменять сообщение коммита
git cherry-pick --no-commit Хотим перенести изменения из коммита из другой ветки, но при этом не хотим делать коммит в нашей ветке.
git cherry-pick -x хэш_коммита - Указывает в сообщении коммита хэш того коммита, из которого мы сделали cherry-pick
git cherry-pick --signoff хэш_коммита - Указывает в сообщении коммита имя того пользователя, кто совершил cherry-pick
git remote
git remote add название репозитория адрес репозитория - добавить новый удаленный репозиторий, который находится по указанному адресу.
-
-
-
Branching
-
-
-
Просто git branch - покажет на какой именно ветки мы находимся (на какой указатель HEAD расположен).
Git diff
git diff - показывает разницу между текущими неотслеживаемыми состоянием репозитория и последним снимком репозитория.
git diff --staged - показывает разницу между текущим отслеживаемым состоянием репозитория и последним снимком репозитория.
git diff COMMIT_ID показывает разницу между текущим состоянием репозитория и указанным снимком репозитория (хэш указываем за место COMMIT_ID)
-
Git clean
Git clean - команда, позволяющая работать с untracked файлами
-
-
-
Git commit
Git commit -a -m “сообщение” - то же самое, что последовательное выполнение git add. и git commit -m “Сообщение коммита”
Единственное, но важное отличие: не добавляет в отслеживаемую зону ( и в коммит, соответственно) новые (untracked) файлы. Добавляет только модифицированные (modified) файлы.
git commit --amend -m “новое сообщение коммита” - дополняет последний коммит, добавляя в него “свежие” изменения. Также, меняет сообщение последнего коммита. Новый коммит не создается!
Git pull
-
git pull названиеудаленногорепозитория ветка
Например: git pull origin master - притягиваем из удаленного репозитория с именем origin нашу ветку master
Git reset
git reset - опасная команда, способная переписать историю , предназначена для отмены каких-либо изменений в проекте, отката проекта к какому-то снимку
git reset - опасная команда, способная переписать историю , предназначена для отмены каких-либо изменений в проекте, отката проекта к какому-то снимку
head - указатель самого актуального коммита, самого последнего в истории, с которым идет работа. указатель head можно смещать.
-
-
head~2 - тоже на два, только другой синтаксис
три режима, отличающиеся радикальностью отката
-
--mixed - используется по умолчанию - возвращает проект к указанному коммиту, при этом переводит все коммиты после указанного в неотслеживаемую (unstaged) зону
--hard - возвращает проект к указанному коммиту, при этому полностью безвозвратно удаляет все коммиты после указанного
git reset [--soft] [commit] - тут где [--soft] - указывается режим из перечисленных, а где [commit] может быть хэш коммита или различные перечисленные вариации с head
-
-
Git fetch
Git fetch как git pull , но только скачивает- удаленные ветки с репозитория, но не производит актуализацию ваших локальных веток ( не делая слияния удаленной ветки с локальной).
-