2011-01-21 95 views
5

我對使用Git很陌生,所以很多事情都讓我無法逃脫。昨天我試圖做一個git還原操作失敗,並且它產生了關於合併或東西的一些錯誤。我發現了一個解決辦法這一點,通過克隆我的倉庫,然後使用Git在我的源代碼中插入了很多<<<<<錯誤消息

$ git的復位 - 硬SHA1_HASH

找回以前的承諾。不幸的是,現在我的代碼充斥着大量額外的東西,如

<<<<<<<<<<<< HEAD 
//some stuff 
======= 
//other stuff 
>>>>>>>>>>>> parent of 1ae3953... Removed duplicate folders 

我該如何刪除這些東西?我正在通過我的所有文件並手動刪除它們真的很難......有沒有辦法讓Git刪除它?

編輯︰原來標記成爲我的代碼在某些提交過程中莫名其妙的一部分。我如何確保在未來,如果一些拉或撤消失敗,Git不會插入這些標記到我的代碼?有什麼樣的標誌?

+0

聽起來就像在合併或恢復期間在代碼中結束了一些衝突... – BoltClock 2011-01-21 03:23:39

+3

如果`git-add`可以(被配置爲)拒絕在包含衝突標記的衝突文件上操作,是一個容易犯的錯誤。 – 2011-01-21 04:43:22

回答

14

這是合併衝突標記,當您執行類似git pull之類的操作時添加合併衝突標記,並且傳入的更改不能自動與您自己的更改合併。它向您顯示您需要手動解決衝突的位置。

git reset --hard不會添加這樣的標記,它會重置所有內容以匹配您指定的提交。如果在執行git reset --hard之後看到衝突標記,則可能忽略了在過去的某個時間點解決衝突,並且無意中犯下了衝突。

相關問題