删除最后一个Github提交,而不删除本地存储库中的代码

时间:2017-02-27 10:55:04

标签: git unity3d github atlassian-sourcetree

在我的unity3d游戏项目中,我使用Atlassian SourceTree将代码提交到我的Github存储库。 最后一次提交有错误的提交消息,我想更改提交消息(因为我用Google搜索,这是不可能的)。 所以我的最后一次机会是恢复最后一次提交并使用正确的提交消息创建一个新提交。 如何使用Atlassian SourceTree实用程序完成此操作。

2 个答案:

答案 0 :(得分:2)

不可能?我想不是!

只需打开一个cmd,转到您的项目并编写git commit --amend -m "your new message"然后git push --force。这将编辑最后一条评论的提交消息,然后强制推动分支以强制您对历史记录进行编辑。 (强制推送是必要的,因为你正在操纵历史记录,并且会覆盖/强制远程分支看起来像你的本地分支。如果你在一个有更多人的项目中小心使用)

答案 1 :(得分:1)

如果你已经推到遥控器,我建议忘记它。如果你不太了解git,重写git历史是很危险的。

如果您没有推送,并且您没有在其上创建任何其他提交,您可以按照另一个答案说明并修改与您的新提交最后一次提交。

要在SourceTree中执行此操作,请取消您可能拥有的所有更改并按下提交按钮(就像您创建一个空提交一样)。然后,在消息选项卡中单击提交选项,然后选择修改上次提交。您现在应该看到以前的消息,更改它并提交。

如果您将此提交推送到遥控器,请不要使用push --force

push