Начать. Это бесплатно
или регистрация c помощью Вашего email-адреса
Rocket clouds
GIT создатель Mind Map: GIT

1. Установка

1.1. Windows

1.1.1. http://git-scm.com/download/win

1.2. Linux

1.2.1. CentOs

1.2.1.1. sudo yum install git gitflow

1.2.2. Ubuntu

1.2.2.1. sudo apt-get install git git-flow

2. Инициализация

2.1. git init

2.2. git flow init

3. Настройка

3.1. Aliases

3.1.1. Windows

3.1.1.1. git config --global alias.co checkout

3.1.1.2. git config --global alias.ci commit

3.1.1.3. git config --global alias.st status

3.1.1.4. git config --global alias.br branch

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

3.1.1.6. git config --global alias.type 'cat-file -t'

3.1.1.7. git config --global alias.dump 'cat-file -p'

3.1.2. Linux

3.1.2.1. Файл .gitconfig

3.1.2.1.1. [alias] co = checkout ci = commit st = status br = branch hist = log --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short type = cat-file -t dump = cat-file -p

3.2. Имя и email

3.2.1. git config --global user.name "Your Name"

3.2.2. git config --global user.email "[email protected]"

3.3. Параметры установки окончаний строк

3.3.1. Windows

3.3.1.1. git config --global core.autocrlf true

3.3.1.2. git config --global core.safecrlf true

3.3.2. Linux

3.3.2.1. git config --global core.autocrlf input

3.3.2.2. git config --global core.safecrlf true

4. Управление ветками

4.1. Создание

4.1.1. git checkout -b <branchname>

4.2. Слияние

4.2.1. merge

4.2.1.1. git merge <branchname from>

4.2.1.1.1. Слияние происходит в текущую ветку

4.2.1.1.2. При отсутствии конфликтов коммит происходит автоматически

4.2.2. rebase

4.2.2.1. git rebase <upper branchname>

4.3. Удаление

4.3.1. git branch -d <branchname>

4.4. Навигация

4.4.1. git checkout <branchname>

5. Управление метками

5.1. Создание

5.1.1. git tag <tagname>

5.2. Вывод списка

5.2.1. git tag

5.3. Удаление

5.3.1. git tag -d <tagname>

6. Управление изменениями

6.1. Индексация

6.1.1. Игнорирование

6.1.1.1. Файл .gitignore

6.1.2. git add <filename>

6.2. Коммит

6.2.1. git commit

6.2.1.1. Вызовет редактор сообщения для коммита

6.2.2. git commit -m "Текст комментария для коммита"

6.3. Извлечение

6.3.1. git checkout <hash>

6.3.2. git checkout <branch name>

6.3.3. git checkout <tag name>

6.3.4. Извлечение предыдущего коммита перед тэгом

6.3.4.1. git checkout <tag name>^

6.3.4.2. git checkout <tag name>~1

6.4. Проверка состояния

6.4.1. git status

6.5. История

6.5.1. git log

6.5.1.1. --pretty=

6.5.1.1.1. oneline

6.5.1.1.2. format:"..."

6.5.1.2. --max-count=2

6.5.1.2.1. Только 2 последние записи

6.5.1.3. --since='5 minutes ago'

6.5.1.3.1. Только за последние 5 минут

6.5.1.4. --until='5 minutes ago'

6.5.1.4.1. Кроме последних 5 минут

6.5.1.5. --author=<your name>

6.5.1.5.1. Только от определенного автора

6.5.1.6. --all

6.5.1.6.1. Все, включая соседние ветки

6.5.1.7. --graph

6.5.1.7.1. Отобразить граф ветвлений

6.5.1.8. --date=short

6.5.1.8.1. Более короткий формат даты

6.6. Отмена изменений

6.6.1. git checkout <filename>

6.6.1.1. Отменяет все правки

6.6.2. git reset HEAD <filename>

6.6.2.1. Отменяет индексированные правки

6.6.2.2. Не изменяет рабочий каталог. При необходимости использовать...

6.6.3. git revert HEAD

6.6.3.1. Доп. опция --no-edit

6.6.3.1.1. Генерация выходных данных без открытия редактора

6.6.3.2. Отменяет коммит, создавая отдельный коммит

6.7. Удаление изменений

6.7.1. git reset --hard <tagname>

6.8. Внесение изменений в последний коммит

6.8.1. git commit --amend -m "..."

6.8.1.1. Комментарий перезатирается

6.9. Перемещение файлов

6.9.1. git mv <filename> <directory>

6.9.2. Если файл перенесли вручную

6.9.2.1. git add <newpath/filename>

6.9.2.2. git rm <oldpath/filename>

6.10. Дополнительная информация о коммите

6.10.1. git cat-file -t <hash>

6.10.1.1. Тип коммита

6.10.2. git cat-file -p <hash>

6.10.2.1. Отображение дампа по коммиту

7. Работа с удаленным репозиторием

7.1. Клонирование

7.1.1. git clone <path>

7.2. Изменения

7.2.1. Извлечение

7.2.1.1. git pull <remotename> <branchname>

7.2.2. Слияние

7.2.3. Отправка

7.2.3.1. git push <remotename> <branchname>

7.3. Добавление

7.3.1. git remote add <remotename> [email protected]:username/path.git

8. git flow

9. FAQ