genbodev
12/20/2017 - 11:35 AM

Шпаргалка github

Как разместить новый проект на github
----------------------------------------
Для начала создаем новый репозиторий на гитхабе.
Далее локально выполняем:
git init
git add your_file (для всех файлов git add .)
git commit -m "first commit"
git remote add origin https://github.com/you_repository/you_project
git push -u origin master

Спрятать/разместить обратно локальные изменения
----------------------------------------
git stash
git stash pop

Сделал себе pull. Но теперь хочу вернуть все назад
----------------------------------------
git reflog отобразит лог, среди которого нужно найти точку для отката (например, актуальный коммит)
git reset --hard {hash of the last commit before pull}

Переименовать ветку
----------------------------------------
git branch -m <oldname> <newname>
git branch -m <newname> (Если стоим в нужной ветке)

Создаст ветку и переключится в нее
----------------------------------------
git checkout -b branch-name
Это две команды одновременно:
git branch branch-name // создание ветки
git checkout branch-name // переключение ветки

Отправка ветки на удаленный сервер
----------------------------------------
git push origin branch-name

Забрать с ветки удаленного сервера в свою локальную ветку
----------------------------------------
git checkout origin/branch-name -b branch-name

Обзор веток
----------------------------------------
git branch - локальные
git branch -r -удаленные

Переключится на ветку 
----------------------------------------
git checkout branch-name

Алгоритм работы с ветками
----------------------------------------
1. Смотрим список удаленных веток git branch -r 
2. Создаем себе ветку и забираем данные с удаленной ветки в локальную
git checkout -b branch-name
git checkout origin/branch-name -b branch-name
3. Покажет на какой сейчас ветке git branch 
4. Теперь, если нужно получить изменения с ветки branch0 в ветку branch-name
git checkout branch-name
git merge branch0
git push origin branch-name

Очистка мусора
----------------------------------------
git clean -f -d