1git-annex-resolvemerge(1)   General Commands Manual  git-annex-resolvemerge(1)
2
3
4

NAME

6       git-annex-resolvemerge - resolve merge conflicts
7

SYNOPSIS

9       git annex resolvemerge
10

DESCRIPTION

12       Automatically  resolves  a conflicted merge. This is done automatically
13       when using git annex sync or git annex merge.
14
15       When two trees being merged contain conflicting versions of an  annexed
16       file,  the  merge  conflict will be resolved by adding both versions to
17       the tree, using variants of the filename.
18
19       When one tree modified the file, and the other tree deleted  the  file,
20       the merge conflict will be resolved by adding the modified file using a
21       variant of the filename, leaving the original filename deleted.
22
23       When the merge conflict involves a file that is annexed  in  one  tree,
24       but  is  not  annexed  in the other tree, it is resolved by keeping the
25       non-annexed file as-is, and adding the annexed version using a  variant
26       of the filename.
27
28       Note  that  only merge conflicts that involve one or more annexed files
29       are resolved. Merge conflicts between two files that  are  not  annexed
30       will not be automatically resolved.
31

EXAMPLES

33       Suppose  Alice  commits a change to annexed file foo, and Bob commits a
34       different change to the same file foo.
35
36       Merging between them will then fail, and git  will  present  the  merge
37       conflict  as  a  file foo pointing to one version of the git-annex sym‐
38       link, with git status indicating that foo has an unresolved conflict.
39
40       Running git annex resolvemerge in this situation will resolve the merge
41       conflict,  by  replacing  the  file foo with files named like foo.vari‐
42       ant-c696 and foo.variant-f16a. One of the files has  the  content  that
43       Alice committed, and the other has the content that Bob committed.
44
45       The  user  can  then  examine  the two variants of the file, and either
46       merge the two changes into a single file, or rename one of them back to
47       foo and delete the other.
48
49       Now  suppose Alice commits a change to annexed file bar, while Bob com‐
50       mits a deletion of the same file bar. Merging will  fail.  Running  git
51       annex resolvemerge in this situation will resolve the merge conflict by
52       making a file with a name like bar.variant-421f containing Alice's ver‐
53       sion.  The  bar  file  remains  deleted. The user can later examine the
54       variant of the file and either rename it back  to  bar,  or  decide  to
55       delete it too.
56

SEE ALSO

58       git-annex(1)
59

AUTHOR

61       Joey Hess <id@joeyh.name>
62
63                                                     git-annex-resolvemerge(1)
Impressum