2015-02-11 19 views
0

我有一個文件A和2隱藏了兩個修改過的文件A,然後我運行了命令'git stash pop'兩次。git隱藏彈出兩次後的錯誤

結果是第一個藏匿成功彈出,但第二藏匿發生錯誤象下面這樣:

error: Your local changes to the following files would be overwritten by merge: A

Please, commit your changes or stash them before you can merge. Aborting

我既需要2藏匿,我不想提交第一藏匿流行之後。 那麼,我該如何解決這個問題?有沒有辦法讓我合併這2個藏匿,然後只彈出一次,以滿足我的要求?

回答

2

如果不進行更改,則無法做到這一點。

  1. 流行第一藏匿。

    git stash pop 
    
  2. 添加並提交

    git commit -m 'temp commit' 
    
  3. 彈出第二藏匿

    git stash pop 
    
  4. 添加和修改上次提交

    git commit --amend --no-edit 
    
  5. 撤銷上次提交併將上次提交更改帶到非分配區域

    git reset HEAD~1 
    
0

我已經花這個問題了大量的時間我有以下返回時,我:

error: Your local changes to the following files would be overwritten by merge 

這種情況發生的一個跡象是,因爲當有本地修改一個不能合併。 Git試圖保護你免於失去這些變化..我已經讀過其中一個解決方案是(1)提交本地更改或(2)暫時存儲它們或(3)丟棄它們。

也許看看這個鏈接的進一步信息:Resolving Git merge conflicts

0

您首先需要處理來自第一次彈出的文件A上的更改。提交它們並執行第二次彈出。然後,您可以修改對之前提交的更改或做一個新的提交。