1#!/bin/sh
2
3test_description='test cherry-picking an empty commit'
4
5. ./test-lib.sh
6
7test_expect_success setup '
8
9 echo first > file1 &&
10 git add file1 &&
11 test_tick &&
12 git commit -m "first" &&
13
14 git checkout -b empty-branch &&
15 test_tick &&
16 git commit --allow-empty -m "empty" &&
17
18 echo third >> file1 &&
19 git add file1 &&
20 test_tick &&
21 git commit --allow-empty-message -m ""
22
23'
24
25test_expect_success 'cherry-pick an empty commit' '
26 git checkout master && {
27 git cherry-pick empty-branch^
28 test "$?" = 1
29 }
30'
31
32test_expect_success 'index lockfile was removed' '
33
34 test ! -f .git/index.lock
35
36'
37
38test_expect_success 'cherry-pick a commit with an empty message' '
39 git checkout master && {
40 git cherry-pick empty-branch
41 test "$?" = 1
42 }
43'
44
45test_expect_success 'index lockfile was removed' '
46
47 test ! -f .git/index.lock
48
49'
50
51test_done