14

この機能ブランチの現在の状態は次のとおりです。

最近の手順:

  1. リモート開発ブランチの分岐
  2. フェッチされたリモート開発ブランチ
  3. 保持したいローカル機能ブランチの分岐された変更を隠した
  4. ローカル開発ブランチからの機能ブランチのリベース
  5. Stash Popped機能ブランチの変更
  6. Stash Apply機能ブランチの変更

結果:

$ 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 は、競合を解決するためにaddまたはを推奨します。rmどういうUU意味で、なぜそれらがそれを修正するためのオプションになるのでしょうか?

これに似た競合の解決について私が見つけることができるすべての情報は、使用しないと言っているためrm、なぜgitがそれが適切であると考えるのか疑問に思います。

UU私はgitのマニュアルページで何も見つけることができませんが、このSOの質問addがあり、この場合になぜうまくいくのかを整理するのにも苦労しているようです。

4

1 に答える 1

19

git statusマニュアルを参照してください:

短い形式では、各パスのステータスは XY PATH1 -> PATH2 として表示されます。

マージの競合があるパスの場合、X と Y はマージの各側の変更状態を示します。マージの競合がないパスの場合、X はインデックスのステータスを示し、Y はワーク ツリーのステータスを示します。追跡されていないパスの場合、XY は ??

U = 更新されたがマージされていない

したがって、UU の意味: マージされていない、両方が変更されている

add または rm メッセージは、マージされていない状態の一般的なメッセージであり、状態が のようunmerged, both deletedになる可能性があるunmerged, deleted by themため、rm. as appropriateそれが提案にある理由です。

于 2011-11-15T17:14:30.857 に答える