]>
Commit | Line | Data |
---|---|---|
8371234e SP |
1 | #!/bin/sh |
2 | ||
3 | test_description='Merge-recursive merging renames' | |
4 | . ./test-lib.sh | |
5 | ||
42d180dd EN |
6 | test_expect_success 'setup' ' |
7 | cat >A <<-\EOF && | |
8 | a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa | |
9 | b bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb | |
10 | c cccccccccccccccccccccccccccccccccccccccccccccccc | |
11 | d dddddddddddddddddddddddddddddddddddddddddddddddd | |
12 | e eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee | |
13 | f ffffffffffffffffffffffffffffffffffffffffffffffff | |
14 | g gggggggggggggggggggggggggggggggggggggggggggggggg | |
15 | h hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh | |
16 | i iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii | |
17 | j jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj | |
18 | k kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk | |
19 | l llllllllllllllllllllllllllllllllllllllllllllllll | |
20 | m mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm | |
21 | n nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn | |
22 | o oooooooooooooooooooooooooooooooooooooooooooooooo | |
23 | EOF | |
8371234e | 24 | |
42d180dd EN |
25 | cat >M <<-\EOF && |
26 | A AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA | |
27 | B BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB | |
28 | C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC | |
29 | D DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD | |
30 | E EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE | |
31 | F FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF | |
32 | G GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG | |
33 | H HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH | |
34 | I IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII | |
35 | J JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ | |
36 | K KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK | |
37 | L LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL | |
38 | M MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM | |
39 | N NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN | |
40 | O OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO | |
41 | EOF | |
8371234e | 42 | |
42d180dd EN |
43 | git add A M && |
44 | git commit -m "initial has A and M" && | |
45 | git branch white && | |
46 | git branch red && | |
47 | git branch blue && | |
8371234e | 48 | |
42d180dd EN |
49 | git checkout white && |
50 | sed -e "/^g /s/.*/g : white changes a line/" <A >B && | |
51 | sed -e "/^G /s/.*/G : colored branch changes a line/" <M >N && | |
52 | rm -f A M && | |
53 | git update-index --add --remove A B M N && | |
54 | git commit -m "white renames A->B, M->N" && | |
8371234e | 55 | |
42d180dd EN |
56 | git checkout red && |
57 | echo created by red >R && | |
58 | git update-index --add R && | |
59 | git commit -m "red creates R" && | |
8371234e | 60 | |
42d180dd EN |
61 | git checkout blue && |
62 | sed -e "/^o /s/.*/g : blue changes a line/" <A >B && | |
63 | rm -f A && | |
64 | mv B A && | |
65 | git update-index A && | |
66 | git commit -m "blue modify A" && | |
183d7972 | 67 | |
42d180dd EN |
68 | git checkout master |
69 | ' | |
8371234e SP |
70 | |
71 | # This test broke in 65ac6e9c3f47807cb603af07a6a9e1a43bc119ae | |
42d180dd | 72 | test_expect_success 'merge white into red (A->B,M->N)' ' |
8371234e SP |
73 | git checkout -b red-white red && |
74 | git merge white && | |
2f69de5b JK |
75 | git write-tree && |
76 | test_path_is_file B && | |
77 | test_path_is_file N && | |
78 | test_path_is_file R && | |
79 | test_path_is_missing A && | |
80 | test_path_is_missing M | |
8371234e SP |
81 | ' |
82 | ||
183d7972 | 83 | # This test broke in 8371234ecaaf6e14fe3f2082a855eff1bbd79ae9 |
42d180dd | 84 | test_expect_success 'merge blue into white (A->B, mod A, A untracked)' ' |
183d7972 SP |
85 | git checkout -b white-blue white && |
86 | echo dirty >A && | |
87 | git merge blue && | |
2f69de5b JK |
88 | git write-tree && |
89 | test_path_is_file A && | |
90 | echo dirty >expect && | |
91 | test_cmp expect A && | |
92 | test_path_is_file B && | |
93 | test_path_is_file N && | |
94 | test_path_is_missing M | |
183d7972 SP |
95 | ' |
96 | ||
8371234e | 97 | test_done |