Git: how to create different unmerged states?

2019-01-23 15:46发布

When do different git status unmerged states occur, like added by us, added by them or both deleted?

I've tried to reproduce the latter by performing a merge where a file has been deleted in the current and merged-from branch, but I was not able to create this status.

1条回答
爱情/是我丢掉的垃圾
2楼-- · 2019-01-23 16:21

You can get all three by renaming a file differently in each branch.

git init
touch foo
git add foo
git commit -m 'initial commit'
git checkout -b tmp
git mv foo X
git commit -m 'rename to X'
git checkout -
git mv foo Y
git commit -m 'rename to Y'
git merge tmp

Now you have all three states.

$ git status
# On branch master
# Unmerged paths:
#   (use "git add/rm ..." as appropriate to mark resolution)
#
#       added by them:      X
#       added by us:        Y
#       both deleted:       foo
#
no changes added to commit (use "git add" and/or "git commit -a")
查看更多
登录 后发表回答