- Посмотреть все установленные настройки и узнать, где они располгаются:
$ git config --list --show-origin
- Установка имени пользователя и адреса эл. почты:
$ git config --global user.name "Artem Gusev"
$ git config --global user.email gusev2014russia@mail.ru
- Установка дефолтного редактора:
# sets atom as default code editor
$ git config --global core.editor atom
# sets visual studio code as default code editor
$ git config --global core.editor "code --wait"
# sets vim as default code editor
$ git config --global core.editor "vim"
- Посмотреть текущий конфиг git'а:
$ git config --list
- Просмотреть значение опредленного ключа в конфиге:
$ git config user.name
- Помощь в git:
Если вам нужна помощь при использовании Git, есть 3 способа открыть страницу руководства по любой команде Git:
$ git help <команда>
$ git <команда> --help
$ man git-<команда>
Если же вам нужна краткая инструкция по использования:
$ git <команда> -h
- Инициализция репозитория
$ git init
Эта команда создает в текущей директории новую поддиректорию с именем .git, содержащую все необходимые файлы репозитория - структуру Git-репозитория.
- Клонирование существующего репозитория:
$ git clone <url>
- Для того, чтобы клонировать репозиторий в директорию, отличающимся от имени клона, необходимо указать желаемое имя, как парметр командной строки. За пример возьмем клонирование libgit2:
$ git clone https://github.com/libgit2/libgit2 mylibgit
- Сокращенный вывод статуса:
$ git status -s
<или>
$ git status --short
-
Вывод подробной информации об изменениях (просмотр добавленных и удаленных строк):
- Просмотр непроидексированных имзенений:
$ git diff
- Просмотр проиндексированных изменений:
$ git diff --staged <или> $ git diff --cached
-
Коммит изменений:
- Открытие редактора, прописанного в конфиге, с возможностью ввода текста для коммита:
$ git config
P.S. В редакторе будет отображен следующий текст (или похожий на него):
# Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # On branch master # Your branch is up-to-date with 'origin/master'. # # Changes to be committed: # new file: README # modified: CONTRIBUTING.md # ~ ~ ~ ".git/COMMIT_EDITMSG" 9L, 283C`
ПРИМЕЧАНИЕ! Для ещё более подробного напоминания, что же именно вы поменяли, можете передать аргумент
-v
в командуgit commit
. Это приведёт к тому, что в комментарий будет также помещена дельта/diff
изменений.Когда вы выходите из редактора, Git создаёт для вас коммит с этим сообщением, удаляя комментарии и вывод команды
diff
. -
$ git add <файл>
+$ git commit <файл> -m "<сообщение>"
=$ git commit -a -m "<сообщение>"
-a
- включает все файлы
-
Удаление файлов из директории и из списка отслеживаемых файлов:
$ git rm <файл>
- Удалить файл из индекса, оставив его в рабочем каталоге:
$ git rm --cached <файл>
- Отобраение всех коммитов в истории текущей ветки:
$ git log
- Вывод логов с показом изменений:
$ git log -p
<или>
$ git log --patch
- Вывод логов с краткой записью об изменениях:
$ git log --stat
- Граф в формате ASCII, который показывает текущую ветку и историю слияний:
$ git log --graph
- Изменение сообщения в последнем коммите:
$ git commit --amend -m "Новое сообщение"
- Синхронизация fork-a на github с основным репозиторием:
// Добавляем адрес для отслеживаемой веткой (upstream branch) основного репозитория
$ git remote add upstream https://github.com/test/test-example.git
// Просматриваем все удаленные ветки
$ git remote -v
// Получаем себе веточки
$ git fetch upstream
// Делаем merge нужной нам ветки с master основного репозитория
$ git merge upstream/master
- Удаление файла из stage
$ git reset [file]
- Как выйти из
git diff
?
Ответ: Нажать на клаишу q