blob: 8662207d292859ed10bdfb4b04ea9e680342c771 [file] [log] [blame]
Fredrik Kuivinen72d12162005-12-03 11:41:20 +01001#!/bin/sh
2#
3# Copyright (c) 2005 Fredrik Kuivinen
4#
5
6test_description='Test merge with directory/file conflicts'
7. ./test-lib.sh
8
Elijah Newrend09c0a32010-09-20 02:28:42 -06009test_expect_success 'prepare repository' '
10 echo Hello >init &&
11 git add init &&
12 git commit -m initial &&
Fredrik Kuivinen72d12162005-12-03 11:41:20 +010013
Elijah Newrend09c0a32010-09-20 02:28:42 -060014 git branch B &&
15 mkdir dir &&
16 echo foo >dir/foo &&
17 git add dir/foo &&
18 git commit -m "File: dir/foo" &&
19
20 git checkout B &&
21 echo file dir >dir &&
22 git add dir &&
23 git commit -m "File: dir"
24'
25
26test_expect_success 'Merge with d/f conflicts' '
27 test_must_fail git merge master
28'
Fredrik Kuivinen72d12162005-12-03 11:41:20 +010029
Elijah Newren5a2580d2010-07-09 07:10:54 -060030test_expect_success 'F/D conflict' '
Alex Riesen1c9b2d32009-05-11 11:31:42 +020031 git reset --hard &&
32 git checkout master &&
33 rm .git/index &&
34
35 mkdir before &&
36 echo FILE >before/one &&
37 echo FILE >after &&
38 git add . &&
39 git commit -m first &&
40
41 rm -f after &&
42 git mv before after &&
43 git commit -m move &&
44
45 git checkout -b para HEAD^ &&
46 echo COMPLETELY ANOTHER FILE >another &&
47 git add . &&
48 git commit -m para &&
49
50 git merge master
51'
52
Fredrik Kuivinen72d12162005-12-03 11:41:20 +010053test_done