搜尋

首頁  >  問答  >  主體

git everything up to date出錯了... 明明有差異就是提交不了

1 . master 有四個分支.....

4. fffff
3. qqqq
2. xxxx
1. aaaa
  1. 本地基於master創建了一個新的分支dev
    刪除了兩個原有的commit....

   git reset --hard aaaa
   git cherry-pick fffff
   git log --oneline
    ----
        2. ffff
        1. aaaa
    ----
    然后做了一些修改...  新增了一条commit
    ----
        3. wwww
        2. ffff
        1. aaaa
    ----
    
  1. 強行推送到遠端的orign master,本地的dev分支覆蓋遠端的 origin master

git push -f origin master

這時候報everything up to date....

請問這個需要怎麼解決呀 ?

仅有的幸福仅有的幸福2799 天前741

全部回覆(2)我來回復

  • 某草草

    某草草2017-05-02 09:54:14

    先指出你的錯誤之處:

    本地的dev分支覆蓋遠端的 origin master

    如果你沒有將本地的dev分支的上游分支設置為遠程的master分支的話,是沒有辦法用git push -f origin master强制让让dev覆盖远程的master分支的。git push命令是将本地分支推送到与其对应的上游分支,比如你本地的master分支默认的上游分支是远程的master分支,所以你用git push -f origin master命令是將本地master領先於遠程master的提交推送到遠程,而你本地的master根本沒有領先遠程,所以git當然提示“everything up to date....”,而領先的是你的dev分支。

    從你的問題中,我根本無法得知你到底要做什麼,只是問如何解決目前遇到的問題。 git並沒有出錯,只是你沒有理解git的操作過程,所以你才覺得自己遇到了問題。

    給你兩個建議:

    • 提問時,最好要將你的目的明確寫出來。因為如果你的目的不對,我們也會在你錯誤的道路上幫助你繼續前進,直到你遇到更多的問題。當然,如果你說你的目的是“解決問題”,那我覺得這是廢話,我在這裡說的目的是做某事的目的。如果想知道如何智慧的提問,建議看看這個:https://github.com/ryanhanwu/...

    • 在使用git進行工作之前,最好先理解git基本的概念和操作。當然,如果現在就是在學的話,那就在好好看看書吧,建議Progit這本書。

    不要抱怨我們的回答,因為我們並未對回答要求任何報酬。其實,我也只是希望能提升segmentfault的問答品質。

    回覆
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-02 09:54:14

    "master 有四條分支"這句話實在是看不懂, 你是想說四條commit?

    當本地記錄與遠端記錄不一致時, 請先pull, 在本地解决好冲突之后在push, 不要强行push

    回覆
    0
  • 取消回覆