/
Вопросы и ответы
/
Git
/

Как переименовать коммит git в репозитории

Как переименовать коммит git в репозитории

4 года назад

Andrey Moshkov

Ответы

0

Переименовать коммит можно несколькими способами. Если вам нужно поменять последнее сообщение, то достаточно git commit --amend -m <новое сообщение>

1
2
3
4
5
6
git commit -m 'add file.txt'
git log
# e4266a0 (HEAD -> main) add file.txt
git commit --amend -m 'add super awesome file.txt'
git log
# 9ca69dd (HEAD -> main) add super awesome file.txt

Если же вам нужно переименновать несколько коммитов, то вам нужно ввести git rebase -i <последний коммит для редактуры>, и в интерактивном режиме отредактировать сообщения нужных коммитов.

1
2
3
4
5
6
7
8
git log
# 9ca69dd (HEAD -> main) add super awesome file.txt
# c1a5665 (new-branch) fix bug
# 86954b1 change readme
# daaa7f9 add 1.txt 2.txt
# 9f2880b readme
# здесь указываем rebase до последнего коммита, который хотим отредактировать 
git rebase -i 9f2880b

4 года назад

Ivan Mamtsev

0

Сообщение последнего коммита меняет команда git commit --amend:

1
git commit --amend -m "Новое сообщение"

Git заменит последний коммит таким же, но с новым сообщением. Без -m откроется редактор с текущим текстом.

Если коммит уже отправлен

После --amend у коммита новый хеш, и обычный git push откажет. Отправьте с заменой:

1
git push --force-with-lease

Делайте так только в своей ветке: у коллег в общей ветке останется старый коммит, и история разойдётся. В общей ветке сообщение оставляют как есть.

Сообщение более старого коммита

Используйте интерактивный rebase. Например, чтобы изменить один из трёх последних коммитов:

1
git rebase -i HEAD~3

Откроется список коммитов:

1
2
3
pick a1b2c3d Добавить форму
pick e4f5g6h Исправить опечатку
pick 7h8i9j0 Обновить README

Замените pick на reword (или r) у нужного коммита, сохраните и закройте файл. Git по очереди откроет редактор для каждого отмеченного коммита, впишите новое сообщение. После этого хеши всех следующих коммитов тоже изменятся.

Посмотреть сообщения коммитов

1
git log --oneline -5

Как писать сообщения коммитов

  • Первая строка до 50–72 символов: что сделано.
  • Повелительное наклонение: «Добавить форму входа», «Исправить расчёт скидки».
  • Подробности — после пустой строки.
1
git commit -m "Исправить расчёт скидки" -m "Скидка считалась от цены с НДС."

Переименовать файл в репозитории

1
2
git mv page2.html contacts.html
git commit -m "Переименовать page2.html в contacts.html"

git mv переименует файл и сразу добавит изменение в индекс.

Работу с коммитами и историей разбирают в бесплатном курсе «Основы Git», rebase — на курсе «Ветвление в Git».

18 дней назад

Никита Вихров

+7 800 100 22 47

бесплатно по РФ

+7 495 085 21 62

бесплатно по Москве

108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845