作为Git用户,我经常遇到这样的情况,我需要以一种不适合--amend
或rebase -i
修复提交的方式重新处理一个或多个提交。
git reset HEAD~1
# hack, fix, hack
git commit -a
# argh .. do I need to retype my message?
字符串
我对合理的组合提交消息非常认真。它们通常包含更大的文本,并带有引用和更改的理由。直到现在,我对通过未排序的git reflog
,git log
和复制粘贴过程恢复旧提交消息的漫长过程感到非常恼火。
有更好的方法来解决这个问题吗?如果我的提交不止一个,那会怎么样呢?
- 编辑:* 经过一番思考,我想我正在寻找的是一些类似于git stash的功能,用于修正/修改提交不合适的提交消息。
5条答案
按热度按时间b4wnujal1#
在
git reset
之后,这个一行程序可以做到:字符串
或者更短:
型
您可以使用@user2718704提供的其他选项。
pu3pd22g2#
当运行“git commit”命令时,你必须检查以下选项:
为了重复使用,
字符串
为了在重用时进行编辑,
型
为了改变作者,
型
ojsjcaue3#
如果你可以破解,修复,破解,然后运行
git commit --amend --no-edit
,那么为什么要重置呢?因此,保留了原始的提交消息。要让它适用于多个提交,只需使用最新的更改创建一个临时提交,然后使用交互式变基来用新的临时提交压缩前一个提交(包含好的提交消息),保留旧提交的提交消息。
rdlzhqv94#
您可以考虑
git commit --reset-author -c <commit>
,以通过编辑和当前时间重用提交消息。tcomlyy65#
重置后,
ORIG_HEAD
被设置。之后,您可以执行:git commit --reuse-message=ORIG_HEAD
个