зеркало из https://github.com/microsoft/git.git
tests: avoid variations of the `master` branch name
The term `master` has a loaded history that serves as a constant reminder of racial injustice. The Git project has no desire to perpetuate this and already started avoiding it. The test suite uses variations of this name for branches other than the default one. Apart from t3200, where we just addressed this in the previous commit, those instances can be renamed in an automated manner because they do not require any changes outside of the test script, so let's do that. Seeing as the touched branches have very little (if anything) to do with the default branch, we choose to use a completely separate naming scheme: `topic_<number>` (it cannot be `topic-<number>` because t5515 uses the `test_oid` machinery with the term, and that machinery uses shell variables internally, whose names cannot contain dashes). This trick was performed by this (GNU) sed invocation: $ sed -i 's/master\([a-z0-9]\)/topic_\1/g' t/t*.sh Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
432f5e638d
Коммит
b6211b89eb
|
@ -15,12 +15,12 @@ commit_message() {
|
|||
# this test script tries to document them. First, the following commit history
|
||||
# is generated (the onelines are shown, time flows from left to right):
|
||||
#
|
||||
# master1 - master2 - master3
|
||||
# topic_1 - topic_2 - topic_3
|
||||
# \
|
||||
# README ---------------------- Add subproject master - master4 - files_subtree/master5
|
||||
# README ---------------------- Add subproject master - topic_4 - files_subtree/topic_5
|
||||
#
|
||||
# Where the merge moves the files master[123].t into the subdirectory
|
||||
# files_subtree/ and master4 as well as files_subtree/master5 add files to that
|
||||
# files_subtree/ and topic_4 as well as files_subtree/topic_5 add files to that
|
||||
# directory directly.
|
||||
#
|
||||
# Then, in subsequent test cases, `git filter-branch` is used to distill just
|
||||
|
@ -28,11 +28,11 @@ commit_message() {
|
|||
# an empty commit is added on top. The pre-rebase commit history looks like
|
||||
# this:
|
||||
#
|
||||
# Add subproject master - master4 - files_subtree/master5 - Empty commit
|
||||
# Add subproject master - topic_4 - files_subtree/topic_5 - Empty commit
|
||||
#
|
||||
# where the root commit adds three files: master1.t, master2.t and master3.t.
|
||||
# where the root commit adds three files: topic_1.t, topic_2.t and topic_3.t.
|
||||
#
|
||||
# This commit history is then rebased onto `master3` with the
|
||||
# This commit history is then rebased onto `topic_3` with the
|
||||
# `-Xsubtree=files_subtree` option in three different ways:
|
||||
#
|
||||
# 1. using `--preserve-merges`
|
||||
|
@ -43,9 +43,9 @@ test_expect_success 'setup' '
|
|||
test_commit README &&
|
||||
|
||||
git init files &&
|
||||
test_commit -C files master1 &&
|
||||
test_commit -C files master2 &&
|
||||
test_commit -C files master3 &&
|
||||
test_commit -C files topic_1 &&
|
||||
test_commit -C files topic_2 &&
|
||||
test_commit -C files topic_3 &&
|
||||
|
||||
: perform subtree merge into files_subtree/ &&
|
||||
git fetch files refs/heads/master:refs/heads/files-master &&
|
||||
|
@ -55,8 +55,8 @@ test_expect_success 'setup' '
|
|||
git commit -m "Add subproject master" &&
|
||||
|
||||
: add two extra commits to rebase &&
|
||||
test_commit -C files_subtree master4 &&
|
||||
test_commit files_subtree/master5 &&
|
||||
test_commit -C files_subtree topic_4 &&
|
||||
test_commit files_subtree/topic_5 &&
|
||||
|
||||
git checkout -b to-rebase &&
|
||||
git fast-export --no-data HEAD -- files_subtree/ |
|
||||
|
@ -66,22 +66,22 @@ test_expect_success 'setup' '
|
|||
git commit -m "Empty commit" --allow-empty
|
||||
'
|
||||
|
||||
# FAILURE: Does not preserve master4.
|
||||
# FAILURE: Does not preserve topic_4.
|
||||
test_expect_failure REBASE_P 'Rebase -Xsubtree --preserve-merges --onto commit' '
|
||||
reset_rebase &&
|
||||
git checkout -b rebase-preserve-merges to-rebase &&
|
||||
git rebase -Xsubtree=files_subtree --preserve-merges --onto files-master master &&
|
||||
verbose test "$(commit_message HEAD~)" = "master4" &&
|
||||
verbose test "$(commit_message HEAD)" = "files_subtree/master5"
|
||||
verbose test "$(commit_message HEAD~)" = "topic_4" &&
|
||||
verbose test "$(commit_message HEAD)" = "files_subtree/topic_5"
|
||||
'
|
||||
|
||||
# FAILURE: Does not preserve master4.
|
||||
# FAILURE: Does not preserve topic_4.
|
||||
test_expect_failure REBASE_P 'Rebase -Xsubtree --keep-empty --preserve-merges --onto commit' '
|
||||
reset_rebase &&
|
||||
git checkout -b rebase-keep-empty to-rebase &&
|
||||
git rebase -Xsubtree=files_subtree --keep-empty --preserve-merges --onto files-master master &&
|
||||
verbose test "$(commit_message HEAD~2)" = "master4" &&
|
||||
verbose test "$(commit_message HEAD~)" = "files_subtree/master5" &&
|
||||
verbose test "$(commit_message HEAD~2)" = "topic_4" &&
|
||||
verbose test "$(commit_message HEAD~)" = "files_subtree/topic_5" &&
|
||||
verbose test "$(commit_message HEAD)" = "Empty commit"
|
||||
'
|
||||
|
||||
|
@ -91,8 +91,8 @@ test_expect_success 'Rebase -Xsubtree --empty=ask --onto commit' '
|
|||
test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --onto files-master master &&
|
||||
: first pick results in no changes &&
|
||||
git rebase --skip &&
|
||||
verbose test "$(commit_message HEAD~2)" = "master4" &&
|
||||
verbose test "$(commit_message HEAD~)" = "files_subtree/master5" &&
|
||||
verbose test "$(commit_message HEAD~2)" = "topic_4" &&
|
||||
verbose test "$(commit_message HEAD~)" = "files_subtree/topic_5" &&
|
||||
verbose test "$(commit_message HEAD)" = "Empty commit"
|
||||
'
|
||||
|
||||
|
@ -102,8 +102,8 @@ test_expect_success 'Rebase -Xsubtree --empty=ask --rebase-merges --onto commit'
|
|||
test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --rebase-merges --onto files-master --root &&
|
||||
: first pick results in no changes &&
|
||||
git rebase --skip &&
|
||||
verbose test "$(commit_message HEAD~2)" = "master4" &&
|
||||
verbose test "$(commit_message HEAD~)" = "files_subtree/master5" &&
|
||||
verbose test "$(commit_message HEAD~2)" = "topic_4" &&
|
||||
verbose test "$(commit_message HEAD~)" = "files_subtree/topic_5" &&
|
||||
verbose test "$(commit_message HEAD)" = "Empty commit"
|
||||
'
|
||||
|
||||
|
|
|
@ -465,7 +465,7 @@ test_expect_success 'am changes committer and keeps author' '
|
|||
test_expect_success 'am --signoff adds Signed-off-by: line' '
|
||||
rm -fr .git/rebase-apply &&
|
||||
git reset --hard &&
|
||||
git checkout -b master2 first &&
|
||||
git checkout -b topic_2 first &&
|
||||
git am --signoff <patch2 &&
|
||||
{
|
||||
printf "third\n\nSigned-off-by: %s <%s>\n\n" \
|
||||
|
@ -479,7 +479,7 @@ test_expect_success 'am --signoff adds Signed-off-by: line' '
|
|||
'
|
||||
|
||||
test_expect_success 'am stays in branch' '
|
||||
echo refs/heads/master2 >expected &&
|
||||
echo refs/heads/topic_2 >expected &&
|
||||
git symbolic-ref HEAD >actual &&
|
||||
test_cmp expected actual
|
||||
'
|
||||
|
@ -540,7 +540,7 @@ test_expect_success 'am without --keep removes Re: and [PATCH] stuff' '
|
|||
git reset --hard HEAD^ &&
|
||||
git am <patch4 &&
|
||||
git rev-parse HEAD >expected &&
|
||||
git rev-parse master2 >actual &&
|
||||
git rev-parse topic_2 >actual &&
|
||||
test_cmp expected actual
|
||||
'
|
||||
|
||||
|
@ -567,7 +567,7 @@ test_expect_success 'am --keep-non-patch really keeps the non-patch part' '
|
|||
test_expect_success 'setup am -3' '
|
||||
rm -fr .git/rebase-apply &&
|
||||
git reset --hard &&
|
||||
git checkout -b base3way master2 &&
|
||||
git checkout -b base3way topic_2 &&
|
||||
sed -n -e "3,\$p" msg >file &&
|
||||
head -n 9 msg >>file &&
|
||||
git add file &&
|
||||
|
|
|
@ -15,7 +15,7 @@ export GIT_TEST_PROTOCOL_VERSION
|
|||
|
||||
build_script () {
|
||||
script="$1" &&
|
||||
for i in one three_file master master2 one_tree three two two2 three2
|
||||
for i in one three_file master topic_2 one_tree three two two2 three2
|
||||
do
|
||||
echo "s/$(test_oid --hash=sha1 "$i")/$(test_oid "$i")/g" >>"$script"
|
||||
done
|
||||
|
@ -52,8 +52,8 @@ test_expect_success setup '
|
|||
two sha1:525b7fb068d59950d185a8779dc957c77eed73ba
|
||||
two sha256:3b21de3440cd38c2a9e9b464adb923f7054949ed4c918e1a0ac4c95cd52774db
|
||||
|
||||
master2 sha1:754b754407bf032e9a2f9d5a9ad05ca79a6b228f
|
||||
master2 sha256:6c7abaea8a6d8ef4d89877e68462758dc6774690fbbbb0e6d7dd57415c9abde0
|
||||
topic_2 sha1:754b754407bf032e9a2f9d5a9ad05ca79a6b228f
|
||||
topic_2 sha256:6c7abaea8a6d8ef4d89877e68462758dc6774690fbbbb0e6d7dd57415c9abde0
|
||||
|
||||
two2 sha1:6134ee8f857693b96ff1cc98d3e2fd62b199e5a8
|
||||
two2 sha256:87a2d3ee29c83a3dc7afd41c0606b11f67603120b910a7be7840accdc18344d4
|
||||
|
|
|
@ -41,20 +41,20 @@ test_expect_success 'push -u --dry-run master:otherX' '
|
|||
check_config master upstream refs/heads/other
|
||||
'
|
||||
|
||||
test_expect_success 'push -u master2:master2' '
|
||||
git branch master2 &&
|
||||
git push -u upstream master2:master2 &&
|
||||
check_config master2 upstream refs/heads/master2
|
||||
test_expect_success 'push -u topic_2:topic_2' '
|
||||
git branch topic_2 &&
|
||||
git push -u upstream topic_2:topic_2 &&
|
||||
check_config topic_2 upstream refs/heads/topic_2
|
||||
'
|
||||
|
||||
test_expect_success 'push -u master2:other2' '
|
||||
git push -u upstream master2:other2 &&
|
||||
check_config master2 upstream refs/heads/other2
|
||||
test_expect_success 'push -u topic_2:other2' '
|
||||
git push -u upstream topic_2:other2 &&
|
||||
check_config topic_2 upstream refs/heads/other2
|
||||
'
|
||||
|
||||
test_expect_success 'push -u :master2' '
|
||||
git push -u upstream :master2 &&
|
||||
check_config master2 upstream refs/heads/other2
|
||||
test_expect_success 'push -u :topic_2' '
|
||||
git push -u upstream :topic_2 &&
|
||||
check_config topic_2 upstream refs/heads/other2
|
||||
'
|
||||
|
||||
test_expect_success 'push -u --all' '
|
||||
|
|
|
@ -32,11 +32,11 @@ test_expect_success 'setup' '
|
|||
git checkout -b someref master &&
|
||||
commit some &&
|
||||
git checkout master &&
|
||||
commit master2 &&
|
||||
commit topic_2 &&
|
||||
git tag foo/bar master &&
|
||||
commit master3 &&
|
||||
commit topic_3 &&
|
||||
git update-ref refs/remotes/foo/baz master &&
|
||||
commit master4 &&
|
||||
commit topic_4 &&
|
||||
git update-ref refs/remotes/upstream/one subspace/one &&
|
||||
git update-ref refs/remotes/upstream/two subspace/two &&
|
||||
git update-ref refs/remotes/upstream/x subspace-x &&
|
||||
|
|
|
@ -264,25 +264,25 @@ test_expect_success 'fail to track annotated tags' '
|
|||
test_expect_success '--set-upstream-to does not change branch' '
|
||||
git branch from-master master &&
|
||||
git branch --set-upstream-to master from-master &&
|
||||
git branch from-master2 master &&
|
||||
test_must_fail git config branch.from-master2.merge > actual &&
|
||||
git rev-list from-master2 &&
|
||||
git update-ref refs/heads/from-master2 from-master2^ &&
|
||||
git rev-parse from-master2 >expect2 &&
|
||||
git branch --set-upstream-to master from-master2 &&
|
||||
git branch from-topic_2 master &&
|
||||
test_must_fail git config branch.from-topic_2.merge > actual &&
|
||||
git rev-list from-topic_2 &&
|
||||
git update-ref refs/heads/from-topic_2 from-topic_2^ &&
|
||||
git rev-parse from-topic_2 >expect2 &&
|
||||
git branch --set-upstream-to master from-topic_2 &&
|
||||
git config branch.from-master.merge > actual &&
|
||||
git rev-parse from-master2 >actual2 &&
|
||||
git rev-parse from-topic_2 >actual2 &&
|
||||
grep -q "^refs/heads/master$" actual &&
|
||||
cmp expect2 actual2
|
||||
'
|
||||
|
||||
test_expect_success '--set-upstream-to @{-1}' '
|
||||
git checkout follower &&
|
||||
git checkout from-master2 &&
|
||||
git config branch.from-master2.merge > expect2 &&
|
||||
git checkout from-topic_2 &&
|
||||
git config branch.from-topic_2.merge > expect2 &&
|
||||
git branch --set-upstream-to @{-1} from-master &&
|
||||
git config branch.from-master.merge > actual &&
|
||||
git config branch.from-master2.merge > actual2 &&
|
||||
git config branch.from-topic_2.merge > actual2 &&
|
||||
git branch --set-upstream-to follower from-master &&
|
||||
git config branch.from-master.merge > expect &&
|
||||
test_cmp expect2 actual2 &&
|
||||
|
|
|
@ -94,10 +94,10 @@ test_expect_success 'merge update' '
|
|||
echo git-gui2 > git-gui.sh &&
|
||||
o3=$(git hash-object git-gui.sh) &&
|
||||
git add git-gui.sh &&
|
||||
git checkout -b master2 &&
|
||||
git checkout -b topic_2 &&
|
||||
git commit -m "update git-gui" &&
|
||||
cd ../git &&
|
||||
git pull -s subtree gui master2 &&
|
||||
git pull -s subtree gui topic_2 &&
|
||||
git ls-files -s >actual &&
|
||||
(
|
||||
echo "100644 $o3 0 git-gui/git-gui.sh" &&
|
||||
|
@ -109,7 +109,7 @@ test_expect_success 'merge update' '
|
|||
test_expect_success 'initial ambiguous subtree' '
|
||||
cd ../git &&
|
||||
git reset --hard master &&
|
||||
git checkout -b master2 &&
|
||||
git checkout -b topic_2 &&
|
||||
git merge -s ours --no-commit gui/master &&
|
||||
git read-tree --prefix=git-gui2/ -u gui/master &&
|
||||
git commit -m "Merge git-gui2 as our subdirectory" &&
|
||||
|
@ -125,8 +125,8 @@ test_expect_success 'initial ambiguous subtree' '
|
|||
|
||||
test_expect_success 'merge using explicit' '
|
||||
cd ../git &&
|
||||
git reset --hard master2 &&
|
||||
git pull -Xsubtree=git-gui gui master2 &&
|
||||
git reset --hard topic_2 &&
|
||||
git pull -Xsubtree=git-gui gui topic_2 &&
|
||||
git ls-files -s >actual &&
|
||||
(
|
||||
echo "100644 $o3 0 git-gui/git-gui.sh" &&
|
||||
|
@ -138,8 +138,8 @@ test_expect_success 'merge using explicit' '
|
|||
|
||||
test_expect_success 'merge2 using explicit' '
|
||||
cd ../git &&
|
||||
git reset --hard master2 &&
|
||||
git pull -Xsubtree=git-gui2 gui master2 &&
|
||||
git reset --hard topic_2 &&
|
||||
git pull -Xsubtree=git-gui2 gui topic_2 &&
|
||||
git ls-files -s >actual &&
|
||||
(
|
||||
echo "100644 $o1 0 git-gui/git-gui.sh" &&
|
||||
|
|
Загрузка…
Ссылка в новой задаче