我决定将一个库集成到我的代码中。 我添加了库,并更改了几行代码以开始实现它。 它编译,所以我承诺并推动回购。git我在提交和推送前忘了编辑一行
我后来才意识到,我错过了仍旧在旧代码上的一行。 我给它一个谷歌搜索,并找出关于git commit --amend
,幸运的是,我没有其他提交。 我以为所有我必须做的是修复的代码行,git add
文件,git commit --amend
,终于git push
,要回购,但混帐告诉我
! [拒绝]大师 - >主(非快进)提示:更新 被拒绝,因为你的当前分支的尖端后面
我觉得奇怪,因为我在最近一次提交的,如果我git reset -soft HEAD~1
除了我已更改的单行代码之外,我回到了与回购协议的对应关系。
我做错了吗?我真的不想为这个应该是最后一次提交的代码的单行代码做一个全新的提交。
您应该真正描述该命令的功能,以及为什么OP不应该首先使用它。 – Alik
太好了,谢谢!完美工作。我知道为什么我不应该使用它,因为它可能会与其他开发人员混淆在旧提交中,但由于我是在此分支上开发的唯一人员,我认为它没关系? – danielr
是的,如果你是唯一的开发者,那么使用'git commit --amend'并强制分支出来应该没有问题。 –