Перейти к содержанию

Генератор git команд

Выберите операцию с git и заполните необходимые поля — инструмент соберет готовую команду с объяснением каждого флага.

Выходные данные

Генератор git команд

Выберите операцию — отмену коммита, переименование ветки, интерактивное перебазирование, cherry-pick, stash, удаление файла из истории или восстановление ошибочно удаленной ветки — заполните необходимые поля (название ветки, хеш коммита или сообщение), и инструмент соберет точную git команду, которую вы иначе ищете или пытаетесь вспомнить. Это пригодится, когда вы знаете, что хотите сделать, но не помните точные флаги, и предпочитаете проверить сгенерированную команду с объяснением на простом языке, чем вставить команду из полу-забытого форума.

Каждая операция предлагает безопасный и деструктивный вариант. Безопасный вариант отдает предпочтение локальным, обратимым командам или командам, которые не перезапишут существующие данные — git revert вместо hard reset, простое переименование вместо force push. Деструктивный вариант делает то, что обещает: force-push, force-reset или переписывает историю, и инструмент выводит предупреждение с объяснением того, что становится необратимым. Включите опцию «Объяснить каждый используемый флаг» для справки о каждом флаге — что означают -i, --hard, -X theirs, --force-with-lease или -u.

Поля для веток принимают только символы, допустимые в git ref; хеши коммитов принимают короткие или полные hex ссылки; текстовые поля, такие как сообщение stash, сохраняют свой собственный скрипт. «Также создать git alias в gitconfig» оборачивает готовую команду в одну строку git config --global alias.<name>, которую можно вставить и переиспользовать позже.

Всё работает в браузере. Никакие git команды не выполняются и ничего, что вы вводите, не отправляется куда-либо — инструмент только собирает текст. Скопируйте результат, загрузите его как .txt файл или отправьте во вход другого инструмента для дальнейшей работы.

FAQ

В чем разница между безопасным и деструктивным вариантом?
Безопасный вариант отдает предпочтение обратимым, локальным командам — git revert вместо hard reset, простое переименование вместо force push. Деструктивный вариант force-push, force-reset или переписывает историю, и инструмент выводит предупреждение с объяснением того, что именно становится необратимым или перезаписывается.
Этот инструмент выполняет git команды для меня?
Нет. Он только собирает текст команды. Вы копируете его и выполняете сами в своем терминале, после прочтения объяснения и любых предупреждений.
Почему "очистить историю коммитов" упоминает отдельный инструмент git filter-repo?
Собственные команды переписывания истории git (filter-branch) работают медленно и легко неправильно используются; filter-repo — это инструмент, который сам проект Git теперь рекомендует для удаления файла из каждого коммита. Он должен быть установлен отдельно — сгенерированная команда предполагает, что он уже находится в вашем PATH.
Могу ли я превратить сгенерированную команду в переиспользуемый git alias?
Да. Включите опцию "Также создать git alias в gitconfig" и задайте имя — инструмент добавит строку git config --global alias.<name> ниже команды, которую вы можете вставить в терминал один раз.
Что-то, что я печатаю здесь, загружается куда-нибудь?
Нет. Названия веток, хеши коммитов и сообщения никогда не покидают ваш браузер — команда собирается полностью на вашем устройстве.