Вчера был день программирования, и конфликт с репозиторием git привел меня к хранилище геманта где я получил полный список с более 400 команд для Гитхаб / Гит которые считаются наиболее часто используемыми, к каждому из них прилагается объяснение их использования. Если вы не знаете, что это GitHub или у вас просто возникла проблема с его установкой, вы можете перейти на Краткое руководство по использованию GitHub это наверняка устранит все ваши сомнения.
Справка Git для повседневного использования, менее 20 команд для ежедневного использования git.
мерзавец помощь повседневный
Показать справочное руководство Git
мерзавец помощь -g
Перезаписать pull
git fetch - все && git reset --hard origin / master
Список всех файлов до фиксации
git ls-tree - имя-только -r <коммит-иш>
Обновите ссылку на первую фиксацию
git update-ref -d ГОЛОВКА
Список всех конфликтующих файлов
git diff --name-only --diff-filter = U
Список всех файлов, измененных при фиксации
git diff-tree --no-commit-id --name-only -r <коммит-иш>
Посмотрите изменения, которые вы внесли с момента последней фиксации
git diff
Сравните ваши подготовленные изменения с вашим последним коммитом
git diff --кэшированный
Показывает разницу между зарегистрированными и незарегистрированными изменениями
git РАЗЛИЧНАЯ ГОЛОВА
Перечислите все ветки, которые уже слились с вашим главным
git ветка --объединенный мастер
Быстро переключиться на предыдущую ветку
git касса -
Удалите ветки, которые уже были объединены с мастером
git ветка --объединенный мастер | греп -v '^ \ *' | xargs -n 1 ветка git -d
Список всех веток и их последних коммитов с веткой
ветка git -vv
Отследить ветку
git branch -u происхождение / mybranch
Удалить локальную ветку
git ветка -d <local_branchname>
Удалить удаленную ветку
git push origin --delete <имя_удалённой_ветви>
Отменить локальные изменения с последним содержимым в голове
git checkout - <file_name>
Откатить фиксацию, создав новую фиксацию
git вернуться <коммит-иш>
Отменить коммит, рекомендуется только в частных ветках
git сбросить <коммит-иш>
Изменить предыдущее сообщение фиксации
git совершить -v --изменить
Изменить автора
git commit --amend --author ='Имя автора'
Сбросить автора после смены автора в глобальных настройках
git commit --amend --reset-author --no-edit
Изменить удаленный URL
git удаленный источник set-url <URL>
Получает список всех удаленных ссылок
git удаленный
Альтернатива:
git удаленное шоу
Получите список всех локальных и удаленных филиалов
ветка git -a
Получите список удаленных филиалов
ветка git -r
Добавить измененные части файла вместо всего файла
git добавить -p
Найти выполненные попытки
завиток http://git.io/vfhol > ~/.git-completion.bash && эхо '[-f ~ / .git-completion.bash] &&. ~ / .git-Completion.bash' >> ~/.bashrc
Показывает изменения за последние 2 недели
git log --no-merges --raw --since ='2 недели назад'
альтернативы:
git whatchanged --since ='2 недели назад'
Посмотреть все коммиты мастер-форков
git log --no-merges --stat --reverse master ..
Выбор коммитов по веткам с помощью Cherry-Pick
git касса <филиал> && мерзавец <коммит-иш>
Найдите ветки, содержащие хеш фиксации
ветка git -a --contains <коммит-иш>
Альтернатива:
ветка git --содержит <коммит-иш>
Псевдонимы Git
git конфиг --global псевдоним.<обрабатывать> <команду>
git конфиг --global псевдоним.st статус
Быстро и временно сохраните (stasheado) выполненную работу
мерзавец
Альтернатива:
git stash сохранить
Stasheado всех файлов, даже тех, которые не подготовлены.
git сохранить -u
Альтернатива:
git сохранить тайник --include-untracked
Показать список всех файлов stasheado
git список тайников
Используйте любое поэтапное изменение, не удаляя его из поэтапного списка
git stash применить <тайник @ {n}>
Повторно применить поэтапные изменения и удалить их из поэтапного списка
git тайник поп
альтернативы:
git stash применить stash @ {0} && git stash drop stash @ {0}
Удалить все сохраненные тайники
git тайник очистить
альтернативы:
git падение тайника <тайник @ {n}>
Возьмите конкретный файл, который был спрятан
git касса <тайник @ {n}> -- <Путь файла>
Альтернатива:
git checkout stash @ {0} - <Путь файла>
Показать все подготовленные файлы
git ls-файлы -t
Показать все файлы, которые не были подготовлены
git ls-files - другие
Показать все проигнорированные файлы
git ls-files --others -i --exclude-standard
Создайте новое рабочее дерево репозитория (git 2.5)
git рабочее дерево добавить -b <филиал> <путь> <Начальная точка>
Создайте новое рабочее дерево из HEAD
git рабочее дерево добавить --detach <путь> ГОЛОВА
Удалить файл из репозитория git, не удаляя его из локального репозитория
git rm --кэшированный <Путь файла>
Альтернатива:
git rm --cached -r <каталог_путь>
Перед удалением необработанных файлов пройдите тест-драйв, чтобы получить список этих файлов.
git очистить -n
Принудительное удаление неподготовленных файлов
git очистить -f
Принудительное удаление неподготовленных каталогов
git очистить -f -d
Альтернатива:
git очистить -df
Обновите все подмодули
git подмодуль foreach git pull
Показывает все изменения в текущей ветке, которые не были объединены с главной
git cherry -v мастер
Альтернатива:
git cherry -v мастер <будущая ветвь>
Переименовать ветку
ветка git -m <имя новой ветки>
Альтернатива:
ветка git -m [<старое название ветки>] <имя новой ветки>
Обновите 'feature' и сделайте объединенный 'master'
функция проверки git && git rebase @ {- 1} && git checkout @ {- 2} && git merge @ {- 1}
Заархивируйте основную ветку
git archive master --format = zip --output = master.zip
Изменить предыдущую фиксацию без изменения сообщения отчета
git добавить --все && git совершить --изменить --no-edit
Удалите удаленные ветки, которых больше нет в источнике
git выборка -p
Альтернатива:
git удаленное начало отсечения
Получить хеш фиксации из начальной версии
git rev-list --reverse HEAD | голова -1
Посмотреть дерево версий
git log --pretty = oneline --graph --decorate --all
Альтернатива:
gitk - все
Добавить проект в репозиторий с помощью улья
git subtree add --prefix =<имя_каталога>/<название проекта> --squash git@github.com:<username>/<название проекта>.git мастер
Получите последние изменения из вашего репозитория для связанного проекта с помощью поддерева
git тянуть поддерево --prefix =<имя_каталога>/<название проекта> --squash git@github.com:<username>/<название проекта>.git мастер
Экспорт ветки и ее истории в файл
git bundle создать <файл> <филиал>
Импортировать из пакета
git клон репо.bundle <репо> -b <филиал>
Получает имя текущей ветки
git rev-parse --abbrev-ref ГОЛОВКА
Игнорируйте файл, который уже был зафиксирован (например, журнал изменений).
git update-index --assume-unchanged Журнал изменений; git совершить -а; git update-index --no-accept-unchanged Список изменений
Сташея меняет перед перестановкой
git перебазировать --autostash
Поиск по id в местном филиале
git fetch origin pull /<id>/ голова:<филиал>
альтернативы:
git pull origin pull /<id>/ голова:<филиал>
Показывает самые последние теги текущей ветки
git description --tags --abbrev = 0
Ищите отличия.
git diff --word-diff
Игнорировать изменения в файле трассировки
git update-index --assume-без изменений <file_name>
расстегивать
git update-index --no-accept-unchanged <file_name>
Очистить файлы от .gitignore
.
git очистить -X -f
Восстановить удаленный файл.
git касса <удаление_фиксации>^ - <Путь файла>
Восстановить файлы с определенным хешем фиксации
git касса <коммит-иш> -- <Путь файла>
Всегда переставляйте вместо слияния
git config --global branch.autosetuprebase всегда
Список всех псевдонимов и настроек
git конфиг --список
Сделайте регистр git чувствительным
git config --global core.ignorecase ложный
Виды автокоррекции.
git конфиг --global помощь.автокоррекция 1
Проверяет, является ли изменение частью выпуска.
git name-rev --только имя <ША-1>
Чистый сухой ход.
git clean -fd --dry-run
Отметьте фиксацию как решение предыдущей фиксации
git совершить --fixup <ША-1>
Коррекция сквоша
git rebase -i --autosquash
Пропустить промежуточную область во время фиксации.
git совершить -ам <зафиксировать сообщение>
Список игнорируемых файлов
git проверить-игнорировать *
Статус игнорируемых файлов
статус git --игнорируется
Фиксирует в Branch1, но не в Branch2
git журнал Branch1 ^ Branch2
сохранить и повторно использовать предыдущие разрешения конфликтов
git config --global reference.enabled 1
Откройте все конфликтующие файлы в редакторе.
git diff --только имя | уник | xargs РЕДАКТОР
Подсчитайте количество неподготовленных объектов и их потребление на диске.
git count-objects - человекочитаемый
Обслуживание недоступных объектов
git gc --prune = now --aggressive
Мгновенно просматривайте свой репозиторий на gitweb.
git instaweb [--local] [--httpd=<HTTPD>] [--порт=<порт>] [--браузер=<браузер>]
Просмотр подписей GPG в журнале подтверждения
git log --show-подпись
Удаляет записи из глобальных настроек.
git конфиг --global --unset <входное имя>
Получите новую ветку без истории
git checkout --сирота <Branch_name>
Отображает разницу между рабочим файлом и его последней версией.
git diff --постановка
Извлеките файл из другой ветки.
мерзавец шоу <Branch_name>:<file_name>
Вывести только корень и подтвердить слияние
git журнал --first-parent
Слияние двух коммитов
git rebase --interactive HEAD ~ 2
Список всех веток
мастер проверки git && ветка git --no-merged
Найти с помощью двоичного поиска
git bisect start git bisect bad git bisect good v2.6.13-rc2 git bisect bad git bisect good git bisect reset
Список коммитов и изменений определенного файла
git log --follow -p - <Путь файла>
Клонировать одну ветку
git клон -b <филиал> - одинарная ветка https://github.com/user/repo.git
Создать и перейти на новую ветку
git проверка -b <филиал>
Игнорировать файлы с изменениями в коммитах
git конфигурации core.fileMode ложный
Отличная компиляция команд 😉
Отличный вклад !!