14

这是此功能分支的当前状态。

最近的步骤:

  1. 远程开发分支分道扬镳
  2. 获取远程开发分支
  3. 我想保留的隐藏的本地功能分支的分歧更改
  4. 从本地开发分支重新定位功能分支
  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在这种情况下会起作用。

4

1 回答 1

19

git status手册:

在短格式中,每个路径的状态显示为 XY PATH1 -> PATH2

对于存在合并冲突的路径,X 和 Y 显示合并每一侧的修改状态。对于没有合并冲突的路径,X 显示索引的状态,Y 显示工作树的状态。对于未跟踪的路径,XY 是 ??

U = 已更新但未合并

所以UU的意思是:未合并,都修改了

我认为 add 或 rm 消息是未合并状态的通用消息,其中状态可以像unmerged, both deletedunmerged, deleted by them等等,因此建议rm. 这就是为什么as appropriate在建议中。

于 2011-11-15T17:14:30.857 回答