2011-11-15 210 views
6

以下是此功能分支的當前狀態。git status:什麼是UU,爲什麼要添加/ rm修復它?

最近採取的步驟:

  1. 遠程開發分支分歧
  2. 擷取的遠程開發分支
  3. 藏匿本地特性分支的分歧,我想保持
  4. 重建基礎變化從本地發展麩皮功能分支CH
  5. 藏匿彈出特性分支改變
  6. 藏匿應用特性分支改變

結果:

$ git status 
# On branch feature-foo-branch 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
# modified: foo/bar.php 
# modified: foo/baz.php 
# 
# Unmerged paths: 
# (use "git reset HEAD <file>..." to unstage) 
# (use "git add/rm <file>..." as appropriate to mark resolution) 
# 
# both modified:  foo/conflict.php 
# 

和狀態-s

$ git status -s 
UU foo/conflict.php 
M foo/bar.php 
M foo/baz/php 

git建議使用addrm來解決衝突。 UU是什麼意思?爲什麼這些是解決它的選項?

我可以找到有關解決衝突類似的所有信息說不使用rm,這讓我想知道爲什麼git認爲它是適當的。

我在git手冊頁找不到關於UU的任何信息,但是有這個SO question,在這種情況下,它似乎也遇到了問題,爲什麼add可以工作。

回答

12

參見git status手冊:

在短格式中,每個路徑的狀態被示出爲 XY PATH1 - > PATH2

對於合併衝突路徑,X和Y表明的修飾狀態合併的每一方。對於沒有合併衝突的路徑,X顯示索引的狀態,Y顯示工作樹的狀態。對於未跟蹤的路徑,XY是??

U =更新,但是未合併

所以UU指:未合併,既改性

我認爲該加載或RM消息是用於未合併的狀態,一個通用的消息,其中所述狀態可以是像unmerged, both deletedunmerged, deleted by them和等等,因此建議rm。這就是爲什麼建議中有as appropriate

相關問題