Описание команд 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
этапы изменены и удалены, без новых