barfi
2/12/2018 - 9:02 PM

Git console commands

Git console commands

------------------------------------------------------------------------
Basic
------------------------------------------------------------------------

git init
инициализирует git в текущем каталоге (не забыть в консоле перейти в текущий каталог!!!)

git status
Показывает текущий статус измененных файлов проекта (кто в stage, кто нет)

git add file.ext
Добавляет указанный файл в stage

git add .
Добавляет все файлы проекта в stage

git rm --cached file.ext
Удаляет указанный файл из stage

git commit -m "Commit description"
Коммитит все файлы из stage

git log
Выводит расширенный список сделанных коммитов

git log --oneline
Выводит компактный список сделанных коммитов

git checkout commitID
Откатывает проект безопасно к коммиту с указанным id (прим. 82f72ad)

git checkout master
Возвращает проект к последнему коммиту, что был до отката

git revert commitID
Отменяет выбранный коммит, создает новый коммит на верхнем уровне, как чекпоинт (в окне все жмется через Ctrl, Ctrl + X для выхода)

git reset CommitID
Откатывает до указанного коммита, при этом файлы не удаляются, надо сделать сразу свежий коммит

git reset CommitID --hard
Откатывает до указанного коммита, при этом файлы (изменения в файлах) удаляются, надо сделать сразу свежий коммит

------------------------------------------------------------------------
Branches - ветки
------------------------------------------------------------------------

git branch branchName
Создает новую ветку с указанным названием (branchName)

git checkout -b branchName
Создает новую ветку с указанным названием (branchName) и сразу переходит на неё

git branch -a
Показывает все имеющиеся ветки проекта

git checkout branchName
Переключает на ветку с соответствующим именем (branchName) или master (главная ветка)

git branch -D branchName
Удаляет перманентно (сразу) ветку с именем branchName. Нужно находится на master ветке, сделав перед удалением git checkout master

git merge branchName
Слияние ветки branchName с мастер веткой. Необходимо быть переключенным на мастер ветку

------------------------------------------------------------------------
Github (or other) remote vcs host commands
------------------------------------------------------------------------

git push remoteUrl master
Пушит текущую версию проекта на удаленный хостинг по url в мастер ветку

git remote add someAlias remoteUrl  (git remote add origin remoteUrl)
Позволяет присвоить "алиас" для длинной ссылки хоста для более быстрого использования, принято называть orign. git push origin master

git clone remoteUrl
Клонирует репозиторий с удаленного хоста (создаст папку для проекта с названием репозитория, создаст алиас для адреса к удаленному репозиторию origin

git remote -v
Отображает все алиасы адресов удаленных репозиториев

git pull origin master
Проводит синхронизацию локального проекта с удаленным, получая все изменения со второго