是否有一种方法可以修改提交内容,而不需要弹出 vi
(或您的 $EDITOR
)选项来更改提交消息,而只需重复使用先前的消息?
是否有一种方法可以修改提交内容,而不需要弹出 vi
(或您的 $EDITOR
)选项来更改提交消息,而只需重复使用先前的消息?
1.7.9
起,您也可以使用 git commit --amend --no-edit
来获得结果。git config --global alias.amend 'commit --amend --no-edit'
- mfinkgit commit -C HEAD --amend
会实现你想要的功能。 -C
选项会从另一个提交中获取元数据。
git config --global alias.amend 'commit --amend -C HEAD'
命令设置一个别名来代替它。之后你可以使用 git amend
作为快捷方式。 - mikej--amend
选项,即使没有其他选项,也会保留作者日期(但更改提交日期)。因此,我已经删除了我的旧评论。 - Ruben Verborgh如果你的编辑器是vi(m),那么另一个(有些傻)的可能性是使用git commit --amend <<< :wq
命令。
... <<< :x
:) - skwisgaar扩展已接受的答案,您还可以执行以下操作:
git commit --amend --no-edit -a
添加当前更改的文件。
git add
来分步提交更改,然后修改上一次的提交记录:git add /path/to/modified/files
git commit --amend --no-edit
我看到这个问题已经被回答了,但如果你想像高效的机器一样添加、提交和推送,你可以将所有命令合并在一起,在一行中完成。
git add .; git commit --amend --no-edit; git push
现在,当您每次提交只进行小的更改时,您可以按UP
键并一次性完成所有更改。
希望这能帮助到某些人 :)
注意:这不是使用git的干净方式,我只建议在经常进行小更改时使用。例如,总是使用添加
和.
(所有更改)可能会导致您暂存不想添加的更改,从而导致commit
混乱。
git commit --amend
不需要使用 --force
参数来推送。 - Sagiv b.ggit commit --amend
不需要使用 --force
参数来推送。 - undefined当你完成代码更改后。
1.- 使用git status
在终端
中检查更改;
2.- 通过使用git add .
或git add /your.file/
逐个文件地添加,使用前一个命令将帮助你在最后一种情况下进行操作;
3.- 一旦您的更改已经被暂存,现在可以使用git commit --amend --no-edit
。这将将您最近的更改添加到上次提交中,而无需编辑消息。
4.- 最后,如果您没有推送您之前的提交,只需执行git push
或git push origin/yourBranch
.
如果您已经推送了上次提交,请使用git push -f
或git push -f origin/yourBranch
。