Если цель состоит в том, чтобы внести изменения в существующий совершить, прежде чем толкать,
ли на необходимость полного изменения локально и снова зафиксировать изменения
Это приведет к перечислению двух коммитов в вашем журнале git.
Объедините эти две фиксации с одним фиксатором и нажмите.
Чтобы объединить два коммиты, выполните следующие действия:
Произнесите история
$ git log --pretty=oneline
a931ac7c808e2471b22b5bd20f0cad046b1c5d0d c
b76d157d507e819d7511132bdb5a80dd421d854f b
df239176e1a2ffac927d8b496ea00d5488481db5 a
То есть, был первый коммит, то Ь, и, наконец, с.
Запуск git rebase --interactive HEAD~2
дает редактор с
pick b76d157 b
pick a931ac7 c
# Rebase df23917..a931ac7 onto df23917
#
# Commands:
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message
#
# If you remove a line here THAT COMMIT WILL BE LOST.
# However, if you remove everything, the rebase will be aborted.
#
Изменения выбора Б сквоша приведет к ошибке вы видели, но если вместо этого давит с в б, изменив текст
pick b76d157 b
s a931ac7 c
and save-quitting your editor, you'll get another editor whose contents are
# This is a combination of 2 commits.
# The first commit's message is:
b
# This is the 2nd commit message:
c
When you save and quit, the contents of the edited file become commit message of the new combined commit:
$ git log --pretty=oneline
18fd73d3ce748f2a58d1b566c03dd9dafe0b6b4f b and c
df239176e1a2ffac927d8b496ea00d5488481db5 a
Возможный дубликат [Вдвигания пустых фиксаций к удаленному] (http://stackoverflow.com/questions/20138640/pushing-empty-commits-to-remote) –
Вы хотите скопировать свой последний коммит и внести в него изменения для создания нового коммита или вы хотите сделать точную копию своего последнего коммита без изменения? –
Что именно вы используете? Вы хотите получить другой комментарий? – MikeMB