如何在不接触命令行的情况下在 SourceTree 中编辑不正确的提交消息?
其他详细信息:
- 这不是最新的提交。
- 所有内容都已推送到 Bitbucket。
- 这是一个私有(private)仓库,我是唯一的合作者。
- 我不介意丢失之前的任何提交,因为我可以随时重新提交它们。
- 但是我不想丢失任何对代码的修改。
结果:
- 根据您的评论和回复,目前似乎不可能,我将创建一个新的存储库并重新开始。感谢大家的帮助!
最佳答案
以下是编辑先前提交的提交消息的步骤(这是 不是最近的提交)使用 SourceTree for Windows version 1.5.2.0:
第一步
选择要编辑的提交紧接在之前的提交。 例如,如果我想编辑带有消息“FOOBAR!”的提交那我需要 选择它之前的提交:
第二步
右键单击选定的提交并单击 Rebase children...interactively
:
第三步
选择要编辑的提交,然后单击 Edit Message
在
底部。在这种情况下,我选择带有消息“FOOBAR!”的提交:
第四步
编辑提交消息,然后单击 OK
.在我的示例中,我添加了
“SHAZBOT!SKADOOSH!”
第 5 步
当您返回交互式 rebase 窗口时,单击 OK
完成
rebase :
第六步
此时,您需要强制推送您的新更改,因为您已经重新设置基准 提交您已经推送的内容。不过目前的1.5.2.0版本 Windows 的 SourceTree 不允许您通过 GUI 强制推送,所以 无论如何,您都需要从命令行使用 Git 才能做到这一点。
点击Terminal
从 GUI 打开一个终端。
第七步
使用以下命令从终端强制推送,
git push origin <branch> -f
哪里<branch>
是您要推送的分支的名称,-f
方法
强制 push 。强制推送将覆盖您对您的提交
远程 repo ,但在你的情况下没关系,因为你说你不共享
你与其他人的 repo 协议(protocol)。
就是这样!大功告成!
关于git - 在 SourceTree Windows 中编辑提交消息(已推送到远程),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17604232/