chiark / gitweb /
Do not raise an exception if no FETCH_HEAD
[stgit] / t / t1201-pull-trailing.sh
1 #!/bin/sh
2 #
3 # Copyright (c) 2006 Yann Dirson
4 #
5
6 test_description='test
7
8 '
9
10 . ./test-lib.sh
11
12 # don't need this repo, but better not drop it, see t1100
13 #rm -rf .git
14
15 # Need a repo to clone
16 test_create_repo foo
17
18 test_expect_success \
19     'Setup and clone tree, and setup changes' \
20     "(cd foo &&
21       printf 'a\nb\n' > file && git add file && git commit -m .
22      ) &&
23      stg clone foo bar &&
24      (cd bar && stg new p1 -m p1
25       printf 'c\n' >> file && stg refresh
26      )
27 "
28
29 test_expect_success \
30     'Port those patches to orig tree' \
31     '(cd foo &&
32       GIT_DIR=../bar/.git git-format-patch --stdout \
33           $(cd ../bar && stg id base@master)..HEAD |
34       git-am -3 -k
35      )
36     '
37
38 test_expect_success \
39     'Pull those patches applied upstream, without pushing' \
40     "(cd bar && stg pull --nopush
41      )
42 "
43
44 test_expect_success \
45     'Try to push those patches without merge detection' \
46     "(cd bar && stg push --all
47      )
48 "
49
50 test_expect_success \
51     'Pull those patches applied upstream' \
52     "(cd bar && stg push --undo && stg push --all --merged
53      )
54 "
55
56 test_expect_success \
57     'Check that all went well' \
58     "diff -u foo/file bar/file
59 "
60
61 test_done