我有一个存储库,它有一些糟糕的提交(在这个例子中是D, E和F)。
A-B-C-D-E-F master和origin/master
我专门用git重置修改了本地存储库——很难。我在重置之前采取了一个分支,所以现在我有一个回购,看起来像:
A-B-C master
\ D-E-F old_master
A-B-C-D-E-F origin/master
现在我需要那些糟糕的提交的一些部分,所以我选择了我需要的比特,并进行了一些新的提交,所以现在我在本地有以下内容:
A-B-C-G-H master
\ D-E-F old_master
现在我想把这种状态推到远程回购。然而,当我试图做一个git推git礼貌地给我刷掉:
$ git push origin +master:master --force
Total 0 (delta 0), reused 0 (delta 0)
error: denying non-fast forward refs/heads/master (you should pull first)
To git@git.example.com:myrepo.git
! [remote rejected] master -> master (non-fast forward)
error: failed to push some refs to 'git@git.example.com:myrepo.git'
我如何让远程回购采取本地回购的当前状态?