Android

Как изменить сообщение git commit

Git tools для продвинутых разработчиков

Git tools для продвинутых разработчиков

Оглавление:

Anonim

При работе с Git вы можете столкнуться с ситуацией, когда вам нужно отредактировать сообщение коммита. Существует ряд причин, по которым вы хотите внести изменения, например, исправление опечатки, удаление конфиденциальной информации или добавление дополнительной информации.

В этом руководстве объясняется, как изменить сообщение о самых последних или старых коммитах Git.

Изменение самого последнего коммита

Команда git commit --amend позволяет вам изменить самое последнее сообщение коммита.

Не задний коммит

Чтобы изменить сообщение самого последнего коммита, который не был --amend в удаленный репозиторий, --amend его снова, используя флаг --amend .

  1. Перейдите в каталог хранилища в вашем терминале.

    Выполните следующую команду, чтобы изменить (изменить) сообщение о последнем коммите:

    git commit --amend -m "New commit message."

    Команда выполняет перезапись самого последнего коммита новым.

    Опция -m позволяет вам написать новое сообщение в командной строке, не открывая сеанс редактора.

Перед изменением сообщения о коммите вы также можете добавить другие ранее забытые изменения:

git add. git commit --amend -m "New commit message."

Задний коммит

Измененный (измененный) коммит - это новый объект с другим SHA-1. Предыдущий коммит больше не будет существовать в текущей ветке.

Как правило, вам следует избегать внесения изменений в коммит, который уже выдвинут, поскольку это может вызвать проблемы у людей, которые основывают свою работу на этом коммите. Хорошей идеей будет проконсультироваться со своими коллегами-разработчиками перед изменением принудительного коммита.

  1. Перейдите в хранилище.

    Исправьте сообщение о последнем введенном коммите:

    git commit --amend -m "New commit message."

    Принудительно нажмите, чтобы обновить историю удаленного хранилища:

    git push --force branch-name

Изменение старого или нескольких коммитов

Команда rebase переписывает историю коммитов, и настоятельно не рекомендуется перебазировать коммиты, которые уже переданы в удаленный репозиторий Git.

  1. Перейдите в хранилище, содержащее сообщение фиксации, которое вы хотите изменить.

    Введите git rebase -i HEAD~N , где N - количество коммитов, на которых необходимо выполнить ребазинг. Например, если вы хотите изменить 4-й и 5-й последние коммиты, введите:

    git rebase -i HEAD~5

    Команда отобразит последние X коммиты в текстовом редакторе по умолчанию:

    pick 43f8707f9 fix: update dependency json5 to ^2.1.1 pick cea1fb88a fix: update dependency verdaccio to ^4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^3.8.2 pick c5e078656 chore: update dependency flow-bin to ^0.109.0 pick 11ce0ab34 fix: Fix spelling. # Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)

    Перейдите к строкам коммит-сообщения, которое вы хотите изменить, и замените pick на reword :

    reword 43f8707f9 fix: update dependency json5 to ^2.1.1 reword cea1fb88a fix: update dependency verdaccio to ^4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^3.8.2 pick c5e078656 chore: update dependency flow-bin to ^0.109.0 pick 11ce0ab34 fix: Fix spelling. # Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)

    Сохраните изменения и закройте редактор.

    Для каждого выбранного коммита открывается новое окно текстового редактора. Измените сообщение о коммите, сохраните файл и закройте редактор.

    fix: update dependency json5 to ^2.1.1

    Принудительно отправить изменения в удаленный репозиторий:

    git push --force branch-name

Вывод

Чтобы изменить самое последнее сообщение о git commit --amend , используйте команду git commit --amend а для изменения более старого или многократного сообщения о git commit --amend используйте git rebase -i HEAD~N

Не вносите изменения в принудительные коммиты, так как это может вызвать массу проблем у ваших коллег.