Skip to content

mr555ru/github-cheatsheet-ru

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 

Repository files navigation

#Github/git cheatsheet

##Форк и стягивание

  1. Кнопка Fork в репозитории
  2. git clone <адрес своего форка из поля справа>

##Коммиты

  1. git status - просмотр состояния репозитория
  2. git add <file> - добавление в stage; git add . - добавить всё
  3. git rm <file> - staging удаления файла
  4. git commit -m "комментарий" - коммит
  5. git commit -am "комментарий" - коммит с пропуском stage (автоматически добавляет на stage все изменения - но не новые файлы!)

У каждого коммита есть SHA-код, его идентифицирующий. Посмотреть их можно командой git log, это длинная шестнадцатиричная строка. Для того, чтобы указать на какой-либо коммит (примеры будут даны ниже), достаточно использовать первые несколько символов кода, минимум 4.

##Отмена

  1. git reset HEAD <file> - отмена внесения в stage (изменения перестают сопровождаться)
  2. git checkout -- <file> - отмена изменений из unstaged файла

А как отменить коммит, спросите вы? А я вам отвечу: идите нахуй!

##Быстрая правка коммита

git commit --amend - позволяет добавить изменения из stage в последний коммит (исправить его). Применять только в крайнем случае.

##Синхронизация форка

  1. Настроить upstream (один раз для локального репозитория): git remote add upstream <адрес оригинального репозитория>
  2. git fetch upstream
  3. git merge upstream/master

Читать тут

##Отправка изменений

  1. git push - отправить коммиты из локального репозитория в гитхабовский
  2. git pull - наоборот, стянуть изменения из гитхаба в локальный репозиторий

##Ветки

  • git branch <name> - создать ветку
  • git checkout <name> - перейти на ветку
  • git checkout -b <name> - создать ветку и перейти в нее
    • git checkout -b <name> <commit-SHA> - создать ветку, состояние в которой будет состоянием на момент коммита с кодом commit-SHA
  • git merge <другая ветка> - слияние: другая ветка мерджится в ту, в которой ты находишься

##Распределенный Git посредством обмена файлами Если не хочется использовать сервера/решения, следующие команды пригодны для распределенной работы с помощью файлов (которые пересылаются по почте, скайпу, флешками, дымовыми сигналами и т.п.)

###Использование git bundle

  • git bundle create <файл> HEAD - создать новый bundle-архив из репозитория
  • git bundle create <файл> <commit-SHA>..HEAD - создать обновление bundle-архива из всех коммитов от "<commit-SHA>" до последнего
  • git pull <файл bundle> - стянуть изменения в репозиторий
  • git clone <файл bundle> - создать новый репозиторий из bundle

##Простые теги

  • git tag <тег> - создать тег для текущего коммита; впоследствии можно использовать его вместо указания SHA-кода!
  • git tag <тег> <commit> - создать тег для коммита <commit>
  • git push --tags - отправить сведения о тегах

##Markdown

#Заголовок 1 уровня
##Заголовок 2 уровня
######Заголовок 6 уровня
*курсив*
**жирный**
[текст](http://example.com) - ссылка
![текст](http://example.com/1.jpg) - изображение
4 пробела - код, неформатированный текст

 * маркированный список
 * еще пункт
     * подпункт
 

если пишешь не список, то текст, перенесенный
на другую строку в результате будет в одной строке; для того, чтобы начать другую
строку, нужно разделить два абзаца

пустой строкой

если пишешь не список, то текст, перенесенный на другую строку в результате будет в одной строке; для того, чтобы начать другую строку, нужно разделить два абзаца

пустой строкой

##Прочее

  • git init - создать пустой репозиторий в этой папке (после этого все файлы в этой папке будут unstaged!)
  • git log - просмотреть историю коммитов

###diff

  • git diff - посмотреть, что изменено, но не staged
  • git diff --staged - посмотреть, что staged, но не закоммичено

##Самое главное ###Pro Git Книга на русском, онлайн

На английском, pdf

###Git Magic Волшебство Git, онлайн

Git Magic, онлайн

About

Очень примитивный читщит

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published