Вступление
Git является распределенной системой контроля версий и в настоящее время фактически является системой контроля версий для ряда проектов с открытым и закрытым исходным кодом, включая Eclipse . Git — удивительный инструмент для использования и обладает большой гибкостью.
Говоря о гибкости, я был поражен интересной функцией git, которая позволяет вам редактировать и изменять предыдущие сообщения коммита.
Есть два основных способа сделать это:
- Используя переключатель исправления
- Использование rebase
Давайте посмотрим на каждый из них.
Используя переключатель исправления
Это простой способ изменить сообщение коммита для вашего последнего коммита. В этом мы используем git commit с помощью switch switch. Использование показано следующим образом:
1
|
git commit –amend -m “new message” |
Примечание: я использую некоторые из псевдонимов git, такой git ol отображает журнал git commit в правильном формате, вы можете найти некоторые псевдонимы в моем .gitconfig в моем репозитории github
Рассмотрим следующие коммиты в моем репо.
Это то же самое принятие, но с добавленным переключателем изменения, следующее показывает фактическое использование:
Это быстрый и удобный способ редактирования вашего последнего сообщения о коммите.
Использование rebase
Всякий раз, когда вы хотите изменить несколько или более одного сообщения о коммите или другое, чем недавний коммит, это хороший способ сделать это. Хотя rebase очень мощный, он может многое. Но для этой статьи давайте сосредоточимся только на редактировании сообщения коммита.
Мы используем следующую команду для нашей цели,
1
|
git rebase -i <sha1 of previous commit msg> or <relative-HEAD-pointer> |
Рассмотрим git-репо с несколькими коммитами, показанными ниже
Вышеупомянутые журналы фиксации отображаются в порядке убывания в порядке даты и времени, когда он был зафиксирован, следовательно, последний коммит является верхним, а наименее недавний — ниже этого и т.
Предположим, вы хотите изменить второе сообщение коммита (снизу), а затем сделать это следующим образом:
Так как вы хотите изменить второй (156ce8e) журнал фиксации, мы указываем SHA1 для одного из них до этого, в нашем случае 1-й (6343229) протокол фиксации, для команды rebase.
Ниже приведена команда для этого — Примечание, хэш SHA1
После того, как вы нажмете Enter, вы увидите следующий файл для редактирования
Выше, сфокусируйтесь на файле, который важен для нас. Он показывает коммиты с некоторыми командами / маркерами при запуске.
Это команды / маркеры rebase для нескольких целей, но для нашего случая мы используем «reword», которое решает нашу задачу.
Идите вперед и измените маркер первой строки (который является нашим вторым коммитом), выберите «r» или «reword» и оставьте другие, как показано ниже.
После этого завершите редактирование файла, нажав Ctrl + X (другой способ зависит от редактора), а затем сразу же после того, как вы увидите диалоговое окно фиксации для нового сообщения фиксации. Введите новое сообщение коммита и затем выйдите.
тогда мы закончили. после этого вы должны увидеть следующее
Проверьте журналы фиксации для нового сообщения фиксации
Вышеуказанные шаги предназначены для изменения только одного сообщения фиксации, но для редактирования, изменения нескольких, вы можете изменить маркер других фиксаций на ‘reword’ согласно требованию и, соответственно, после этого git попросит ввести новое окно сообщения фиксации для каждого отмеченного сообщения фиксации и вы сделали
Вот и все люди для этой статьи.