2014-11-05 41 views
0

我對git還是很陌生,想要弄清楚一切是如何工作的。所以這是我的情況:我一直在我的筆記本電腦上開發一個Java項目。推到git存儲庫,並將其拉到另一臺機器上。進行了一些更改並推送到存儲庫。現在我想把我目前的工作放到我的筆記本電腦上,但它說我不能,因爲我有沒有合併的文件。不能因爲沒有合併的文件而拉混淆

Pull is not possible because you have unmerged files. 
Please, fix them up in the work tree, and then use 'git add/rm <file>' 

請幫忙解決這個問題。謝謝。

$ git status 
on branch master 
Your branch is ahead of 'origin/master' by 1 commit. 
    (use "git push" to publish your local commits) 

You have unmerged paths. 
    (fix conflicts and run "git commit") 
+0

您是使用命令行還是GUI工具?如果命令行,請發佈'git status'的輸出。 – 2014-11-05 04:36:23

+0

因此,您並不在乎您嘗試合併時的任何本地更改?你很高興用遠程覆蓋你的本地東西? – 2014-11-05 04:36:27

+0

@Simon是的。我只想更新(覆蓋)遠程分支上的所有內容。 – JOH 2014-11-05 04:42:23

回答

2

您有兩種選擇:完成當前合併或中止它。

  1. 要完成合並,首先需要檢查要合併的文件。您可以使用

    git status 
    

    現在編輯文件以解決所有合併衝突。當你確信你已經恢復你的代碼到工作狀態,你應該運行

    git add . 
    git commit 
    
  2. 在另一方面,如果你想中止當前的合併,並刪除所有本地修改,你可以做

    git reset --hard HEAD 
    

    警告請謹慎使用此命令。它將刪除所有本地更改,並且無法恢復它們。

最後,當您完成這些操作時,您可以繼續前進。

+0

如何編輯文件以解決所有合併衝突?幾乎所有的文件都給我合併衝突。 – JOH 2014-11-05 04:53:46

+0

@JinOh與編輯文件一樣,首先編寫代碼。您可以使用NotePad等簡單的文本編輯器,Notepad ++或Sublime Text等更強大的文本編輯器,或Eclipse或IntelliJ等完整的IDE。後者可能會更好,因爲他們也有工具來幫助合併。 – 2014-11-05 06:02:19

+0

也許我錯了我的問題。我並沒有問如何從字面上編輯這些文件。你需要編輯什麼以便合併?或者,我只想用庫中的文件替換所有本地文件。 'git reset --hard HEAD'不適合我。 – JOH 2014-11-05 17:12:42