From: "Torsten Bögershausen" <tboegi@web.de>
To: git@vger.kernel.org
Cc: gitster@pobox.com, john@keeping.me.uk,
sandals@crustytoothpaste.net, peff@peff.net
Subject: Re: [PATCH] Add a test for subtree rebase that loses commits
Date: Tue, 5 Jan 2016 09:47:55 +0100 [thread overview]
Message-ID: <568B833B.4060001@web.de> (raw)
In-Reply-To: <1451968805-6948-2-git-send-email-greened@obbligato.org>
Need to drop
David Greene <greened@obbligato.org>
from List, no MX record
On 2016-01-05 05.40, David Greene wrote:
> From: "David A. Greene" <greened@obbligato.org>
>
> This test merges an external tree in as a subtree, makes some commits
> on top of it and splits it back out. In the process the added commits
> are lost. This is marked to expect failure so that we don't forget to
> fix it.
>
> Signed-off-by: David A. Greene <greened@obbligato.org>
> ---
> t/t3427-rebase-subtree.sh | 68 +++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 68 insertions(+)
> create mode 100755 t/t3427-rebase-subtree.sh
>
> diff --git a/t/t3427-rebase-subtree.sh b/t/t3427-rebase-subtree.sh
> new file mode 100755
> index 0000000..7eb28ab
> --- /dev/null
> +++ b/t/t3427-rebase-subtree.sh
> @@ -0,0 +1,68 @@
> +#!/bin/sh
> +
> +test_description='git rebase tests for -Xsubtree
> +
> +This test runs git rebase and tests the subtree strategy.
> +'
> +. ./test-lib.sh
> +
> +addfile() {
> + name=$1
> + echo $(basename ${name}) > ${name}
> + ${git} add ${name}
> + ${git} commit -m "Add $(basename ${name})"
> +}
> +
> +check_equal()
> +{
> + test_debug 'echo'
> + test_debug "echo \"check a:\" \"{$1}\""
> + test_debug "echo \" b:\" \"{$2}\""
> + if [ "$1" = "$2" ]; then
> + return 0
> + else
> + return 1
> + fi
> +}
> +
> +last_commit_message()
> +{
> + git log --pretty=format:%s -1
> +}
> +
> +test_expect_success 'setup' '
> + test_commit README &&
> + mkdir files &&
When cd'ing into a directory,
we need to do it in a sub-shell:
> + cd files &&
> + git init &&
> + test_commit master1 &&
> + test_commit master2 &&
> + test_commit master3 &&
> + cd .. &&
mkdir files &&
(
cd files &&
git init &&
test_commit master1 &&
test_commit master2 &&
test_commit master3
)
(And similar below)
> + test_debug "echo Add project master to master" &&
> + git fetch files master &&
> + git branch files-master FETCH_HEAD &&
> + test_debug "echo Add subtree master to master via subtree" &&
> + git read-tree --prefix=files_subtree files-master &&
> + git checkout -- files_subtree &&
> + tree=$(git write-tree) &&
> + head=$(git rev-parse HEAD) &&
> + rev=$(git rev-parse --verify files-master^0) &&
> + commit=$(git commit-tree -p ${head} -p ${rev} -m "Add subproject master" ${tree}) &&
> + git reset ${commit} &&
> + cd files_subtree &&
> + test_commit master4 &&
> + cd .. &&
> + test_commit files_subtree/master5
> +'
> +
> +# Does not preserve master4 and master5.
> +test_expect_failure 'Rebase default' '
> + git checkout -b rebase-default master &&
> + git filter-branch --prune-empty -f --subdirectory-filter files_subtree &&
> + git commit -m "Empty commit" --allow-empty &&
> + git rebase -Xsubtree=files_subtree --preserve-merges --onto files-master master &&
> + check_equal "$(last_commit_message)" "files_subtree/master5"
> +'
> +
> +test_done
>
next prev parent reply other threads:[~2016-01-05 8:48 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-05 4:40 [PATCH] Test rebase -Xsubtree David Greene
2016-01-05 4:40 ` [PATCH] Add a test for subtree rebase that loses commits David Greene
2016-01-05 8:47 ` Torsten Bögershausen [this message]
2016-01-05 9:57 ` Dennis Kaarsemaker
2016-01-05 11:18 ` Torsten Bögershausen
2016-01-05 20:34 ` Eric Sunshine
2016-01-05 21:14 ` David A. Greene
2016-01-10 23:08 ` [PATCH v2] Test rebase -Xsubtree David Greene
2016-01-10 23:08 ` [PATCH] Add a test for subtree rebase that loses commits David Greene
2016-01-15 1:19 ` Eric Sunshine
2016-01-17 22:50 ` David A. Greene
2016-01-17 23:13 ` [PATCH v3 contrib/subtree 1/1] " David Greene
2016-01-17 23:32 ` Eric Sunshine
2016-01-17 23:36 ` David A. Greene
2016-01-17 23:43 ` [PATCH v4 1/1] contrib/subtree: " David Greene
2016-01-18 18:10 ` Eric Sunshine
2016-01-19 2:53 ` David A. Greene
2016-01-19 2:59 ` [PATCH v5 " David Greene
2016-01-19 4:21 ` Eric Sunshine
2016-01-19 17:41 ` Junio C Hamano
2016-01-20 4:10 ` David A. Greene
2016-04-12 23:27 ` Junio C Hamano
2016-06-28 10:55 ` David A. Greene
2016-06-28 10:54 ` [PATCH v6 " David Greene
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=568B833B.4060001@web.de \
--to=tboegi@web.de \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=john@keeping.me.uk \
--cc=peff@peff.net \
--cc=sandals@crustytoothpaste.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).