我让master和origin/master置身事外,对那个分支的变化不再感兴趣。
我按照这些说明让我的本地主机指向正确的位置Make the current git branch a master branch
git checkout better_branch
git merge --strategy=ours master # keep the content of this branch, but record a merge
git checkout master
git merge better_branch # fast-forward master up to the merge它工作得很好,除了git状态提供
C:\data\localprojects\Beko2011Azure [master]> git status
# On branch master
# Your branch and 'origin/master' have diverged,
# and have 395 and 2 different commits each, respectively.
#
nothing to commit, working directory clean那么,我现在如何说服origin/master (github)来反映我的master。源/主服务器上的任何孤立对象都可以被安全地丢弃。
发布于 2013-04-19 19:48:02
要使用与master相同的origin/master
git push -f origin master:master关于参数的讨论:
-f是强制标志。通常,在允许推送到分支之前会应用一些检查。push标志关闭所有checks.origin是要推送到的远程的名称(您可以在一个repo)master:master中有多个远程:将本地分支master推送到远程分支master。一般的形式是localbranch:remotebranch。当您想要删除远程上的分支时,了解这一点尤其方便:在这种情况下,您可以将一个空的本地分支推送到远程,从而删除它:git push origin :remote_branch_to_be_deleted有关参数的更详细描述,请使用man git-push
相反方向:如果您想放弃在master上所做的所有更改,并希望它与origin/master完全相同,则使用
git checkout master
git reset --hard origin/master发布于 2020-09-09 12:42:30
如果git checkout -B master origin/master对您不起作用(当您执行git pull操作时,本地master仍然停留在较旧的origin/master分支上),您可以尝试这样做:
git remote prune origin
git pull它应该重置您的本地master以跟踪最新的origin/master。
https://stackoverflow.com/questions/16103810
复制相似问题