§ Ветки
git branch -- показать ветки
git checkout <ветка> -- переключиться на ветку
git merge <ветка|master> -- слить указанную ветку (либо master) в текущую ветку
git fetch origin -- слить изменения на удаленном хосте с нашей текущей веткой
git push origin [branchname] -- залить коммиты бранча в удаленный хост
git br -u origin/master [своя_ветка] -- отслеживать master с сервера origin
§ Обработка слияния
git merge --abort -- отмена мержа
git merge master branch -Xtheirs -- слияние из master в branch с принятием изменений от master
git diff master branch [file] -- сравнить master c branch (можно отдельный файл тоже)
git diff master branch --name-only -- только файлы, которые различаются
§ Алгоритм слияния мастер в ветку
git checkout master -- переход на ветку мастера
git pull -- прочесть последние изменения
git checkout mybranch -- переключиться на свою ветку
git merge master -- выполнить слияние из мастера
git push -- закоммитить изменения
Команда git pull аналогична
git fetch origin HEAD
git merge HEAD
Удалить ветку с репозитария
git push origin --delete [branchname]
Будучи на ветке, принудительно догнать ее до последнего состояния
git reset --hard origin/[branchname]
Сменить на ssh-git.
git remote set-url origin git@github.com:[username]/[repo].git
§ SVN
Установка глобального рекурсивного игнора
svn propset svn:global-ignores '*.bin' .
svn propedit svn:global-ignores .