有没有一种方法可以修改一个提交,而不弹出vi(或你的$EDITOR)选项来修改你的提交消息,而是简单地重用之前的消息?
当前回答
git commit -C HEAD - modify将做你想做的。c选项从另一个提交中获取元数据。
其他回答
你可以保存一个使用已接受答案的别名,这样使用:
git oops
添加所有内容,并使用相同的提交消息进行修正
git oops -m "new message"
使用一个新的提交消息。
这是别名:
oops = "!f(){ \
git add -A; \
if [ \"$1\" == '' ]; then \
git commit --amend --no-edit; \
else \
git commit --amend \"$@\"; \
fi;\
}; f"
git commit -C HEAD - modify将做你想做的。c选项从另一个提交中获取元数据。
从Git 1.7.9开始,你还可以使用Git commit - modify -no-edit来获得结果。
注意,这将不包括来自其他提交的元数据,如时间戳或标记,这些对您来说可能重要,也可能不重要。
傻瓜的完整教程
一旦你完成了对代码的修改。
1.-查看终端git状态的变化;
2.-使用git add保存您的更改。或者git add /your。File /一个文件一个文件地执行,使用前面的命令将帮助您完成最后一个选项;
3.-一旦你的变化已经上演,你现在可以使用git提交-修改-不编辑。这将在不编辑消息的情况下将最近的更改添加到上次提交中。
4.-最后,如果你没有推送你之前提交的文件,那就做一个git push或者git push origin/yourBranch。 如果你已经提交了最后一次提交,请使用git push -f或git push -f origin/yourBranch。
要扩展已接受的答案,你还可以这样做:
git commit --amend --no-edit -a
添加当前更改的文件。
推荐文章
- 当我试图推到原点时,为什么Git告诉我“没有这样的远程‘原点’”?
- 如何从远程分支中挑选?
- 如何查看一个分支中的哪些提交不在另一个分支中?
- 如何取消在github上的拉请求?
- HEAD和master的区别
- GIT克隆在windows中跨本地文件系统回购
- RPC失败;卷度传输已关闭,剩余未完成的读取数据
- 我应该在.gitignore文件中添加Django迁移文件吗?
- 错误:您对以下文件的本地更改将被签出覆盖
- Git rebase—即使所有合并冲突都已解决,仍然会继续报错
- 在Git中,我如何知道我的当前版本是什么?
- 跟踪所有远程git分支作为本地分支
- 自定义SSH端口上的Git
- git如何显示不存在于.gitignore中的未跟踪文件
- Git错误:遇到7个文件应该是指针,但不是