Описание команд GIT

Создать репозиторий в текущей директории:

# git init

Клонирование с удаленного GIT:

git clone <remote-repo-url>

Клонирование с удаленного GIT с определенной ветки:

git clone --branch <branchname> <remote-repo-url>
git clone -b <branchname> <remote-repo-url>

Формирование списка файлов для комита из текущей директории:

# git add .

Формировать список файлов для комита с удаляемыми файлами:

git add --all

Очистка списка файлов подготовленных для комита:

# git reset

Просмотреть список файлов подготовленных для комита:

# git status

Создать комит:

# git commit -m "название комита"

посмотреть текущие изменения

git diff

посмотреть текущие изменения в определенном файле

git diff app/Tools/Balance.php

создание новой ветки

git write-tree <new_tree>

переключится на другую ветку

git checkout -b <to_tree>

удалить ветку

git branch -d origin/<tree>

привести указанный файл к последнему коммиту

git checkout <file path>

Отменить последний коммит в локальном Git репозитории

git reset HEAD~

Добавить ссылку удаленного GIT:

# git remote add origin https://github.com/user/repo.git

Отправка комита на удаленный GIT в ветку master:

# git push origin master

Отправка на ветку main (к примеру на github.com):

git push -u origin main

Просмотреть список коммитов:

git log

посмотреть hash и описание последних 10 коммитов:

git log --pretty=oneline -10

пример вывода:

Сравнение последних коммитов на текущем и удаленном:

git diff --stat HEAD^ HEAD

пример вывода:

Посмотреть на какой удаленный GIT будет отправка:

# git remote -v

Изменить ссылку удаленного GIT:

git remote set-url origin https://github.com/user/repo2.git

изменить ссылку удаленного репозитория с указанием пользователя и пароля (использую для авто-pull, отдельный пользователь только на чтение):

git remote set-url origin https://user:password@github.com/user/repo3.git

Получить последнюю версию репы из удаленного GIT из ветки master:

# git pull origin master

Консоль разноцветная:

# git config --global color.ui auto

Если не указаны глобальные данные пользователя, то указать:

# git config --global user.email "you@example.com"
# git config --global user.name "Your Name"

Откатить до определенного коммита:

git reset --hard <COMMIT_ID>

После отката коммита, откатить на удаленном гите:

git push --force

Удалить пароль:

git config --unset user.password

Удалить пароль, если сохранен глобально:

git config --global --unset user.password

Команды, чтобы не изменять в проекте CRLF на LF (тестирую, точно еще не проверил):

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

 

Ошибка:
fatal: unable to access ‘https://DOMAIN/acc/project.git/’: SSL certificate problem: unable to get local issuer certificate

Отключить проверку SSL сертификата:

git config --global http.sslVerify false

 

Ошибка:
remote: Unauthorized
fatal: Authentication failed for ‘https://DOMAIN/yourtunes/app.git/’

В моем случае был поменян пароль от GIT и я выполнил команду:

git fetch

ввел логин и новый пароль

 

GIT ADD формирование списка для коммита:

  • git add -A этапы Все (включая новые файлы, измененные и удаленные)
  • git add . этапов новые и измененные, без удаления
  • git add -u этапы изменены и удалены, без новых