Команды GIT
Скачать GIT можно здесь gitforwindows.org
mkdir test - создать папку test
cd test - войти в папку test
touch test.html - создать файл test.html
git init - создать git-репозиторий из текущей папки
git config --global user.name "Smit" - Имя автора коммита, если указана опция --global действует для всей системы
git config --global user.email smit@mail.com - email автора коммита, если указана опция --global действует для всей системы
git config - проверить используемую конфигурацию
git config user.name - проверить значение конкретного ключа
git config --global core.autocrlf false - в паре со следующей командой отключить проверку формата
git config --global core.safecrlf false - в паре с предыдущей командой отключить проверку формата
git add test.html - добавит файл test.html на коммит кандидат, индексация файла
git add * - добавит все файлы на коммит кандидат, индексация всех файлов
git add . - добавит все файлы из текущей папки на коммит кандидат, индексация всех файлов из текущей папки
git add --all - добавит все файлы из текущей папки и подпапок на коммит кандидат, индексация всех файлов из текущей папки и подпапок
git reset HEAD test.html - исключить файл test.html из индекса
git rm test.html - удалить файл test.html
git mv test.html test.txt - переименовать файл "test.html" в "test.txt"
git checkout -- test.html - отмена изменений файла test.html (! нет обратного действия)
git diff - что изменили, но пока не проиндексировали
git diff --cached - что проиндексировали и что войдёт в следующий коммит
git diff --staged - сравнивает индексированные изменения с последним коммитом
git commit -m "First Commit" - добавит коммит из кандитатов в кавычках наименование коммита
git commit --amend - отмена последнего коммита
git commit -a -m 'Name Commit' - индексация всех файлов и добавление коммита, можно обойтись без git add
git status - текущее состояние репозитория
git log - история репозитория
git log --pretty=oneline - история репозитория коммит в одну строку
git log --pretty=oneline --all - история репозитория все коммиты в одну строку
git log --max-count=3 - история репозитория 3 последних коммита
git log --author="test" - история репозитория по автору "test"
git log --pretty=format:"%h - %s : %ad [%an]" - история репозитория по своему формату %h-короткий хеш, %s-комментарий, %ad-дата, %an-автор
git log --date=short - история репозитория с короткой датой
git checkout d917d0b21e071bbe9bcbd0abd96586eaef4397a0 - откатить к хешу № d917d0b21e071bbe9bcbd0abd96586eaef4397a0
git reset HEAD test.txt - вернуть состояние файла, ветки, коммита HEAD-к началу или к хешу
git revert HEAD --no-edit - удаление коммита HEAD- последнего или до хеша
gitk - открыть редактор по умолчанию
git branch testing - создать ветку под названием testing
git checkout testing - перейти на ветку под названием testing
git checkout -b testing - создать и сразу перейти на ветку под названием testing
git checkout master - перейти на ветку по умолчанию под названием master
git checkout --track origin/testing - клонировать ветку testing из удалённого репозитория, создать, если нет, такую же и сразу перейти на неё
git branch -d testing - удалить ветку под названием testing(не удалится, если есть наработки)
git branch -D testing - удалить ветку под названием testing с потерей наработок
git merge testing - слить ветку под названием testing с текущей веткой
git merge --abort - прервет процесс слияния и попытается восстановить состояние перед слиянием, если вы еще не зафиксировали слияние и у вас есть конфликт слияния.
git branch - простой список имеющихся веток (* - текущая ветка) git branch -v - последний коммит на каждой из имеющихся веток (* - текущая ветка) git branch --merged - список веток слитых с текущей (* - текущая ветка) git branch --no-merged - список веток не слитых с текущей (* - текущая ветка) git remote add origin https://github.com/login/name_repository.git - связать локальный репозиторий с репозиторием на GitHub(origin) git push origin master - обновить данные(master) в удаленном репозитории(origin) git push -f origin master - принудительно обновить данные(master) в удаленном репозитории(origin). Без -f будет ругаться что у вас версия младше и вам надо сделать pull git push --set-upstream origin test - создать ветку test и добавить в неё данные из текущей в удаленном репозитории(origin) git clone https:github.com/login/name_repository.git - Клонирование репозитория git pull origin master - запрос изменений с сервера git fetch origin - забирает данные в ваш локальный репозиторий, но не сливает их с какими-либо вашими наработками и не модифицирует их git reset --hard origin/master - приводит файловую структуру и историю коммитов текущей ветки к тому состоянию, в котором сейчас находится удалённая ветка master git reflog --date=local - вызывается журнал ссылок HEAD c датой