Еще одна шпаргалка по Git

Базовые команды

git init

git add file_name
git add *.c
git add .

git status

что было изменено, но пока не проиндексировано
git diff
что из проиндексированного войдет в след коммит
git diff --stager

автоматическое индексирование всего и коммит
git commit -a -m 'comments'

добавить изменения в предыдущий комит
git commit --amend

отменить индексирование
git reset HEAD file_name

отменить внесенные в файл изменения до последнего коммита
git checkout -- file_name

удаление файла из git и из рабочей папке
git rm file_name

удаление файла из индексирования, но без удаление из рабочей папке
git rm --cached file_name

если файлов много
git rm -r --cached .
git add .
git commit -m "fixing .gitignore"

переименование
git mv file_from file_to
или
mv file_from file_to
git rm file_from
git add file_from

удаленные репозитории с url
git remote -v

добавить удаленный репозиторий
git remote add origin url

извлечение данных из удал репозитория
git fetch name

если локальная ветка настроена на слежение, то автоматическое извлечение и слияние
git pull origin
git pull

отправка данных
git push origin master
-u добавит слежение master за origin

просмотр удаленного репозитория
git remote show origin

переименовать удаленный репозиторий
git remote rename origin github

удалить ссылку на удаленный репозиторий
git remote rm origin

список тегов
git tag

добавить тег с комментарием
git tag -a v1.1 -m 'comment'

добавить тег на выбранный коммит
git tag -a v1.0 ce56c68

отправить теги на удаленный сервер
git push origin --tags

глобальные настройки
git config --global -l

alias
git config --global alias.hist=log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short

создать ветку
git branch testing

сменить ветку
git checkout testing

создать ветку и сразу перейти
git checkout -b iss53

создать ветку на основе удаленной
git checkout -b iss53 origin/serv

слить hotfix в master
git checkout master
git merge hotfix

удалить ветку
git branch -d hotfix

слияние веток
git merge dev

для решения конфликтов
git mergetool

ветки которые уже объединены с текущей
git branch --merge

ветки которые уже не объединены с текущей
git branch --no-merge

список наблюдения
git branch -vv

сопоставить с удаленной
git branch -u origin/serv

удаление ветки с удаленного сервера
git push origin --delete serv

перенести изменения после коммита в новую ветку
git stash
git checkout -b new_useless_feature
git stash pop

Комментарии

Популярные сообщения из этого блога

Асинхронное выполнение процедур или триггера в MS SQL Server

Рекурсивные SQL запросы

Кратко про SQLAlchemy Core