我签出了git repo中的前一个提交。做了一些更改并在那里进行了提交。将更改推送到master branch表示一切都是最新的
我签出到主分支中的上一个提交。然后做了一些更改并在那里进行了提交。现在我希望将更改推送到master branch。但它说的一切都是最新的 简而言之,我做到了我签出了git repo中的前一个提交。做了一些更改并在那里进行了提交。将更改推送到master branch表示一切都是最新的,git,github,Git,Github,我签出到主分支中的上一个提交。然后做了一些更改并在那里进行了提交。现在我希望将更改推送到master branch。但它说的一切都是最新的 简而言之,我做到了 git签出573789f3(主分支中以前的提交) 在那里做了一些更改,并将其提交到那里 git添加。 git提交-m“消息” 现在,当我执行git push origin master时,我得到了所有最新的东西 此外,我希望此提交成为主分支的负责人。问题是,一旦签出提交,您就不再是主分支了。因此,当您按下master时,它是最新的,
git签出573789f3
(主分支中以前的提交)
git添加。
git提交-m“消息”
此外,我希望此提交成为主分支的负责人。问题是,一旦签出提交,您就不再是主分支了。因此,当您按下
master
时,它是最新的,因为它没有更改
您是否希望删除最新的提交,并添加自己的提交。
我建议你像这样做
git checkout master # if you didn't do it already
git reset --hard 573789f3 # Or HEAD~
<do your changes>
git commit -am 'message'
git push --force # The --force will be necessary as you are obliterating the previous HEAD commit
git checkout master#如果您还没有这样做的话
git重置——硬573789f3或磁头~
git提交-am“消息”
git push--force#当您要删除上一个头部提交时,需要使用--force
问题是,一旦签出提交,您就不再是主机
。因此,当您按下master
时,它是最新的,因为它没有更改
您是否希望删除最新的提交,并添加自己的提交。
我建议你像这样做
git checkout master # if you didn't do it already
git reset --hard 573789f3 # Or HEAD~
<do your changes>
git commit -am 'message'
git push --force # The --force will be necessary as you are obliterating the previous HEAD commit
git checkout master#如果您还没有这样做的话
git重置——硬573789f3或磁头~
git提交-am“消息”
git push--force#当您要删除上一个头部提交时,需要使用--force
考虑使用--force with lease
作为--force
的更安全的替代方案,我完全重写了你的第一段,因为我不同意。(我经常在没有警告的情况下做出承诺。)而且,我认为我用它来代替它也能更好地回答这个问题。不过我同意你的解决方案,这就是为什么我编辑了你的答案,而不是自己写。当然,如果您不喜欢我的零钱,请随时回复。:)谢谢你的留言@TTT。它看起来不错。考虑使用<代码>——用租借< /代码>强制使用一个更安全的替代<代码> -力< /C> >我完全重写了你的第一段,因为我不同意它。(我经常在没有警告的情况下做出承诺。)而且,我认为我用它来代替它也能更好地回答这个问题。不过我同意你的解决方案,这就是为什么我编辑了你的答案,而不是自己写。当然,如果您不喜欢我的零钱,请随时回复。:)谢谢你的留言@TTT。看起来不错。您没有说明为什么要从master
上的旧提交开始,因此假设您对master
上的所有后续提交都不满意,您希望将它们删除并用新提交替换。我只是指出这一点,以防这不是您想要的,如果不是,您可能不应该从master
上的旧提交开始。您没有说为什么要从master
上的旧提交开始,因此,假设您对以后在master
上的所有提交都不满意,您希望将它们删除,并用新的提交替换它们。我只是指出这一点,以防这不是您想要的,如果不是,您可能不应该从master
上较旧的提交开始。