Основы работы с GIT

Решил изучить возможности работы с GIT из командной строки. В результате получился список основных команд, дающий возможность успешно использовать основные возможности GIT.

Установка имени и электронной почты

git config --global user.name "Your Name"
git config --global user.email "your_email@whatever.com"

Параметры установки окончаний строк

git config --global core.autocrlf true
git config --global core.safecrlf true

Создание репозитория

git init

Добавление страницы в репозиторий

git add hello.html
git commit -m "First Commit"
git add . – добавит все изменения каталога

без –m комментарий будет писаться в редакторе по умолчанию

Проверка статуса репозитория

git status

История изменений

git log

Однострочная история изменений

git log --pretty=oneline
git log --pretty=oneline --max-count=2
git log --pretty=oneline --since='5 minutes ago'
git log --pretty=oneline --until='5 minutes ago'
git log --pretty=oneline --author=
git log --pretty=oneline –all
  • --pretty="..." — определяет формат вывода.
  • %h — укороченный хэш коммита
  • %d — дополнения коммита («головы» веток или теги)
  • %ad — дата коммита
  • %s — комментарий
  • %an — имя автора
  • --graph — отображает дерево коммитов в виде ASCII-графика
  • --date=short — сохраняет формат даты коротким и симпатичным

Алиасы

git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.br branch
git config --global alias.hist 'log --pretty=format:"%h %ad | %s%d [%an]" --graph --date=short'
git config --global alias.type 'cat-file -t'
git config --global alias.dump 'cat-file -p'

файл .GITCONFIG

[alias]
co = checkout
ci = commit
st = status
br = branch
hist = log --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short
type = cat-file -t
dump = cat-file -p

Последняя версия в ветке master

git checkout master

Создание тега

git tag tagName

Просмотреть доступные теги

git tag

Отмена изменений в рабочем каталоге

git checkout

gitk — графическая утилита, которая показывает наш граф. В качестве ключей передаём имена веток или --all, чтобы показать все

Отмена индексации изменений

git reset HEAD <имя файла>

Коммит с новыми изменениями, отменяющими предыдущие

git revert HEAD

Сброс коммитов к предшествующим коммиту

git reset --hard tagName

Сброс ветки по хэшу

git reset --hard <хэш номер>

Удаление тега tagName

git tag -d tagName
Удалит таг tagName и все коммиты, на которые он ссылается.

Внесение изменений в предыдущий коммит

git commit --amend -m "This is comments"

Перемещение файлов

git mv filename dirName
mv – перемещает файл
rm – удаляет файл

Создать новую ветку

git checkout -b <имя ветки>

Перемещение между ветками

git checkout <имя ветки>

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

git checkout <име первой ветки>
git merge <имя второй ветки>

Клонирование репозитория

git clone <имя исходного> <имя клона>

Список доступных веток

git branch
git branch –a – все доступные ветки

Извлечение изменений

git fetch git merge origin/master – извлечение изменений в локальную версию

Извлечение и слияние изменений

git pull
Эквивалентна git fetch и git merge

Отправка изменений

git push

Добавить комментарий