diff options
author | Johannes Schindelin <Johannes.Schindelin@gmx.de> | 2008-07-04 16:19:52 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-07-07 13:23:42 -0700 |
commit | f95ebf74296077d5fdccaa2668edc527841db521 (patch) | |
tree | b3744edcbc4ee2fdad99c93ad2f161ebd7a38ed4 /t | |
parent | Merge branch 'qq/maint' (diff) | |
download | tgif-f95ebf74296077d5fdccaa2668edc527841db521.tar.xz |
Allow cherry-picking root commits
A root commit couldn't be cherry-picked. But its semantics can be
defined as simply merging two trees by overlaying disjoint parts
and merging overlapping files without any common ancestor. You
should be able to rebase originally independent branches on top of
another branch by using this.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-x | t/t3503-cherry-pick-root.sh | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/t/t3503-cherry-pick-root.sh b/t/t3503-cherry-pick-root.sh new file mode 100755 index 0000000000..b0faa29918 --- /dev/null +++ b/t/t3503-cherry-pick-root.sh @@ -0,0 +1,30 @@ +#!/bin/sh + +test_description='test cherry-picking a root commit' + +. ./test-lib.sh + +test_expect_success setup ' + + echo first > file1 && + git add file1 && + test_tick && + git commit -m "first" && + + git symbolic-ref HEAD refs/heads/second && + rm .git/index file1 && + echo second > file2 && + git add file2 && + test_tick && + git commit -m "second" + +' + +test_expect_success 'cherry-pick a root commit' ' + + git cherry-pick master && + test first = $(cat file1) + +' + +test_done |