diff options
Diffstat (limited to 't')
378 files changed, 7369 insertions, 4184 deletions
diff --git a/t/annotate-tests.sh b/t/annotate-tests.sh index 3aee61d2cc..ee5d2d4cf8 100644 --- a/t/annotate-tests.sh +++ b/t/annotate-tests.sh @@ -95,7 +95,7 @@ test_expect_success 'blame 2 authors' ' ' test_expect_success 'setup B1 lines (branch1)' ' - git checkout -b branch1 master && + git checkout -b branch1 main && echo "3A slow green fox jumps into the" >>file && echo "well." >>file && GIT_AUTHOR_NAME="B1" GIT_AUTHOR_EMAIL="B1@test.git" \ @@ -107,7 +107,7 @@ test_expect_success 'blame 2 authors + 1 branch1 author' ' ' test_expect_success 'setup B2 lines (branch2)' ' - git checkout -b branch2 master && + git checkout -b branch2 main && sed -e "s/2A quick brown/4A quick brown lazy dog/" <file >file.new && mv file.new file && GIT_AUTHOR_NAME="B2" GIT_AUTHOR_EMAIL="B2@test.git" \ @@ -131,11 +131,11 @@ test_expect_success 'blame --first-parent blames merge for branch1' ' ' test_expect_success 'blame ancestor' ' - check_count -h master A 2 B 2 + check_count -h main A 2 B 2 ' test_expect_success 'blame great-ancestor' ' - check_count -h master^ A 2 + check_count -h main^ A 2 ' test_expect_success 'setup evil merge' ' diff --git a/t/helper/test-ref-store.c b/t/helper/test-ref-store.c index 759e69dc54..bba5f841c6 100644 --- a/t/helper/test-ref-store.c +++ b/t/helper/test-ref-store.c @@ -72,18 +72,6 @@ static int cmd_pack_refs(struct ref_store *refs, const char **argv) return refs_pack_refs(refs, flags); } -static int cmd_peel_ref(struct ref_store *refs, const char **argv) -{ - const char *refname = notnull(*argv++, "refname"); - struct object_id oid; - int ret; - - ret = refs_peel_ref(refs, refname, &oid); - if (!ret) - puts(oid_to_hex(&oid)); - return ret; -} - static int cmd_create_symref(struct ref_store *refs, const char **argv) { const char *refname = notnull(*argv++, "refname"); @@ -255,7 +243,6 @@ struct command { static struct command commands[] = { { "pack-refs", cmd_pack_refs }, - { "peel-ref", cmd_peel_ref }, { "create-symref", cmd_create_symref }, { "delete-refs", cmd_delete_refs }, { "rename-ref", cmd_rename_ref }, diff --git a/t/lib-cvs.sh b/t/lib-cvs.sh index 9b2bcfb1b0..32b3473379 100644 --- a/t/lib-cvs.sh +++ b/t/lib-cvs.sh @@ -36,7 +36,7 @@ setup_cvs_test_repository () { test_cvs_co () { # Usage: test_cvs_co BRANCH_NAME rm -rf module-cvs-"$1" - if [ "$1" = "master" ] + if [ "$1" = "main" ] then $CVS co -P -d module-cvs-"$1" -A module else diff --git a/t/lib-submodule-update.sh b/t/lib-submodule-update.sh index bd3fa3c6da..4b714e9308 100644 --- a/t/lib-submodule-update.sh +++ b/t/lib-submodule-update.sh @@ -316,14 +316,7 @@ test_submodule_switch_common () { command="$1" ######################### Appearing submodule ######################### # Switching to a commit letting a submodule appear creates empty dir ... - if test "$KNOWN_FAILURE_STASH_DOES_IGNORE_SUBMODULE_CHANGES" = 1 - then - # Restoring stash fails to restore submodule index entry - RESULT="failure" - else - RESULT="success" - fi - test_expect_$RESULT "$command: added submodule creates empty directory" ' + test_expect_success "$command: added submodule creates empty directory" ' prolog && reset_work_tree_to no_submodule && ( @@ -337,6 +330,13 @@ test_submodule_switch_common () { ) ' # ... and doesn't care if it already exists. + if test "$KNOWN_FAILURE_STASH_DOES_IGNORE_SUBMODULE_CHANGES" = 1 + then + # Restoring stash fails to restore submodule index entry + RESULT="failure" + else + RESULT="success" + fi test_expect_$RESULT "$command: added submodule leaves existing empty directory alone" ' prolog && reset_work_tree_to no_submodule && diff --git a/t/oid-info/README b/t/oid-info/README index 27f843fc00..ca56a74b1e 100644 --- a/t/oid-info/README +++ b/t/oid-info/README @@ -5,7 +5,7 @@ starting with `#` are ignored. The key and value are separated by whitespace (specifically, those whitespace in the default `$IFS`). The key consists only of shell identifier characters, and the value consists of a hash algorithm, colon, and value. The hash algorithm also consists only of shell identifier -characters; it should match the value in sha1-file.c. +characters; it should match the value in object-file.c. For example, the following lines map the key "rawsz" to "20" if SHA-1 is in use and to "32" if SHA-256 is in use: diff --git a/t/perf/p7519-fsmonitor.sh b/t/perf/p7519-fsmonitor.sh index 9b43342806..1e20a184c7 100755 --- a/t/perf/p7519-fsmonitor.sh +++ b/t/perf/p7519-fsmonitor.sh @@ -129,7 +129,12 @@ setup_for_fsmonitor() { git config core.fsmonitor "$INTEGRATION_SCRIPT" && git update-index --fsmonitor 2>error && - test_must_be_empty error # ensure no silent error + if test_have_prereq WATCHMAN + then + test_must_be_empty error # ensure no silent error + else + grep "Empty last update token" error + fi } test_perf_w_drop_caches () { diff --git a/t/perf/perf-lib.sh b/t/perf/perf-lib.sh index 22d727cef8..e385c6896f 100644 --- a/t/perf/perf-lib.sh +++ b/t/perf/perf-lib.sh @@ -147,10 +147,7 @@ test_run_perf_ () { "$GTIME" -f "%E %U %S" -o test_time.$i "$SHELL" -c ' . '"$TEST_DIRECTORY"/test-lib-functions.sh' test_export () { - [ $# != 0 ] || return 0 - test_export_="$test_export_ $1" - shift - test_export "$@" + test_export_="$test_export_ $*" } '"$1"' ret=$? diff --git a/t/t0002-gitfile.sh b/t/t0002-gitfile.sh index 960ed150cb..8440e6add1 100755 --- a/t/t0002-gitfile.sh +++ b/t/t0002-gitfile.sh @@ -4,6 +4,9 @@ test_description='.git file Verify that plumbing commands work when .git is a file ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh objpath() { @@ -96,7 +99,7 @@ test_expect_success 'enter_repo non-strict mode' ' git ls-remote enter_repo >actual && cat >expected <<-EOF && $head HEAD - $head refs/heads/master + $head refs/heads/main $head refs/tags/foo EOF test_cmp expected actual @@ -111,7 +114,7 @@ test_expect_success 'enter_repo linked checkout' ' git ls-remote foo >actual && cat >expected <<-EOF && $head HEAD - $head refs/heads/master + $head refs/heads/main $head refs/tags/foo EOF test_cmp expected actual @@ -122,7 +125,7 @@ test_expect_success 'enter_repo strict mode' ' git ls-remote --upload-pack="git upload-pack --strict" foo/.git >actual && cat >expected <<-EOF && $head HEAD - $head refs/heads/master + $head refs/heads/main $head refs/tags/foo EOF test_cmp expected actual diff --git a/t/t0020-crlf.sh b/t/t0020-crlf.sh index b63ba62e5d..375cf94398 100755 --- a/t/t0020-crlf.sh +++ b/t/t0020-crlf.sh @@ -2,6 +2,9 @@ test_description='CRLF conversion' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh has_cr() { @@ -318,8 +321,8 @@ test_expect_success 'checkout with existing .gitattributes' ' git add .gitattributes .file && git commit -m second && - git checkout master~1 && - git checkout master && + git checkout main~1 && + git checkout main && test "$(git diff-files --raw)" = "" ' @@ -331,8 +334,8 @@ test_expect_success 'checkout when deleting .gitattributes' ' git add .file2 && git commit -m third && - git checkout master~1 && - git checkout master && + git checkout main~1 && + git checkout main && has_cr .file2 ' diff --git a/t/t0021-conversion.sh b/t/t0021-conversion.sh index f6deaf498b..e4c4de5c74 100755 --- a/t/t0021-conversion.sh +++ b/t/t0021-conversion.sh @@ -2,6 +2,9 @@ test_description='blob conversion via gitattributes' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh TEST_ROOT="$PWD" @@ -378,8 +381,8 @@ test_expect_success PERL 'required process filter should filter data' ' test_cmp_count expected.log debug.log && git commit -m "test commit 2" && - MASTER=$(git rev-parse --verify master) && - META="ref=refs/heads/master treeish=$MASTER" && + MAIN=$(git rev-parse --verify main) && + META="ref=refs/heads/main treeish=$MAIN" && rm -f test2.r "testsubdir/test3 '\''sq'\'',\$x=.r" && filter_git checkout --quiet --no-progress . && @@ -404,7 +407,7 @@ test_expect_success PERL 'required process filter should filter data' ' EOF test_cmp_exclude_clean expected.log debug.log && - filter_git checkout --quiet --no-progress master && + filter_git checkout --quiet --no-progress main && cat >expected.log <<-EOF && START init handshake complete @@ -436,15 +439,15 @@ test_expect_success PERL 'required process filter should filter data for various M3=$(git hash-object "testsubdir/test3 '\''sq'\'',\$x=.r") && EMPTY=$(git hash-object /dev/null) && - MASTER=$(git rev-parse --verify master) && + MAIN=$(git rev-parse --verify main) && cp "$TEST_ROOT/test.o" test5.r && git add test5.r && git commit -m "test commit 3" && git checkout empty-branch && - filter_git rebase --onto empty-branch master^^ master && - MASTER2=$(git rev-parse --verify master) && - META="ref=refs/heads/master treeish=$MASTER2" && + filter_git rebase --onto empty-branch main^^ main && + MAIN2=$(git rev-parse --verify main) && + META="ref=refs/heads/main treeish=$MAIN2" && cat >expected.log <<-EOF && START init handshake complete @@ -458,8 +461,8 @@ test_expect_success PERL 'required process filter should filter data for various test_cmp_exclude_clean expected.log debug.log && git reset --hard empty-branch && - filter_git reset --hard $MASTER && - META="treeish=$MASTER" && + filter_git reset --hard $MAIN && + META="treeish=$MAIN" && cat >expected.log <<-EOF && START init handshake complete @@ -471,10 +474,10 @@ test_expect_success PERL 'required process filter should filter data for various EOF test_cmp_exclude_clean expected.log debug.log && - git branch old-master $MASTER && + git branch old-main $MAIN && git reset --hard empty-branch && - filter_git reset --hard old-master && - META="ref=refs/heads/old-master treeish=$MASTER" && + filter_git reset --hard old-main && + META="ref=refs/heads/old-main treeish=$MAIN" && cat >expected.log <<-EOF && START init handshake complete @@ -487,9 +490,9 @@ test_expect_success PERL 'required process filter should filter data for various test_cmp_exclude_clean expected.log debug.log && git checkout -b merge empty-branch && - git branch -f master $MASTER2 && - filter_git merge master && - META="treeish=$MASTER2" && + git branch -f main $MAIN2 && + filter_git merge main && + META="treeish=$MAIN2" && cat >expected.log <<-EOF && START init handshake complete @@ -502,8 +505,8 @@ test_expect_success PERL 'required process filter should filter data for various EOF test_cmp_exclude_clean expected.log debug.log && - filter_git archive master >/dev/null && - META="ref=refs/heads/master treeish=$MASTER2" && + filter_git archive main >/dev/null && + META="ref=refs/heads/main treeish=$MAIN2" && cat >expected.log <<-EOF && START init handshake complete @@ -516,7 +519,7 @@ test_expect_success PERL 'required process filter should filter data for various EOF test_cmp_exclude_clean expected.log debug.log && - TREE="$(git rev-parse $MASTER2^{tree})" && + TREE="$(git rev-parse $MAIN2^{tree})" && filter_git archive $TREE >/dev/null && META="treeish=$TREE" && cat >expected.log <<-EOF && @@ -856,8 +859,8 @@ test_expect_success PERL 'delayed checkout in process filter' ' ) && S=$(test_file_size "$TEST_ROOT/test.o") && - PM="ref=refs/heads/master treeish=$(git -C repo rev-parse --verify master) " && - M="${PM}blob=$(git -C repo rev-parse --verify master:test.a)" && + PM="ref=refs/heads/main treeish=$(git -C repo rev-parse --verify main) " && + M="${PM}blob=$(git -C repo rev-parse --verify main:test.a)" && cat >a.exp <<-EOF && START init handshake complete diff --git a/t/t0027-auto-crlf.sh b/t/t0027-auto-crlf.sh index 9fcd56fab3..51f74a3ddf 100755 --- a/t/t0027-auto-crlf.sh +++ b/t/t0027-auto-crlf.sh @@ -368,9 +368,9 @@ test_expect_success 'ls-files --eol -o Text/Binary' ' test_cmp expect actual ' -test_expect_success 'setup master' ' +test_expect_success 'setup main' ' echo >.gitattributes && - git checkout -b master && + git checkout -b main && git add .gitattributes && git commit -m "add .gitattributes" . && printf "\$Id: 0000000000000000000000000000000000000000 \$\nLINEONE\nLINETWO\nLINETHREE" >LF && diff --git a/t/t0028-working-tree-encoding.sh b/t/t0028-working-tree-encoding.sh index bfc4fb9af5..f970a9806b 100755 --- a/t/t0028-working-tree-encoding.sh +++ b/t/t0028-working-tree-encoding.sh @@ -2,6 +2,9 @@ test_description='working-tree-encoding conversion via gitattributes' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh GIT_TRACE_WORKING_TREE_ENCODING=1 && export GIT_TRACE_WORKING_TREE_ENCODING @@ -215,7 +218,7 @@ test_expect_success 'error if encoding round trip is not the same during refresh TEST_HASH=$(git hash-object --no-filters -w nonsense.utf16le) && git update-index --add --cacheinfo 100644 $TEST_HASH nonsense.utf16le && COMMIT=$(git commit-tree -p $(git rev-parse HEAD) -m "plain commit" $(git write-tree)) && - git update-ref refs/heads/master $COMMIT && + git update-ref refs/heads/main $COMMIT && test_must_fail git checkout HEAD^ 2>err.out && test_i18ngrep "error: .* overwritten by checkout:" err.out @@ -231,7 +234,7 @@ test_expect_success 'error if encoding garbage is already in Git' ' TEST_HASH=$(git hash-object --no-filters -w nonsense.utf16) && git update-index --add --cacheinfo 100644 $TEST_HASH nonsense.utf16 && COMMIT=$(git commit-tree -p $(git rev-parse HEAD) -m "plain commit" $(git write-tree)) && - git update-ref refs/heads/master $COMMIT && + git update-ref refs/heads/main $COMMIT && git diff 2>err.out && test_i18ngrep "error: BOM is required" err.out diff --git a/t/t0041-usage.sh b/t/t0041-usage.sh index 5b927b76fe..c4fc34eb18 100755 --- a/t/t0041-usage.sh +++ b/t/t0041-usage.sh @@ -2,6 +2,9 @@ test_description='Test commands behavior when given invalid argument value' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup ' ' @@ -41,8 +44,8 @@ test_expect_success 'tag usage error' ' ' test_expect_success 'branch --contains <existent_commit>' ' - git branch --contains "master" >actual 2>actual.err && - test_i18ngrep "master" actual && + git branch --contains "main" >actual 2>actual.err && + test_i18ngrep "main" actual && test_line_count = 0 actual.err ' @@ -54,7 +57,7 @@ test_expect_success 'branch --contains <inexistent_commit>' ' ' test_expect_success 'branch --no-contains <existent_commit>' ' - git branch --no-contains "master" >actual 2>actual.err && + git branch --no-contains "main" >actual 2>actual.err && test_line_count = 0 actual && test_line_count = 0 actual.err ' @@ -73,7 +76,7 @@ test_expect_success 'branch usage error' ' ' test_expect_success 'for-each-ref --contains <existent_object>' ' - git for-each-ref --contains "master" >actual 2>actual.err && + git for-each-ref --contains "main" >actual 2>actual.err && test_line_count = 2 actual && test_line_count = 0 actual.err ' @@ -86,7 +89,7 @@ test_expect_success 'for-each-ref --contains <inexistent_object>' ' ' test_expect_success 'for-each-ref --no-contains <existent_object>' ' - git for-each-ref --no-contains "master" >actual 2>actual.err && + git for-each-ref --no-contains "main" >actual 2>actual.err && test_line_count = 0 actual && test_line_count = 0 actual.err ' diff --git a/t/t0050-filesystem.sh b/t/t0050-filesystem.sh index 608673fb77..afc343cf9b 100755 --- a/t/t0050-filesystem.sh +++ b/t/t0050-filesystem.sh @@ -2,6 +2,9 @@ test_description='Various filesystem issues' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh auml=$(printf '\303\244') @@ -65,7 +68,7 @@ test_expect_success "setup case tests" ' git mv camelcase tmp && git mv tmp CamelCase && git commit -m "rename" && - git checkout -f master + git checkout -f main ' test_expect_success 'rename (case change)' ' @@ -118,7 +121,7 @@ test_expect_success "setup unicode normalization tests" ' git mv $aumlcdiar tmp && git mv tmp "$auml" && git commit -m rename && - git checkout -f master + git checkout -f main ' $test_unicode 'rename (silent unicode normalization)' ' @@ -147,7 +150,7 @@ test_expect_success CASE_INSENSITIVE_FS 'checkout with no pathspec and a case in git add gitweb && git commit -m "add gitweb/subdir/file" && - git checkout master + git checkout main ) ' diff --git a/t/t0060-path-utils.sh b/t/t0060-path-utils.sh index 56db5c8aba..0ff06b5d1b 100755 --- a/t/t0060-path-utils.sh +++ b/t/t0060-path-utils.sh @@ -312,8 +312,8 @@ test_git_path GIT_COMMON_DIR=bar info/sparse-checkout .git/info/sparse-check test_git_path GIT_COMMON_DIR=bar info//sparse-checkout .git/info//sparse-checkout test_git_path GIT_COMMON_DIR=bar remotes/bar bar/remotes/bar test_git_path GIT_COMMON_DIR=bar branches/bar bar/branches/bar -test_git_path GIT_COMMON_DIR=bar logs/refs/heads/master bar/logs/refs/heads/master -test_git_path GIT_COMMON_DIR=bar refs/heads/master bar/refs/heads/master +test_git_path GIT_COMMON_DIR=bar logs/refs/heads/main bar/logs/refs/heads/main +test_git_path GIT_COMMON_DIR=bar refs/heads/main bar/refs/heads/main test_git_path GIT_COMMON_DIR=bar refs/bisect/foo .git/refs/bisect/foo test_git_path GIT_COMMON_DIR=bar hooks/me bar/hooks/me test_git_path GIT_COMMON_DIR=bar config bar/config diff --git a/t/t0068-for-each-repo.sh b/t/t0068-for-each-repo.sh index 136b4ec839..4675e85251 100755 --- a/t/t0068-for-each-repo.sh +++ b/t/t0068-for-each-repo.sh @@ -27,4 +27,10 @@ test_expect_success 'run based on configured value' ' grep again message ' +test_expect_success 'do nothing on empty config' ' + # the whole thing would fail if for-each-ref iterated even + # once, because "git help --no-such-option" would fail + git for-each-repo --config=bogus.config -- help --no-such-option +' + test_done diff --git a/t/t0100-previous.sh b/t/t0100-previous.sh index 58c0b7e9b6..69beb59f62 100755 --- a/t/t0100-previous.sh +++ b/t/t0100-previous.sh @@ -2,13 +2,16 @@ test_description='previous branch syntax @{-n}' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'branch -d @{-1}' ' test_commit A && git checkout -b junk && git checkout - && - test "$(git symbolic-ref HEAD)" = refs/heads/master && + test "$(git symbolic-ref HEAD)" = refs/heads/main && git branch -d @{-1} && test_must_fail git rev-parse --verify refs/heads/junk ' @@ -17,9 +20,9 @@ test_expect_success 'branch -d @{-12} when there is not enough switches yet' ' git reflog expire --expire=now && git checkout -b junk2 && git checkout - && - test "$(git symbolic-ref HEAD)" = refs/heads/master && + test "$(git symbolic-ref HEAD)" = refs/heads/main && test_must_fail git branch -d @{-12} && - git rev-parse --verify refs/heads/master + git rev-parse --verify refs/heads/main ' test_expect_success 'merge @{-1}' ' @@ -28,19 +31,19 @@ test_expect_success 'merge @{-1}' ' git checkout A && test_commit C && test_commit D && - git branch -f master B && + git branch -f main B && git branch -f other && git checkout other && - git checkout master && + git checkout main && git merge @{-1} && git cat-file commit HEAD | grep "Merge branch '\''other'\''" ' test_expect_success 'merge @{-1}~1' ' - git checkout master && + git checkout main && git reset --hard B && git checkout other && - git checkout master && + git checkout main && git merge @{-1}~1 && git cat-file commit HEAD >actual && grep "Merge branch '\''other'\''" actual @@ -48,11 +51,11 @@ test_expect_success 'merge @{-1}~1' ' test_expect_success 'merge @{-100} before checking out that many branches yet' ' git reflog expire --expire=now && - git checkout -f master && + git checkout -f main && git reset --hard B && git branch -f other C && git checkout other && - git checkout master && + git checkout main && test_must_fail git merge @{-100} ' diff --git a/t/t1004-read-tree-m-u-wf.sh b/t/t1004-read-tree-m-u-wf.sh index 181956b241..11bf10424f 100755 --- a/t/t1004-read-tree-m-u-wf.sh +++ b/t/t1004-read-tree-m-u-wf.sh @@ -2,6 +2,9 @@ test_description='read-tree -m -u checks working tree files' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-read-tree.sh @@ -20,17 +23,17 @@ test_expect_success 'two-way setup' ' git branch side && git tag -f branch-point && - echo file2 is not tracked on the master branch anymore && + echo file2 is not tracked on the main branch anymore && rm -f file2 subdir/file2 && git update-index --remove file2 subdir/file2 && - git commit -a -m "master removes file2 and subdir/file2" + git commit -a -m "main removes file2 and subdir/file2" ' test_expect_success 'two-way not clobbering' ' - echo >file2 master creates untracked file2 && - echo >subdir/file2 master creates untracked subdir/file2 && - if err=$(read_tree_u_must_succeed -m -u master side 2>&1) + echo >file2 main creates untracked file2 && + echo >subdir/file2 main creates untracked subdir/file2 && + if err=$(read_tree_u_must_succeed -m -u main side 2>&1) then echo should have complained false @@ -43,7 +46,7 @@ echo file2 >.gitignore test_expect_success 'two-way with incorrect --exclude-per-directory (1)' ' - if err=$(read_tree_u_must_succeed -m --exclude-per-directory=.gitignore master side 2>&1) + if err=$(read_tree_u_must_succeed -m --exclude-per-directory=.gitignore main side 2>&1) then echo should have complained false @@ -54,7 +57,7 @@ test_expect_success 'two-way with incorrect --exclude-per-directory (1)' ' test_expect_success 'two-way with incorrect --exclude-per-directory (2)' ' - if err=$(read_tree_u_must_succeed -m -u --exclude-per-directory=foo --exclude-per-directory=.gitignore master side 2>&1) + if err=$(read_tree_u_must_succeed -m -u --exclude-per-directory=foo --exclude-per-directory=.gitignore main side 2>&1) then echo should have complained false @@ -65,7 +68,7 @@ test_expect_success 'two-way with incorrect --exclude-per-directory (2)' ' test_expect_success 'two-way clobbering a ignored file' ' - read_tree_u_must_succeed -m -u --exclude-per-directory=.gitignore master side + read_tree_u_must_succeed -m -u --exclude-per-directory=.gitignore main side ' rm -f .gitignore @@ -81,21 +84,21 @@ test_expect_success 'three-way not complaining on an untracked path in both' ' git update-index --add file3 subdir/file3 && git commit -a -m "side adds file3 and removes file2" && - git checkout master && - echo >file2 file two is untracked on the master side && - echo >subdir/file2 file two is untracked on the master side && + git checkout main && + echo >file2 file two is untracked on the main side && + echo >subdir/file2 file two is untracked on the main side && - read_tree_u_must_succeed -m -u branch-point master side + read_tree_u_must_succeed -m -u branch-point main side ' test_expect_success 'three-way not clobbering a working tree file' ' git reset --hard && rm -f file2 subdir/file2 file3 subdir/file3 && - git checkout master && - echo >file3 file three created in master, untracked && - echo >subdir/file3 file three created in master, untracked && - if err=$(read_tree_u_must_succeed -m -u branch-point master side 2>&1) + git checkout main && + echo >file3 file three created in main, untracked && + echo >subdir/file3 file three created in main, untracked && + if err=$(read_tree_u_must_succeed -m -u branch-point main side 2>&1) then echo should have complained false @@ -110,11 +113,11 @@ test_expect_success 'three-way not complaining on an untracked file' ' git reset --hard && rm -f file2 subdir/file2 file3 subdir/file3 && - git checkout master && - echo >file3 file three created in master, untracked && - echo >subdir/file3 file three created in master, untracked && + git checkout main && + echo >file3 file three created in main, untracked && + echo >subdir/file3 file three created in main, untracked && - read_tree_u_must_succeed -m -u --exclude-per-directory=.gitignore branch-point master side + read_tree_u_must_succeed -m -u --exclude-per-directory=.gitignore branch-point main side ' test_expect_success '3-way not overwriting local changes (setup)' ' diff --git a/t/t1006-cat-file.sh b/t/t1006-cat-file.sh index 2f501d2dc9..5d2dc99b74 100755 --- a/t/t1006-cat-file.sh +++ b/t/t1006-cat-file.sh @@ -166,7 +166,7 @@ tag_content="$tag_header_without_timestamp 0000000000 +0000 $tag_description" -tag_sha1=$(echo_without_newline "$tag_content" | git mktag) +tag_sha1=$(echo_without_newline "$tag_content" | git hash-object -t tag --stdin -w) tag_size=$(strlen "$tag_content") run_tests 'tag' $tag_sha1 $tag_size "$tag_content" "$tag_content" 1 diff --git a/t/t1008-read-tree-overlay.sh b/t/t1008-read-tree-overlay.sh index cf96016844..4512fb0b6e 100755 --- a/t/t1008-read-tree-overlay.sh +++ b/t/t1008-read-tree-overlay.sh @@ -2,6 +2,9 @@ test_description='test multi-tree read-tree without merging' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-read-tree.sh @@ -22,7 +25,7 @@ test_expect_success setup ' ' test_expect_success 'multi-read' ' - read_tree_must_succeed initial master side && + read_tree_must_succeed initial main side && test_write_lines a b/c >expect && git ls-files >actual && test_cmp expect actual diff --git a/t/t1009-read-tree-new-index.sh b/t/t1009-read-tree-new-index.sh index 59b3aa4bc4..2935f68f8d 100755 --- a/t/t1009-read-tree-new-index.sh +++ b/t/t1009-read-tree-new-index.sh @@ -2,6 +2,9 @@ test_description='test read-tree into a fresh index file' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -12,13 +15,13 @@ test_expect_success setup ' test_expect_success 'non-existent index file' ' rm -f new-index && - GIT_INDEX_FILE=new-index git read-tree master + GIT_INDEX_FILE=new-index git read-tree main ' test_expect_success 'empty index file' ' rm -f new-index && > new-index && - GIT_INDEX_FILE=new-index git read-tree master + GIT_INDEX_FILE=new-index git read-tree main ' test_done diff --git a/t/t1011-read-tree-sparse-checkout.sh b/t/t1011-read-tree-sparse-checkout.sh index 140f459977..dfe9794a74 100755 --- a/t/t1011-read-tree-sparse-checkout.sh +++ b/t/t1011-read-tree-sparse-checkout.sh @@ -2,7 +2,7 @@ test_description='sparse checkout tests -* (tag: removed, master) removed +* (tag: removed, main) removed | D sub/added * (HEAD, tag: top) modified and added | M init.t diff --git a/t/t1021-rerere-in-workdir.sh b/t/t1021-rerere-in-workdir.sh index 301e071ff7..0b892894eb 100755 --- a/t/t1021-rerere-in-workdir.sh +++ b/t/t1021-rerere-in-workdir.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='rerere run in a workdir' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success SYMLINKS setup ' @@ -19,7 +22,7 @@ test_expect_success SYMLINKS setup ' test_tick && git commit -a -m goodbye && - git checkout master + git checkout main ' test_expect_success SYMLINKS 'rerere in workdir' ' diff --git a/t/t1090-sparse-checkout-scope.sh b/t/t1090-sparse-checkout-scope.sh index f35a73dd20..3deb490187 100755 --- a/t/t1090-sparse-checkout-scope.sh +++ b/t/t1090-sparse-checkout-scope.sh @@ -2,6 +2,9 @@ test_description='sparse checkout scope tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -20,18 +23,18 @@ test_expect_success 'create feature branch' ' git commit -m "modification" ' -test_expect_success 'perform sparse checkout of master' ' +test_expect_success 'perform sparse checkout of main' ' git config --local --bool core.sparsecheckout true && echo "!/*" >.git/info/sparse-checkout && echo "/a" >>.git/info/sparse-checkout && echo "/c" >>.git/info/sparse-checkout && - git checkout master && + git checkout main && test_path_is_file a && test_path_is_missing b && test_path_is_file c ' -test_expect_success 'merge feature branch into sparse checkout of master' ' +test_expect_success 'merge feature branch into sparse checkout of main' ' git merge feature && test_path_is_file a && test_path_is_missing b && @@ -39,10 +42,10 @@ test_expect_success 'merge feature branch into sparse checkout of master' ' test "$(cat c)" = "modified" ' -test_expect_success 'return to full checkout of master' ' +test_expect_success 'return to full checkout of main' ' git checkout feature && echo "/*" >.git/info/sparse-checkout && - git checkout master && + git checkout main && test_path_is_file a && test_path_is_file b && test_path_is_file c && diff --git a/t/t1091-sparse-checkout-builtin.sh b/t/t1091-sparse-checkout-builtin.sh index 84acfc48b6..fc64e9ed99 100755 --- a/t/t1091-sparse-checkout-builtin.sh +++ b/t/t1091-sparse-checkout-builtin.sh @@ -2,6 +2,9 @@ test_description='sparse checkout builtin tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh list_files() { @@ -117,7 +120,7 @@ test_expect_success 'interaction with clone --no-checkout (unborn index)' ' test_path_is_missing clone_no_checkout/.git/index && # No branch is checked out until we manually switch to one - git -C clone_no_checkout switch master && + git -C clone_no_checkout switch main && test_path_is_file clone_no_checkout/.git/index && check_files clone_no_checkout a folder1 ' diff --git a/t/t1300-config.sh b/t/t1300-config.sh index 97a04c6cc2..936d72041b 100755 --- a/t/t1300-config.sh +++ b/t/t1300-config.sh @@ -5,6 +5,9 @@ test_description='Test git config in different settings' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'clear default config' ' @@ -12,75 +15,75 @@ test_expect_success 'clear default config' ' ' cat > expect << EOF -[core] +[section] penguin = little blue EOF test_expect_success 'initial' ' - git config core.penguin "little blue" && + git config section.penguin "little blue" && test_cmp expect .git/config ' cat > expect << EOF -[core] +[section] penguin = little blue Movie = BadPhysics EOF test_expect_success 'mixed case' ' - git config Core.Movie BadPhysics && + git config Section.Movie BadPhysics && test_cmp expect .git/config ' cat > expect << EOF -[core] +[section] penguin = little blue Movie = BadPhysics -[Cores] +[Sections] WhatEver = Second EOF test_expect_success 'similar section' ' - git config Cores.WhatEver Second && + git config Sections.WhatEver Second && test_cmp expect .git/config ' cat > expect << EOF -[core] +[section] penguin = little blue Movie = BadPhysics UPPERCASE = true -[Cores] +[Sections] WhatEver = Second EOF test_expect_success 'uppercase section' ' - git config CORE.UPPERCASE true && + git config SECTION.UPPERCASE true && test_cmp expect .git/config ' test_expect_success 'replace with non-match' ' - git config core.penguin kingpin !blue + git config section.penguin kingpin !blue ' test_expect_success 'replace with non-match (actually matching)' ' - git config core.penguin "very blue" !kingpin + git config section.penguin "very blue" !kingpin ' cat > expect << EOF -[core] +[section] penguin = very blue Movie = BadPhysics UPPERCASE = true penguin = kingpin -[Cores] +[Sections] WhatEver = Second EOF test_expect_success 'non-match result' 'test_cmp expect .git/config' test_expect_success 'find mixed-case key by canonical name' ' - test_cmp_config Second cores.whatever + test_cmp_config Second sections.whatever ' test_expect_success 'find mixed-case key by non-canonical name' ' - test_cmp_config Second CoReS.WhAtEvEr + test_cmp_config Second SeCtIoNs.WhAtEvEr ' test_expect_success 'subsections are not canonicalized by git-config' ' @@ -469,7 +472,8 @@ test_expect_success 'new variable inserts into proper section' ' ' test_expect_success 'alternative --file (non-existing file should fail)' ' - test_must_fail git config --file non-existing-config -l + test_must_fail git config --file non-existing-config -l && + test_must_fail git config --file non-existing-config test.xyzzy ' cat > other-config << EOF @@ -506,10 +510,6 @@ test_expect_success 'editing stdin is an error' ' test_expect_success 'refer config from subdirectory' ' mkdir x && - test_cmp_config -C x strasse --get --file ../other-config ein.bahn -' - -test_expect_success 'refer config from subdirectory via --file' ' test_cmp_config -C x strasse --file=../other-config --get ein.bahn ' @@ -1036,11 +1036,6 @@ test_expect_success SYMLINKS 'symlinked configuration' ' test_cmp expect actual ' -test_expect_success 'nonexistent configuration' ' - test_must_fail git config --file=doesnotexist --list && - test_must_fail git config --file=doesnotexist test.xyzzy -' - test_expect_success SYMLINKS 'symlink to nonexistent configuration' ' ln -s doesnotexist linktonada && ln -s linktonada linktolinktonada && @@ -1054,8 +1049,8 @@ test_expect_success 'check split_cmdline return' " echo foo > foo && git add foo && git commit -m 'initial commit' && - git config branch.master.mergeoptions 'echo \"' && - test_must_fail git merge master + git config branch.main.mergeoptions 'echo \"' && + test_must_fail git merge main " test_expect_success 'git -c "key=value" support' ' @@ -1065,12 +1060,12 @@ test_expect_success 'git -c "key=value" support' ' true EOF { - git -c core.name=value config core.name && + git -c section.name=value config section.name && git -c foo.CamelCase=value config foo.camelcase && git -c foo.flag config --bool foo.flag } >actual && test_cmp expect actual && - test_must_fail git -c name=value config core.name + test_must_fail git -c name=value config section.name ' # We just need a type-specifier here that cares about the @@ -1115,7 +1110,7 @@ test_expect_success 'aliases can be CamelCased' ' test_expect_success 'git -c does not split values on equals' ' echo "value with = in it" >expect && - git -c core.foo="value with = in it" config core.foo >actual && + git -c section.foo="value with = in it" config section.foo >actual && test_cmp expect actual ' @@ -1294,6 +1289,58 @@ test_expect_success 'git -c is not confused by empty environment' ' GIT_CONFIG_PARAMETERS="" git -c x.one=1 config --list ' +test_expect_success 'GIT_CONFIG_PARAMETERS handles old-style entries' ' + v="${SQ}key.one=foo${SQ}" && + v="$v ${SQ}key.two=bar${SQ}" && + v="$v ${SQ}key.ambiguous=section.whatever=value${SQ}" && + GIT_CONFIG_PARAMETERS=$v git config --get-regexp "key.*" >actual && + cat >expect <<-EOF && + key.one foo + key.two bar + key.ambiguous section.whatever=value + EOF + test_cmp expect actual +' + +test_expect_success 'GIT_CONFIG_PARAMETERS handles new-style entries' ' + v="${SQ}key.one${SQ}=${SQ}foo${SQ}" && + v="$v ${SQ}key.two${SQ}=${SQ}bar${SQ}" && + v="$v ${SQ}key.ambiguous=section.whatever${SQ}=${SQ}value${SQ}" && + GIT_CONFIG_PARAMETERS=$v git config --get-regexp "key.*" >actual && + cat >expect <<-EOF && + key.one foo + key.two bar + key.ambiguous=section.whatever value + EOF + test_cmp expect actual +' + +test_expect_success 'old and new-style entries can mix' ' + v="${SQ}key.oldone=oldfoo${SQ}" && + v="$v ${SQ}key.newone${SQ}=${SQ}newfoo${SQ}" && + v="$v ${SQ}key.oldtwo=oldbar${SQ}" && + v="$v ${SQ}key.newtwo${SQ}=${SQ}newbar${SQ}" && + GIT_CONFIG_PARAMETERS=$v git config --get-regexp "key.*" >actual && + cat >expect <<-EOF && + key.oldone oldfoo + key.newone newfoo + key.oldtwo oldbar + key.newtwo newbar + EOF + test_cmp expect actual +' + +test_expect_success 'old and new bools with ambiguous subsection' ' + v="${SQ}key.with=equals.oldbool${SQ}" && + v="$v ${SQ}key.with=equals.newbool${SQ}=" && + GIT_CONFIG_PARAMETERS=$v git config --get-regexp "key.*" >actual && + cat >expect <<-EOF && + key.with equals.oldbool + key.with=equals.newbool + EOF + test_cmp expect actual +' + test_expect_success 'detect bogus GIT_CONFIG_PARAMETERS' ' cat >expect <<-\EOF && env.one one @@ -1316,6 +1363,173 @@ test_expect_success 'detect bogus GIT_CONFIG_PARAMETERS' ' git config --get-regexp "env.*" ' +test_expect_success 'git --config-env=key=envvar support' ' + cat >expect <<-\EOF && + value + value + false + EOF + { + ENVVAR=value git --config-env=core.name=ENVVAR config core.name && + ENVVAR=value git --config-env=foo.CamelCase=ENVVAR config foo.camelcase && + ENVVAR= git --config-env=foo.flag=ENVVAR config --bool foo.flag + } >actual && + test_cmp expect actual +' + +test_expect_success 'git --config-env fails with invalid parameters' ' + test_must_fail git --config-env=foo.flag config --bool foo.flag 2>error && + test_i18ngrep "invalid config format: foo.flag" error && + test_must_fail git --config-env=foo.flag= config --bool foo.flag 2>error && + test_i18ngrep "missing environment variable name for configuration ${SQ}foo.flag${SQ}" error && + sane_unset NONEXISTENT && + test_must_fail git --config-env=foo.flag=NONEXISTENT config --bool foo.flag 2>error && + test_i18ngrep "missing environment variable ${SQ}NONEXISTENT${SQ} for configuration ${SQ}foo.flag${SQ}" error +' + +test_expect_success 'git -c and --config-env work together' ' + cat >expect <<-\EOF && + bar.cmd cmd-value + bar.env env-value + EOF + ENVVAR=env-value git \ + -c bar.cmd=cmd-value \ + --config-env=bar.env=ENVVAR \ + config --get-regexp "^bar.*" >actual && + test_cmp expect actual +' + +test_expect_success 'git -c and --config-env override each other' ' + cat >expect <<-\EOF && + env + cmd + EOF + { + ENVVAR=env git -c bar.bar=cmd --config-env=bar.bar=ENVVAR config bar.bar && + ENVVAR=env git --config-env=bar.bar=ENVVAR -c bar.bar=cmd config bar.bar + } >actual && + test_cmp expect actual +' + +test_expect_success '--config-env handles keys with equals' ' + echo value=with=equals >expect && + ENVVAR=value=with=equals git \ + --config-env=section.subsection=with=equals.key=ENVVAR \ + config section.subsection=with=equals.key >actual && + test_cmp expect actual +' + +test_expect_success 'git config handles environment config pairs' ' + GIT_CONFIG_COUNT=2 \ + GIT_CONFIG_KEY_0="pair.one" GIT_CONFIG_VALUE_0="foo" \ + GIT_CONFIG_KEY_1="pair.two" GIT_CONFIG_VALUE_1="bar" \ + git config --get-regexp "pair.*" >actual && + cat >expect <<-EOF && + pair.one foo + pair.two bar + EOF + test_cmp expect actual +' + +test_expect_success 'git config ignores pairs without count' ' + test_must_fail env GIT_CONFIG_KEY_0="pair.one" GIT_CONFIG_VALUE_0="value" \ + git config pair.one 2>error && + test_must_be_empty error +' + +test_expect_success 'git config ignores pairs with zero count' ' + test_must_fail env \ + GIT_CONFIG_COUNT=0 \ + GIT_CONFIG_KEY_0="pair.one" GIT_CONFIG_VALUE_0="value" \ + git config pair.one +' + +test_expect_success 'git config ignores pairs exceeding count' ' + GIT_CONFIG_COUNT=1 \ + GIT_CONFIG_KEY_0="pair.one" GIT_CONFIG_VALUE_0="value" \ + GIT_CONFIG_KEY_1="pair.two" GIT_CONFIG_VALUE_1="value" \ + git config --get-regexp "pair.*" >actual && + cat >expect <<-EOF && + pair.one value + EOF + test_cmp expect actual +' + +test_expect_success 'git config ignores pairs with zero count' ' + test_must_fail env \ + GIT_CONFIG_COUNT=0 GIT_CONFIG_KEY_0="pair.one" GIT_CONFIG_VALUE_0="value" \ + git config pair.one >error && + test_must_be_empty error +' + +test_expect_success 'git config ignores pairs with empty count' ' + test_must_fail env \ + GIT_CONFIG_COUNT= GIT_CONFIG_KEY_0="pair.one" GIT_CONFIG_VALUE_0="value" \ + git config pair.one >error && + test_must_be_empty error +' + +test_expect_success 'git config fails with invalid count' ' + test_must_fail env GIT_CONFIG_COUNT=10a git config --list 2>error && + test_i18ngrep "bogus count" error && + test_must_fail env GIT_CONFIG_COUNT=9999999999999999 git config --list 2>error && + test_i18ngrep "too many entries" error +' + +test_expect_success 'git config fails with missing config key' ' + test_must_fail env GIT_CONFIG_COUNT=1 GIT_CONFIG_VALUE_0="value" \ + git config --list 2>error && + test_i18ngrep "missing config key" error +' + +test_expect_success 'git config fails with missing config value' ' + test_must_fail env GIT_CONFIG_COUNT=1 GIT_CONFIG_KEY_0="pair.one" \ + git config --list 2>error && + test_i18ngrep "missing config value" error +' + +test_expect_success 'git config fails with invalid config pair key' ' + test_must_fail env GIT_CONFIG_COUNT=1 \ + GIT_CONFIG_KEY_0= GIT_CONFIG_VALUE_0=value \ + git config --list && + test_must_fail env GIT_CONFIG_COUNT=1 \ + GIT_CONFIG_KEY_0=missing-section GIT_CONFIG_VALUE_0=value \ + git config --list +' + +test_expect_success 'environment overrides config file' ' + test_when_finished "rm -f .git/config" && + cat >.git/config <<-EOF && + [pair] + one = value + EOF + GIT_CONFIG_COUNT=1 GIT_CONFIG_KEY_0=pair.one GIT_CONFIG_VALUE_0=override \ + git config pair.one >actual && + cat >expect <<-EOF && + override + EOF + test_cmp expect actual +' + +test_expect_success 'GIT_CONFIG_PARAMETERS overrides environment config' ' + GIT_CONFIG_COUNT=1 GIT_CONFIG_KEY_0=pair.one GIT_CONFIG_VALUE_0=value \ + GIT_CONFIG_PARAMETERS="${SQ}pair.one=override${SQ}" \ + git config pair.one >actual && + cat >expect <<-EOF && + override + EOF + test_cmp expect actual +' + +test_expect_success 'command line overrides environment config' ' + GIT_CONFIG_COUNT=1 GIT_CONFIG_KEY_0=pair.one GIT_CONFIG_VALUE_0=value \ + git -c pair.one=override config pair.one >actual && + cat >expect <<-EOF && + override + EOF + test_cmp expect actual +' + test_expect_success 'git config --edit works' ' git config -f tmp test.value no && echo test.value=yes >expect && @@ -1661,9 +1875,11 @@ test_expect_success '--show-origin with --list' ' file:.git/config user.override=local file:.git/config include.path=../include/relative.include file:.git/../include/relative.include user.relative=include + command line: user.environ=true command line: user.cmdline=true EOF - git -c user.cmdline=true config --list --show-origin >output && + GIT_CONFIG_COUNT=1 GIT_CONFIG_KEY_0=user.environ GIT_CONFIG_VALUE_0=true\ + git -c user.cmdline=true config --list --show-origin >output && test_cmp expect output ' @@ -1769,11 +1985,11 @@ test_expect_success '--show-origin blob' ' test_expect_success '--show-origin blob ref' ' cat >expect <<-\EOF && - blob:master:custom.conf user.custom=true + blob:main:custom.conf user.custom=true EOF git add "$CUSTOM_CONFIG_FILE" && git commit -m "new config file" && - git config --blob=master:"$CUSTOM_CONFIG_FILE" --show-origin --list >output && + git config --blob=main:"$CUSTOM_CONFIG_FILE" --show-origin --list >output && test_cmp expect output ' @@ -1846,53 +2062,53 @@ do done cat >.git/config <<-\EOF && -[core] +[section] foo = true number = 10 big = 1M EOF test_expect_success 'identical modern --type specifiers are allowed' ' - test_cmp_config 1048576 --type=int --type=int core.big + test_cmp_config 1048576 --type=int --type=int section.big ' test_expect_success 'identical legacy --type specifiers are allowed' ' - test_cmp_config 1048576 --int --int core.big + test_cmp_config 1048576 --int --int section.big ' test_expect_success 'identical mixed --type specifiers are allowed' ' - test_cmp_config 1048576 --int --type=int core.big + test_cmp_config 1048576 --int --type=int section.big ' test_expect_success 'non-identical modern --type specifiers are not allowed' ' - test_must_fail git config --type=int --type=bool core.big 2>error && + test_must_fail git config --type=int --type=bool section.big 2>error && test_i18ngrep "only one type at a time" error ' test_expect_success 'non-identical legacy --type specifiers are not allowed' ' - test_must_fail git config --int --bool core.big 2>error && + test_must_fail git config --int --bool section.big 2>error && test_i18ngrep "only one type at a time" error ' test_expect_success 'non-identical mixed --type specifiers are not allowed' ' - test_must_fail git config --type=int --bool core.big 2>error && + test_must_fail git config --type=int --bool section.big 2>error && test_i18ngrep "only one type at a time" error ' test_expect_success '--type allows valid type specifiers' ' - test_cmp_config true --type=bool core.foo + test_cmp_config true --type=bool section.foo ' test_expect_success '--no-type unsets type specifiers' ' - test_cmp_config 10 --type=bool --no-type core.number + test_cmp_config 10 --type=bool --no-type section.number ' test_expect_success 'unset type specifiers may be reset to conflicting ones' ' - test_cmp_config 1048576 --type=bool --no-type --type=int core.big + test_cmp_config 1048576 --type=bool --no-type --type=int section.big ' test_expect_success '--type rejects unknown specifiers' ' - test_must_fail git config --type=nonsense core.foo 2>error && + test_must_fail git config --type=nonsense section.foo 2>error && test_i18ngrep "unrecognized --type argument" error ' diff --git a/t/t1301-shared-repo.sh b/t/t1301-shared-repo.sh index 2dc853d1be..ac947bff9f 100755 --- a/t/t1301-shared-repo.sh +++ b/t/t1301-shared-repo.sh @@ -5,6 +5,9 @@ test_description='Test shared repository initialization' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Remove a default ACL from the test dir if possible. @@ -115,13 +118,13 @@ test_expect_success POSIXPERM 'git reflog expire honors core.sharedRepository' ' umask 077 && git config core.sharedRepository group && git reflog expire --all && - actual="$(ls -l .git/logs/refs/heads/master)" && + actual="$(ls -l .git/logs/refs/heads/main)" && case "$actual" in -rw-rw-*) : happy ;; *) - echo Ooops, .git/logs/refs/heads/master is not 0662 [$actual] + echo Ooops, .git/logs/refs/heads/main is not 0662 [$actual] false ;; esac diff --git a/t/t1305-config-include.sh b/t/t1305-config-include.sh index f1e1b289f9..938ca17d78 100755 --- a/t/t1305-config-include.sh +++ b/t/t1305-config-include.sh @@ -312,7 +312,7 @@ test_expect_success SYMLINKS 'conditional include, gitdir matching symlink, icas test_expect_success 'conditional include, onbranch' ' echo "[includeIf \"onbranch:foo-branch\"]path=bar9" >>.git/config && echo "[test]nine=9" >.git/bar9 && - git checkout -b master && + git checkout -b main && test_must_fail git config test.nine && git checkout -b foo-branch && echo 9 >expect && diff --git a/t/t1400-update-ref.sh b/t/t1400-update-ref.sh index 6ee7d216fb..359d8731c8 100755 --- a/t/t1400-update-ref.sh +++ b/t/t1400-update-ref.sh @@ -4,6 +4,9 @@ # test_description='Test git update-ref and basic ref logging' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh Z=$ZERO_OID diff --git a/t/t1402-check-ref-format.sh b/t/t1402-check-ref-format.sh index 98e4a8613b..cabc516ae9 100755 --- a/t/t1402-check-ref-format.sh +++ b/t/t1402-check-ref-format.sh @@ -134,18 +134,18 @@ valid_ref !MINGW "$ref" '--refspec-pattern --allow-onelevel --normalize' test_expect_success "check-ref-format --branch @{-1}" ' T=$(git write-tree) && sha1=$(echo A | git commit-tree $T) && - git update-ref refs/heads/master $sha1 && - git update-ref refs/remotes/origin/master $sha1 && - git checkout master && - git checkout origin/master && - git checkout master && + git update-ref refs/heads/main $sha1 && + git update-ref refs/remotes/origin/main $sha1 && + git checkout main && + git checkout origin/main && + git checkout main && refname=$(git check-ref-format --branch @{-1}) && test "$refname" = "$sha1" && refname2=$(git check-ref-format --branch @{-2}) && - test "$refname2" = master' + test "$refname2" = main' -test_expect_success 'check-ref-format --branch -naster' ' - test_must_fail git check-ref-format --branch -naster >actual && +test_expect_success 'check-ref-format --branch -nain' ' + test_must_fail git check-ref-format --branch -nain >actual && test_must_be_empty actual ' @@ -154,11 +154,11 @@ test_expect_success 'check-ref-format --branch from subdir' ' T=$(git write-tree) && sha1=$(echo A | git commit-tree $T) && - git update-ref refs/heads/master $sha1 && - git update-ref refs/remotes/origin/master $sha1 && - git checkout master && - git checkout origin/master && - git checkout master && + git update-ref refs/heads/main $sha1 && + git update-ref refs/remotes/origin/main $sha1 && + git checkout main && + git checkout origin/main && + git checkout main && refname=$( cd subdir && git check-ref-format --branch @{-1} @@ -171,9 +171,9 @@ test_expect_success 'check-ref-format --branch @{-1} from non-repo' ' test_must_be_empty actual ' -test_expect_success 'check-ref-format --branch master from non-repo' ' - echo master >expect && - nongit git check-ref-format --branch master >actual && +test_expect_success 'check-ref-format --branch main from non-repo' ' + echo main >expect && + nongit git check-ref-format --branch main >actual && test_cmp expect actual ' diff --git a/t/t1403-show-ref.sh b/t/t1403-show-ref.sh index 5d955c3bff..6ce62f878c 100755 --- a/t/t1403-show-ref.sh +++ b/t/t1403-show-ref.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='show-ref' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -9,7 +12,7 @@ test_expect_success setup ' git checkout -b side && test_commit B && git tag -f -a -m "annotated B" B && - git checkout master && + git checkout main && test_commit C && git branch B A^0 ' @@ -92,23 +95,23 @@ test_expect_success 'show-ref -d' ' git show-ref --verify -d refs/tags/A refs/tags/C >actual && test_cmp expect actual && - echo $(git rev-parse refs/heads/master) refs/heads/master >expect && - git show-ref -d master >actual && + echo $(git rev-parse refs/heads/main) refs/heads/main >expect && + git show-ref -d main >actual && test_cmp expect actual && - git show-ref -d heads/master >actual && + git show-ref -d heads/main >actual && test_cmp expect actual && - git show-ref -d refs/heads/master >actual && + git show-ref -d refs/heads/main >actual && test_cmp expect actual && - git show-ref -d --verify refs/heads/master >actual && + git show-ref -d --verify refs/heads/main >actual && test_cmp expect actual && - test_must_fail git show-ref -d --verify master >actual && + test_must_fail git show-ref -d --verify main >actual && test_must_be_empty actual && - test_must_fail git show-ref -d --verify heads/master >actual && + test_must_fail git show-ref -d --verify heads/main >actual && test_must_be_empty actual && test_must_fail git show-ref --verify -d A C >actual && @@ -120,7 +123,7 @@ test_expect_success 'show-ref -d' ' ' test_expect_success 'show-ref --heads, --tags, --head, pattern' ' - for branch in B master side + for branch in B main side do echo $(git rev-parse refs/heads/$branch) refs/heads/$branch done >expect.heads && diff --git a/t/t1405-main-ref-store.sh b/t/t1405-main-ref-store.sh index 74af927fba..a237d9880e 100755 --- a/t/t1405-main-ref-store.sh +++ b/t/t1405-main-ref-store.sh @@ -2,6 +2,9 @@ test_description='test main ref store api' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh RUN="test-tool ref-store main" @@ -14,24 +17,18 @@ test_expect_success 'pack_refs(PACK_REFS_ALL | PACK_REFS_PRUNE)' ' N=`find .git/refs -type f | wc -l` ' -test_expect_success 'peel_ref(new-tag)' ' - git rev-parse HEAD >expected && - git tag -a -m new-tag new-tag HEAD && - $RUN peel-ref refs/tags/new-tag >actual && - test_cmp expected actual -' - -test_expect_success 'create_symref(FOO, refs/heads/master)' ' - $RUN create-symref FOO refs/heads/master nothing && - echo refs/heads/master >expected && +test_expect_success 'create_symref(FOO, refs/heads/main)' ' + $RUN create-symref FOO refs/heads/main nothing && + echo refs/heads/main >expected && git symbolic-ref FOO >actual && test_cmp expected actual ' test_expect_success 'delete_refs(FOO, refs/tags/new-tag)' ' + git tag -a -m new-tag new-tag HEAD && git rev-parse FOO -- && git rev-parse refs/tags/new-tag -- && - m=$(git rev-parse master) && + m=$(git rev-parse main) && REF_NO_DEREF=1 && $RUN delete-refs $REF_NO_DEREF nothing FOO refs/tags/new-tag && test_must_fail git rev-parse --symbolic-full-name FOO && @@ -39,19 +36,19 @@ test_expect_success 'delete_refs(FOO, refs/tags/new-tag)' ' test_must_fail git rev-parse refs/tags/new-tag -- ' -test_expect_success 'rename_refs(master, new-master)' ' - git rev-parse master >expected && - $RUN rename-ref refs/heads/master refs/heads/new-master && - git rev-parse new-master >actual && +test_expect_success 'rename_refs(main, new-main)' ' + git rev-parse main >expected && + $RUN rename-ref refs/heads/main refs/heads/new-main && + git rev-parse new-main >actual && test_cmp expected actual && - test_commit recreate-master + test_commit recreate-main ' test_expect_success 'for_each_ref(refs/heads/)' ' $RUN for-each-ref refs/heads/ | cut -d" " -f 2- >actual && cat >expected <<-\EOF && - master 0x0 - new-master 0x0 + main 0x0 + new-main 0x0 EOF test_cmp expected actual ' @@ -62,23 +59,23 @@ test_expect_success 'for_each_ref() is sorted' ' test_cmp expected actual ' -test_expect_success 'resolve_ref(new-master)' ' - SHA1=`git rev-parse new-master` && - echo "$SHA1 refs/heads/new-master 0x0" >expected && - $RUN resolve-ref refs/heads/new-master 0 >actual && +test_expect_success 'resolve_ref(new-main)' ' + SHA1=`git rev-parse new-main` && + echo "$SHA1 refs/heads/new-main 0x0" >expected && + $RUN resolve-ref refs/heads/new-main 0 >actual && test_cmp expected actual ' -test_expect_success 'verify_ref(new-master)' ' - $RUN verify-ref refs/heads/new-master +test_expect_success 'verify_ref(new-main)' ' + $RUN verify-ref refs/heads/new-main ' test_expect_success 'for_each_reflog()' ' $RUN for-each-reflog | sort -k2 | cut -d" " -f 2- >actual && cat >expected <<-\EOF && HEAD 0x1 - refs/heads/master 0x0 - refs/heads/new-master 0x0 + refs/heads/main 0x0 + refs/heads/new-main 0x0 EOF test_cmp expected actual ' @@ -86,12 +83,12 @@ test_expect_success 'for_each_reflog()' ' test_expect_success 'for_each_reflog_ent()' ' $RUN for-each-reflog-ent HEAD >actual && head -n1 actual | grep one && - tail -n2 actual | head -n1 | grep recreate-master + tail -n2 actual | head -n1 | grep recreate-main ' test_expect_success 'for_each_reflog_ent_reverse()' ' $RUN for-each-reflog-ent-reverse HEAD >actual && - head -n1 actual | grep recreate-master && + head -n1 actual | grep recreate-main && tail -n2 actual | head -n1 | grep one ' diff --git a/t/t1406-submodule-ref-store.sh b/t/t1406-submodule-ref-store.sh index 36b7ef5046..0a87058971 100755 --- a/t/t1406-submodule-ref-store.sh +++ b/t/t1406-submodule-ref-store.sh @@ -2,6 +2,9 @@ test_description='test submodule ref store api' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh RUN="test-tool ref-store submodule:sub" @@ -11,7 +14,8 @@ test_expect_success 'setup' ' ( cd sub && test_commit first && - git checkout -b new-master + git checkout -b new-main && + git tag -a -m new-tag new-tag HEAD ) ' @@ -19,15 +23,8 @@ test_expect_success 'pack_refs() not allowed' ' test_must_fail $RUN pack-refs 3 ' -test_expect_success 'peel_ref(new-tag)' ' - git -C sub rev-parse HEAD >expected && - git -C sub tag -a -m new-tag new-tag HEAD && - $RUN peel-ref refs/tags/new-tag >actual && - test_cmp expected actual -' - test_expect_success 'create_symref() not allowed' ' - test_must_fail $RUN create-symref FOO refs/heads/master nothing + test_must_fail $RUN create-symref FOO refs/heads/main nothing ' test_expect_success 'delete_refs() not allowed' ' @@ -35,14 +32,14 @@ test_expect_success 'delete_refs() not allowed' ' ' test_expect_success 'rename_refs() not allowed' ' - test_must_fail $RUN rename-ref refs/heads/master refs/heads/new-master + test_must_fail $RUN rename-ref refs/heads/main refs/heads/new-main ' test_expect_success 'for_each_ref(refs/heads/)' ' $RUN for-each-ref refs/heads/ | cut -d" " -f 2- >actual && cat >expected <<-\EOF && - master 0x0 - new-master 0x0 + main 0x0 + new-main 0x0 EOF test_cmp expected actual ' @@ -53,23 +50,23 @@ test_expect_success 'for_each_ref() is sorted' ' test_cmp expected actual ' -test_expect_success 'resolve_ref(master)' ' - SHA1=`git -C sub rev-parse master` && - echo "$SHA1 refs/heads/master 0x0" >expected && - $RUN resolve-ref refs/heads/master 0 >actual && +test_expect_success 'resolve_ref(main)' ' + SHA1=`git -C sub rev-parse main` && + echo "$SHA1 refs/heads/main 0x0" >expected && + $RUN resolve-ref refs/heads/main 0 >actual && test_cmp expected actual ' -test_expect_success 'verify_ref(new-master)' ' - $RUN verify-ref refs/heads/new-master +test_expect_success 'verify_ref(new-main)' ' + $RUN verify-ref refs/heads/new-main ' test_expect_success 'for_each_reflog()' ' $RUN for-each-reflog | sort | cut -d" " -f 2- >actual && cat >expected <<-\EOF && HEAD 0x1 - refs/heads/master 0x0 - refs/heads/new-master 0x0 + refs/heads/main 0x0 + refs/heads/new-main 0x0 EOF test_cmp expected actual ' @@ -77,12 +74,12 @@ test_expect_success 'for_each_reflog()' ' test_expect_success 'for_each_reflog_ent()' ' $RUN for-each-reflog-ent HEAD >actual && head -n1 actual | grep first && - tail -n2 actual | head -n1 | grep master.to.new + tail -n2 actual | head -n1 | grep main.to.new ' test_expect_success 'for_each_reflog_ent_reverse()' ' $RUN for-each-reflog-ent-reverse HEAD >actual && - head -n1 actual | grep master.to.new && + head -n1 actual | grep main.to.new && tail -n2 actual | head -n1 | grep first ' diff --git a/t/t1407-worktree-ref-store.sh b/t/t1407-worktree-ref-store.sh index 9a84858118..d3fe777511 100755 --- a/t/t1407-worktree-ref-store.sh +++ b/t/t1407-worktree-ref-store.sh @@ -2,6 +2,9 @@ test_description='test worktree ref store api' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh RWT="test-tool ref-store worktree:wt" @@ -9,7 +12,7 @@ RMAIN="test-tool ref-store worktree:main" test_expect_success 'setup' ' test_commit first && - git worktree add -b wt-master wt && + git worktree add -b wt-main wt && ( cd wt && test_commit second @@ -17,34 +20,34 @@ test_expect_success 'setup' ' ' test_expect_success 'resolve_ref(<shared-ref>)' ' - SHA1=`git rev-parse master` && - echo "$SHA1 refs/heads/master 0x0" >expected && - $RWT resolve-ref refs/heads/master 0 >actual && + SHA1=`git rev-parse main` && + echo "$SHA1 refs/heads/main 0x0" >expected && + $RWT resolve-ref refs/heads/main 0 >actual && test_cmp expected actual && - $RMAIN resolve-ref refs/heads/master 0 >actual && + $RMAIN resolve-ref refs/heads/main 0 >actual && test_cmp expected actual ' test_expect_success 'resolve_ref(<per-worktree-ref>)' ' SHA1=`git -C wt rev-parse HEAD` && - echo "$SHA1 refs/heads/wt-master 0x1" >expected && + echo "$SHA1 refs/heads/wt-main 0x1" >expected && $RWT resolve-ref HEAD 0 >actual && test_cmp expected actual && SHA1=`git rev-parse HEAD` && - echo "$SHA1 refs/heads/master 0x1" >expected && + echo "$SHA1 refs/heads/main 0x1" >expected && $RMAIN resolve-ref HEAD 0 >actual && test_cmp expected actual ' -test_expect_success 'create_symref(FOO, refs/heads/master)' ' - $RWT create-symref FOO refs/heads/master nothing && - echo refs/heads/master >expected && +test_expect_success 'create_symref(FOO, refs/heads/main)' ' + $RWT create-symref FOO refs/heads/main nothing && + echo refs/heads/main >expected && git -C wt symbolic-ref FOO >actual && test_cmp expected actual && - $RMAIN create-symref FOO refs/heads/wt-master nothing && - echo refs/heads/wt-master >expected && + $RMAIN create-symref FOO refs/heads/wt-main nothing && + echo refs/heads/wt-main >expected && git symbolic-ref FOO >actual && test_cmp expected actual ' @@ -63,8 +66,8 @@ test_expect_success 'for_each_reflog()' ' HEAD 0x1 PSEUDO-WT 0x0 refs/bisect/wt-random 0x0 - refs/heads/master 0x0 - refs/heads/wt-master 0x0 + refs/heads/main 0x0 + refs/heads/wt-main 0x0 EOF test_cmp expected actual && @@ -73,8 +76,8 @@ test_expect_success 'for_each_reflog()' ' HEAD 0x1 PSEUDO-MAIN 0x0 refs/bisect/random 0x0 - refs/heads/master 0x0 - refs/heads/wt-master 0x0 + refs/heads/main 0x0 + refs/heads/wt-main 0x0 EOF test_cmp expected actual ' diff --git a/t/t1408-packed-refs.sh b/t/t1408-packed-refs.sh index 1e44a17eea..41ba1f1d7f 100755 --- a/t/t1408-packed-refs.sh +++ b/t/t1408-packed-refs.sh @@ -2,6 +2,9 @@ test_description='packed-refs entries are covered by loose refs' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -9,32 +12,32 @@ test_expect_success setup ' git commit --allow-empty -m one && one=$(git rev-parse HEAD) && git for-each-ref >actual && - echo "$one commit refs/heads/master" >expect && + echo "$one commit refs/heads/main" >expect && test_cmp expect actual && git pack-refs --all && git for-each-ref >actual && - echo "$one commit refs/heads/master" >expect && + echo "$one commit refs/heads/main" >expect && test_cmp expect actual && git checkout --orphan another && test_tick && git commit --allow-empty -m two && two=$(git rev-parse HEAD) && - git checkout -B master && + git checkout -B main && git branch -D another && git for-each-ref >actual && - echo "$two commit refs/heads/master" >expect && + echo "$two commit refs/heads/main" >expect && test_cmp expect actual && git reflog expire --expire=now --all && git prune && - git tag -m v1.0 v1.0 master + git tag -m v1.0 v1.0 main ' test_expect_success 'no error from stale entry in packed-refs' ' - git describe master >actual 2>&1 && + git describe main >actual 2>&1 && echo "v1.0" >expect && test_cmp expect actual ' diff --git a/t/t1410-reflog.sh b/t/t1410-reflog.sh index 730a43d9dd..ecccaa0634 100755 --- a/t/t1410-reflog.sh +++ b/t/t1410-reflog.sh @@ -4,6 +4,9 @@ # test_description='Test prune and reflog expiration' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_have () { @@ -99,7 +102,7 @@ test_expect_success setup ' check_fsck && - git reflog refs/heads/master >output && + git reflog refs/heads/main >output && test_line_count = 4 output ' @@ -116,7 +119,7 @@ test_expect_success rewind ' check_have A B C D E F G H I J K L && - git reflog refs/heads/master >output && + git reflog refs/heads/main >output && test_line_count = 5 output ' @@ -135,7 +138,7 @@ test_expect_success 'reflog expire --dry-run should not touch reflog' ' --stale-fix \ --all && - git reflog refs/heads/master >output && + git reflog refs/heads/main >output && test_line_count = 5 output && check_fsck "missing blob $F" @@ -149,7 +152,7 @@ test_expect_success 'reflog expire' ' --stale-fix \ --all && - git reflog refs/heads/master >output && + git reflog refs/heads/main >output && test_line_count = 2 output && check_fsck "dangling commit $K" @@ -186,29 +189,29 @@ test_expect_success 'delete' ' git commit -m tiger C && HEAD_entry_count=$(git reflog | wc -l) && - master_entry_count=$(git reflog show master | wc -l) && + main_entry_count=$(git reflog show main | wc -l) && test $HEAD_entry_count = 5 && - test $master_entry_count = 5 && + test $main_entry_count = 5 && - git reflog delete master@{1} && - git reflog show master > output && - test_line_count = $(($master_entry_count - 1)) output && + git reflog delete main@{1} && + git reflog show main > output && + test_line_count = $(($main_entry_count - 1)) output && test $HEAD_entry_count = $(git reflog | wc -l) && ! grep ox < output && - master_entry_count=$(wc -l < output) && + main_entry_count=$(wc -l < output) && git reflog delete HEAD@{1} && test $(($HEAD_entry_count -1)) = $(git reflog | wc -l) && - test $master_entry_count = $(git reflog show master | wc -l) && + test $main_entry_count = $(git reflog show main | wc -l) && HEAD_entry_count=$(git reflog | wc -l) && - git reflog delete master@{07.04.2005.15:15:00.-0700} && - git reflog show master > output && - test_line_count = $(($master_entry_count - 1)) output && + git reflog delete main@{07.04.2005.15:15:00.-0700} && + git reflog show main > output && + test_line_count = $(($main_entry_count - 1)) output && ! grep dragon < output ' @@ -216,7 +219,7 @@ test_expect_success 'delete' ' test_expect_success 'rewind2' ' test_tick && git reset --hard HEAD~2 && - git reflog refs/heads/master >output && + git reflog refs/heads/main >output && test_line_count = 4 output ' @@ -226,7 +229,7 @@ test_expect_success '--expire=never' ' --expire=never \ --expire-unreachable=never \ --all && - git reflog refs/heads/master >output && + git reflog refs/heads/main >output && test_line_count = 4 output ' @@ -237,7 +240,7 @@ test_expect_success 'gc.reflogexpire=never' ' git reflog expire --verbose --all >output && test_line_count = 9 output && - git reflog refs/heads/master >output && + git reflog refs/heads/main >output && test_line_count = 4 output ' @@ -246,7 +249,7 @@ test_expect_success 'gc.reflogexpire=false' ' test_config gc.reflogexpireunreachable false && git reflog expire --verbose --all && - git reflog refs/heads/master >output && + git reflog refs/heads/main >output && test_line_count = 4 output ' @@ -255,33 +258,33 @@ test_expect_success 'git reflog expire unknown reference' ' test_config gc.reflogexpire never && test_config gc.reflogexpireunreachable never && - test_must_fail git reflog expire master@{123} 2>stderr && + test_must_fail git reflog expire main@{123} 2>stderr && test_i18ngrep "points nowhere" stderr && test_must_fail git reflog expire does-not-exist 2>stderr && test_i18ngrep "points nowhere" stderr ' test_expect_success 'checkout should not delete log for packed ref' ' - test $(git reflog master | wc -l) = 4 && + test $(git reflog main | wc -l) = 4 && git branch foo && git pack-refs --all && git checkout foo && - test $(git reflog master | wc -l) = 4 + test $(git reflog main | wc -l) = 4 ' test_expect_success 'stale dirs do not cause d/f conflicts (reflogs on)' ' test_when_finished "git branch -d one || git branch -d one/two" && - git branch one/two master && - echo "one/two@{0} branch: Created from master" >expect && + git branch one/two main && + echo "one/two@{0} branch: Created from main" >expect && git log -g --format="%gd %gs" one/two >actual && test_cmp expect actual && git branch -d one/two && # now logs/refs/heads/one is a stale directory, but # we should move it out of the way to create "one" reflog - git branch one master && - echo "one@{0} branch: Created from master" >expect && + git branch one main && + echo "one@{0} branch: Created from main" >expect && git log -g --format="%gd %gs" one >actual && test_cmp expect actual ' @@ -289,15 +292,15 @@ test_expect_success 'stale dirs do not cause d/f conflicts (reflogs on)' ' test_expect_success 'stale dirs do not cause d/f conflicts (reflogs off)' ' test_when_finished "git branch -d one || git branch -d one/two" && - git branch one/two master && - echo "one/two@{0} branch: Created from master" >expect && + git branch one/two main && + echo "one/two@{0} branch: Created from main" >expect && git log -g --format="%gd %gs" one/two >actual && test_cmp expect actual && git branch -d one/two && # same as before, but we only create a reflog for "one" if # it already exists, which it does not - git -c core.logallrefupdates=false branch one master && + git -c core.logallrefupdates=false branch one main && git log -g --format="%gd %gs" one >actual && test_must_be_empty actual ' diff --git a/t/t1411-reflog-show.sh b/t/t1411-reflog-show.sh index 985daf1def..0bb319b944 100755 --- a/t/t1411-reflog-show.sh +++ b/t/t1411-reflog-show.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='Test reflog display routines' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -167,7 +170,7 @@ test_expect_success 'git log -g -p shows diffs vs. parents' ' ' test_expect_success 'reflog exists works' ' - git reflog exists refs/heads/master && + git reflog exists refs/heads/main && ! git reflog exists refs/heads/nonexistent ' diff --git a/t/t1412-reflog-loop.sh b/t/t1412-reflog-loop.sh index 3acd895afb..977603f7f1 100755 --- a/t/t1412-reflog-loop.sh +++ b/t/t1412-reflog-loop.sh @@ -4,11 +4,8 @@ test_description='reflog walk shows repeated commits again' . ./test-lib.sh test_expect_success 'setup commits' ' - test_tick && - echo content >file && git add file && git commit -m one && - git tag one && - echo content >>file && git add file && git commit -m two && - git tag two + test_commit one file content && + test_commit --append two file content ' test_expect_success 'setup reflog with alternating commits' ' diff --git a/t/t1413-reflog-detach.sh b/t/t1413-reflog-detach.sh index c730600d8a..bde05208ae 100755 --- a/t/t1413-reflog-detach.sh +++ b/t/t1413-reflog-detach.sh @@ -1,10 +1,13 @@ #!/bin/sh test_description='Test reflog interaction with detached HEAD' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh reset_state () { - git checkout master && + git checkout main && cp saved_reflog .git/logs/HEAD } @@ -19,14 +22,14 @@ test_expect_success setup ' test_expect_success baseline ' reset_state && - git rev-parse master master^ >expect && + git rev-parse main main^ >expect && git log -g --format=%H >actual && test_cmp expect actual ' test_expect_success 'switch to branch' ' reset_state && - git rev-parse side master master^ >expect && + git rev-parse side main main^ >expect && git checkout side && git log -g --format=%H >actual && test_cmp expect actual @@ -34,34 +37,34 @@ test_expect_success 'switch to branch' ' test_expect_success 'detach to other' ' reset_state && - git rev-parse master side master master^ >expect && + git rev-parse main side main main^ >expect && git checkout side && - git checkout master^0 && + git checkout main^0 && git log -g --format=%H >actual && test_cmp expect actual ' test_expect_success 'detach to self' ' reset_state && - git rev-parse master master master^ >expect && - git checkout master^0 && + git rev-parse main main main^ >expect && + git checkout main^0 && git log -g --format=%H >actual && test_cmp expect actual ' test_expect_success 'attach to self' ' reset_state && - git rev-parse master master master master^ >expect && - git checkout master^0 && - git checkout master && + git rev-parse main main main main^ >expect && + git checkout main^0 && + git checkout main && git log -g --format=%H >actual && test_cmp expect actual ' test_expect_success 'attach to other' ' reset_state && - git rev-parse side master master master^ >expect && - git checkout master^0 && + git rev-parse side main main main^ >expect && + git checkout main^0 && git checkout side && git log -g --format=%H >actual && test_cmp expect actual diff --git a/t/t1414-reflog-walk.sh b/t/t1414-reflog-walk.sh index 1181a9fb28..80d94704d0 100755 --- a/t/t1414-reflog-walk.sh +++ b/t/t1414-reflog-walk.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='various tests of reflog walk (log -g) behavior' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'set up some reflog entries' ' @@ -8,7 +11,7 @@ test_expect_success 'set up some reflog entries' ' test_commit two && git checkout -b side HEAD^ && test_commit three && - git merge --no-commit master && + git merge --no-commit main && echo evil-merge-content >>one.t && test_tick && git commit --no-edit -a @@ -20,9 +23,9 @@ do_walk () { test_expect_success 'set up expected reflog' ' cat >expect.all <<-EOF - HEAD@{0} commit (merge): Merge branch ${SQ}master${SQ} into side + HEAD@{0} commit (merge): Merge branch ${SQ}main${SQ} into side HEAD@{1} commit: three - HEAD@{2} checkout: moving from master to side + HEAD@{2} checkout: moving from main to side HEAD@{3} commit: two HEAD@{4} commit (initial): one EOF @@ -73,15 +76,15 @@ test_expect_success 'walking multiple reflogs shows all' ' # sort ignores the bits after the timestamp. # # 2. POSIX leaves undefined whether this is a stable sort or not. So - # we use "-k 1" to ensure that we see HEAD before master before + # we use "-k 1" to ensure that we see HEAD before main before # side when breaking ties. { do_walk --date=unix HEAD && do_walk --date=unix side && - do_walk --date=unix master + do_walk --date=unix main } >expect.raw && sort -t "{" -k 2nr -k 1 <expect.raw >expect && - do_walk --date=unix HEAD master side >actual && + do_walk --date=unix HEAD main side >actual && test_cmp expect actual ' diff --git a/t/t1416-ref-transaction-hooks.sh b/t/t1416-ref-transaction-hooks.sh index f6e741c6c0..6c941027a8 100755 --- a/t/t1416-ref-transaction-hooks.sh +++ b/t/t1416-ref-transaction-hooks.sh @@ -2,6 +2,9 @@ test_description='reference transaction hooks' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -53,11 +56,11 @@ test_expect_success 'hook gets all queued updates in prepared state' ' EOF cat >expect <<-EOF && $ZERO_OID $POST_OID HEAD - $ZERO_OID $POST_OID refs/heads/master + $ZERO_OID $POST_OID refs/heads/main EOF git update-ref HEAD POST <<-EOF && update HEAD $ZERO_OID $POST_OID - update refs/heads/master $ZERO_OID $POST_OID + update refs/heads/main $ZERO_OID $POST_OID EOF test_cmp expect actual ' @@ -76,7 +79,7 @@ test_expect_success 'hook gets all queued updates in committed state' ' EOF cat >expect <<-EOF && $ZERO_OID $POST_OID HEAD - $ZERO_OID $POST_OID refs/heads/master + $ZERO_OID $POST_OID refs/heads/main EOF git update-ref HEAD POST && test_cmp expect actual @@ -96,12 +99,12 @@ test_expect_success 'hook gets all queued updates in aborted state' ' EOF cat >expect <<-EOF && $ZERO_OID $POST_OID HEAD - $ZERO_OID $POST_OID refs/heads/master + $ZERO_OID $POST_OID refs/heads/main EOF git update-ref --stdin <<-EOF && start update HEAD POST $ZERO_OID - update refs/heads/master POST $ZERO_OID + update refs/heads/main POST $ZERO_OID abort EOF test_cmp expect actual diff --git a/t/t1430-bad-ref-name.sh b/t/t1430-bad-ref-name.sh index c7878a60ed..354902e514 100755 --- a/t/t1430-bad-ref-name.sh +++ b/t/t1430-bad-ref-name.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='Test handling of ref names that check-ref-format rejects' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -17,7 +20,7 @@ test_expect_success 'fast-import: fail on invalid branch name ".badbranchname"' corrupt COMMIT - from refs/heads/master + from refs/heads/main INPUT_END test_must_fail git fast-import <input @@ -32,14 +35,14 @@ test_expect_success 'fast-import: fail on invalid branch name "bad[branch]name"' corrupt COMMIT - from refs/heads/master + from refs/heads/main INPUT_END test_must_fail git fast-import <input ' test_expect_success 'git branch shows badly named ref as warning' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && git branch >output 2>error && test_i18ngrep -e "ignoring ref with broken name refs/heads/broken\.\.\.ref" error && @@ -47,7 +50,7 @@ test_expect_success 'git branch shows badly named ref as warning' ' ' test_expect_success 'branch -d can delete badly named ref' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && git branch -d broken...ref && git branch >output 2>error && @@ -56,7 +59,7 @@ test_expect_success 'branch -d can delete badly named ref' ' ' test_expect_success 'branch -D can delete badly named ref' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && git branch -D broken...ref && git branch >output 2>error && @@ -98,17 +101,17 @@ test_expect_success 'branch -m cannot rename to a bad ref name' ' test_might_fail git branch -D goodref && git branch goodref && test_must_fail git branch -m goodref broken...ref && - test_cmp_rev master goodref && + test_cmp_rev main goodref && git branch >output 2>error && ! grep -e "broken\.\.\.ref" error && ! grep -e "broken\.\.\.ref" output ' test_expect_failure 'branch -m can rename from a bad ref name' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && git branch -m broken...ref renamed && - test_cmp_rev master renamed && + test_cmp_rev main renamed && git branch >output 2>error && ! grep -e "broken\.\.\.ref" error && ! grep -e "broken\.\.\.ref" output @@ -135,7 +138,7 @@ test_expect_failure C_LOCALE_OUTPUT 'push --mirror can delete badly named ref' ' cd dest && test_commit two && git checkout --detach && - cp .git/refs/heads/master .git/refs/heads/broken...ref + cp .git/refs/heads/main .git/refs/heads/broken...ref ) && git -C src push --mirror "file://$top/dest" && git -C dest branch >output 2>error && @@ -146,7 +149,7 @@ test_expect_failure C_LOCALE_OUTPUT 'push --mirror can delete badly named ref' ' test_expect_success 'rev-parse skips symref pointing to broken name' ' test_when_finished "rm -f .git/refs/heads/broken...ref" && git branch shadow one && - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && printf "ref: refs/heads/broken...ref\n" >.git/refs/tags/shadow && test_when_finished "rm -f .git/refs/tags/shadow" && git rev-parse --verify one >expect && @@ -156,11 +159,11 @@ test_expect_success 'rev-parse skips symref pointing to broken name' ' ' test_expect_success 'for-each-ref emits warnings for broken names' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && printf "ref: refs/heads/broken...ref\n" >.git/refs/heads/badname && test_when_finished "rm -f .git/refs/heads/badname" && - printf "ref: refs/heads/master\n" >.git/refs/heads/broken...symref && + printf "ref: refs/heads/main\n" >.git/refs/heads/broken...symref && test_when_finished "rm -f .git/refs/heads/broken...symref" && git for-each-ref >output 2>error && ! grep -e "broken\.\.\.ref" output && @@ -172,7 +175,7 @@ test_expect_success 'for-each-ref emits warnings for broken names' ' ' test_expect_success 'update-ref -d can delete broken name' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && git update-ref -d refs/heads/broken...ref >output 2>error && test_must_be_empty output && @@ -183,7 +186,7 @@ test_expect_success 'update-ref -d can delete broken name' ' ' test_expect_success 'branch -d can delete broken name' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && git branch -d broken...ref >output 2>error && test_i18ngrep "Deleted branch broken...ref (was broken)" output && @@ -194,7 +197,7 @@ test_expect_success 'branch -d can delete broken name' ' ' test_expect_success 'update-ref --no-deref -d can delete symref to broken name' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && printf "ref: refs/heads/broken...ref\n" >.git/refs/heads/badname && test_when_finished "rm -f .git/refs/heads/badname" && @@ -205,7 +208,7 @@ test_expect_success 'update-ref --no-deref -d can delete symref to broken name' ' test_expect_success 'branch -d can delete symref to broken name' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && printf "ref: refs/heads/broken...ref\n" >.git/refs/heads/badname && test_when_finished "rm -f .git/refs/heads/badname" && @@ -234,7 +237,7 @@ test_expect_success 'branch -d can delete dangling symref to broken name' ' ' test_expect_success 'update-ref -d can delete broken name through symref' ' - cp .git/refs/heads/master .git/refs/heads/broken...ref && + cp .git/refs/heads/main .git/refs/heads/broken...ref && test_when_finished "rm -f .git/refs/heads/broken...ref" && printf "ref: refs/heads/broken...ref\n" >.git/refs/heads/badname && test_when_finished "rm -f .git/refs/heads/badname" && @@ -245,7 +248,7 @@ test_expect_success 'update-ref -d can delete broken name through symref' ' ' test_expect_success 'update-ref --no-deref -d can delete symref with broken name' ' - printf "ref: refs/heads/master\n" >.git/refs/heads/broken...symref && + printf "ref: refs/heads/main\n" >.git/refs/heads/broken...symref && test_when_finished "rm -f .git/refs/heads/broken...symref" && git update-ref --no-deref -d refs/heads/broken...symref >output 2>error && test_path_is_missing .git/refs/heads/broken...symref && @@ -254,11 +257,11 @@ test_expect_success 'update-ref --no-deref -d can delete symref with broken name ' test_expect_success 'branch -d can delete symref with broken name' ' - printf "ref: refs/heads/master\n" >.git/refs/heads/broken...symref && + printf "ref: refs/heads/main\n" >.git/refs/heads/broken...symref && test_when_finished "rm -f .git/refs/heads/broken...symref" && git branch -d broken...symref >output 2>error && test_path_is_missing .git/refs/heads/broken...symref && - test_i18ngrep "Deleted branch broken...symref (was refs/heads/master)" output && + test_i18ngrep "Deleted branch broken...symref (was refs/heads/main)" output && test_must_be_empty error ' @@ -296,37 +299,37 @@ test_expect_success 'update-ref -d cannot delete absolute path' ' ' test_expect_success 'update-ref --stdin fails create with bad ref name' ' - echo "create ~a refs/heads/master" >stdin && + echo "create ~a refs/heads/main" >stdin && test_must_fail git update-ref --stdin <stdin 2>err && grep "fatal: invalid ref format: ~a" err ' test_expect_success 'update-ref --stdin fails update with bad ref name' ' - echo "update ~a refs/heads/master" >stdin && + echo "update ~a refs/heads/main" >stdin && test_must_fail git update-ref --stdin <stdin 2>err && grep "fatal: invalid ref format: ~a" err ' test_expect_success 'update-ref --stdin fails delete with bad ref name' ' - echo "delete ~a refs/heads/master" >stdin && + echo "delete ~a refs/heads/main" >stdin && test_must_fail git update-ref --stdin <stdin 2>err && grep "fatal: invalid ref format: ~a" err ' test_expect_success 'update-ref --stdin -z fails create with bad ref name' ' - printf "%s\0" "create ~a " refs/heads/master >stdin && + printf "%s\0" "create ~a " refs/heads/main >stdin && test_must_fail git update-ref -z --stdin <stdin 2>err && grep "fatal: invalid ref format: ~a " err ' test_expect_success 'update-ref --stdin -z fails update with bad ref name' ' - printf "%s\0" "update ~a" refs/heads/master "" >stdin && + printf "%s\0" "update ~a" refs/heads/main "" >stdin && test_must_fail git update-ref -z --stdin <stdin 2>err && grep "fatal: invalid ref format: ~a" err ' test_expect_success 'update-ref --stdin -z fails delete with bad ref name' ' - printf "%s\0" "delete ~a" refs/heads/master >stdin && + printf "%s\0" "delete ~a" refs/heads/main >stdin && test_must_fail git update-ref -z --stdin <stdin 2>err && grep "fatal: invalid ref format: ~a" err ' diff --git a/t/t1450-fsck.sh b/t/t1450-fsck.sh index b17f5c21fb..a30fc5f74a 100755 --- a/t/t1450-fsck.sh +++ b/t/t1450-fsck.sh @@ -3,7 +3,7 @@ test_description='git fsck random collection of tests * (HEAD) B -* (master) A +* (main) A ' . ./test-lib.sh diff --git a/t/t1500-rev-parse.sh b/t/t1500-rev-parse.sh index 408b97d5af..abdda360d5 100755 --- a/t/t1500-rev-parse.sh +++ b/t/t1500-rev-parse.sh @@ -1,8 +1,21 @@ #!/bin/sh test_description='test git rev-parse' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh +test_one () { + dir="$1" && + expect="$2" && + shift && + shift && + echo "$expect" >expect && + git -C "$dir" rev-parse "$@" >actual && + test_cmp expect actual +} + # usage: [options] label is-bare is-inside-git is-inside-work prefix git-dir absolute-git-dir test_rev_parse () { d= @@ -60,7 +73,13 @@ ROOT=$(pwd) test_expect_success 'setup' ' mkdir -p sub/dir work && - cp -R .git repo.git + cp -R .git repo.git && + git checkout -B main && + test_commit abc && + git checkout -b side && + test_commit def && + git checkout main && + git worktree add worktree side ' test_rev_parse toplevel false false true '' .git "$ROOT/.git" @@ -88,6 +107,45 @@ test_rev_parse -C work -g ../repo.git -b t 'GIT_DIR=../repo.git, core.bare = tru test_rev_parse -C work -g ../repo.git -b u 'GIT_DIR=../repo.git, core.bare undefined' false false true '' +test_expect_success 'rev-parse --path-format=absolute' ' + test_one "." "$ROOT/.git" --path-format=absolute --git-dir && + test_one "." "$ROOT/.git" --path-format=absolute --git-common-dir && + test_one "sub/dir" "$ROOT/.git" --path-format=absolute --git-dir && + test_one "sub/dir" "$ROOT/.git" --path-format=absolute --git-common-dir && + test_one "worktree" "$ROOT/.git/worktrees/worktree" --path-format=absolute --git-dir && + test_one "worktree" "$ROOT/.git" --path-format=absolute --git-common-dir && + test_one "." "$ROOT" --path-format=absolute --show-toplevel && + test_one "." "$ROOT/.git/objects" --path-format=absolute --git-path objects && + test_one "." "$ROOT/.git/objects/foo/bar/baz" --path-format=absolute --git-path objects/foo/bar/baz +' + +test_expect_success 'rev-parse --path-format=relative' ' + test_one "." ".git" --path-format=relative --git-dir && + test_one "." ".git" --path-format=relative --git-common-dir && + test_one "sub/dir" "../../.git" --path-format=relative --git-dir && + test_one "sub/dir" "../../.git" --path-format=relative --git-common-dir && + test_one "worktree" "../.git/worktrees/worktree" --path-format=relative --git-dir && + test_one "worktree" "../.git" --path-format=relative --git-common-dir && + test_one "." "./" --path-format=relative --show-toplevel && + test_one "." ".git/objects" --path-format=relative --git-path objects && + test_one "." ".git/objects/foo/bar/baz" --path-format=relative --git-path objects/foo/bar/baz +' + +test_expect_success '--path-format=relative does not affect --absolute-git-dir' ' + git rev-parse --path-format=relative --absolute-git-dir >actual && + echo "$ROOT/.git" >expect && + test_cmp expect actual +' + +test_expect_success '--path-format can change in the middle of the command line' ' + git rev-parse --path-format=absolute --git-dir --path-format=relative --git-path objects/foo/bar >actual && + cat >expect <<-EOF && + $ROOT/.git + .git/objects/foo/bar + EOF + test_cmp expect actual +' + test_expect_success 'git-common-dir from worktree root' ' echo .git >expect && git rev-parse --git-common-dir >actual && @@ -174,8 +232,8 @@ test_expect_success 'showing the superproject correctly' ' test_commit -C super/dir/sub branch1_commit && git -C super add dir/sub && test_commit -C super branch1_commit && - git -C super checkout -b branch2 master && - git -C super/dir/sub checkout -b branch2 master && + git -C super checkout -b branch2 main && + git -C super/dir/sub checkout -b branch2 main && test_commit -C super/dir/sub branch2_commit && git -C super add dir/sub && test_commit -C super branch2_commit && diff --git a/t/t1503-rev-parse-verify.sh b/t/t1503-rev-parse-verify.sh index dc9fe3cbf1..bf08102391 100755 --- a/t/t1503-rev-parse-verify.sh +++ b/t/t1503-rev-parse-verify.sh @@ -6,6 +6,9 @@ test_description='test git rev-parse --verify' exec </dev/null +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh add_line_into_file() @@ -51,8 +54,8 @@ test_expect_success 'works with one good rev' ' test "$rev_hash3" = "$HASH3" && rev_hash4=$(git rev-parse --verify $HASH4) && test "$rev_hash4" = "$HASH4" && - rev_master=$(git rev-parse --verify master) && - test "$rev_master" = "$HASH4" && + rev_main=$(git rev-parse --verify main) && + test "$rev_main" = "$HASH4" && rev_head=$(git rev-parse --verify HEAD) && test "$rev_head" = "$HASH4" ' @@ -86,8 +89,8 @@ test_expect_success 'fails silently when using -q' ' test_expect_success 'fails silently when using -q with deleted reflogs' ' ref=$(git rev-parse HEAD) && git update-ref --create-reflog -m "message for refs/test" refs/test "$ref" && - git reflog delete --updateref --rewrite refs/test@{0} && - test_must_fail git rev-parse -q --verify refs/test@{0} >error 2>&1 && + git reflog delete --updateref --rewrite refs/test@{1} && + test_must_fail git rev-parse -q --verify refs/test@{1} >error 2>&1 && test_must_be_empty error ' @@ -116,27 +119,27 @@ test_expect_success 'no stdout output on error' ' ' test_expect_success 'use --default' ' - git rev-parse --verify --default master && - git rev-parse --verify --default master HEAD && - git rev-parse --default master --verify && - git rev-parse --default master --verify HEAD && - git rev-parse --verify HEAD --default master && - test_must_fail git rev-parse --verify foo --default master && + git rev-parse --verify --default main && + git rev-parse --verify --default main HEAD && + git rev-parse --default main --verify && + git rev-parse --default main --verify HEAD && + git rev-parse --verify HEAD --default main && + test_must_fail git rev-parse --verify foo --default main && test_must_fail git rev-parse --default HEAD --verify bar && test_must_fail git rev-parse --verify --default HEAD baz && test_must_fail git rev-parse --default foo --verify && test_must_fail git rev-parse --verify --default bar ' -test_expect_success 'master@{n} for various n' ' +test_expect_success 'main@{n} for various n' ' N=$(git reflog | wc -l) && Nm1=$(($N-1)) && Np1=$(($N+1)) && - git rev-parse --verify master@{0} && - git rev-parse --verify master@{1} && - git rev-parse --verify master@{$Nm1} && - test_must_fail git rev-parse --verify master@{$N} && - test_must_fail git rev-parse --verify master@{$Np1} + git rev-parse --verify main@{0} && + git rev-parse --verify main@{1} && + git rev-parse --verify main@{$Nm1} && + test_must_fail git rev-parse --verify main@{$N} && + test_must_fail git rev-parse --verify main@{$Np1} ' test_expect_success SYMLINKS 'ref resolution not confused by broken symlinks' ' diff --git a/t/t1505-rev-parse-last.sh b/t/t1505-rev-parse-last.sh index 4969edb314..2803ca9489 100755 --- a/t/t1505-rev-parse-last.sh +++ b/t/t1505-rev-parse-last.sh @@ -2,6 +2,9 @@ test_description='test @{-N} syntax' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh @@ -20,12 +23,12 @@ test_expect_success 'setup' ' make_commit 3 && git checkout side && make_commit 4 && - git merge master && - git checkout master + git merge main && + git checkout main ' -# 1 -- 2 -- 3 master +# 1 -- 2 -- 3 main # \ \ # \ \ # --- 4 --- 5 side @@ -49,7 +52,7 @@ test_expect_success '@{-1}@{1} works' ' ' test_expect_success '@{-2} works' ' - test_cmp_rev master @{-2} + test_cmp_rev main @{-2} ' test_expect_success '@{-3} fails' ' diff --git a/t/t1506-rev-parse-diagnosis.sh b/t/t1506-rev-parse-diagnosis.sh index e2ae15a2cf..f6e6f23f7e 100755 --- a/t/t1506-rev-parse-diagnosis.sh +++ b/t/t1506-rev-parse-diagnosis.sh @@ -4,6 +4,9 @@ test_description='test git rev-parse diagnosis for invalid argument' exec </dev/null +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_did_you_mean () @@ -137,10 +140,10 @@ test_expect_success 'incorrect file in :path and :N:path' ' ' test_expect_success 'invalid @{n} reference' ' - test_must_fail git rev-parse master@{99999} >output 2>error && + test_must_fail git rev-parse main@{99999} >output 2>error && test_must_be_empty output && test_i18ngrep "log for [^ ]* only has [0-9][0-9]* entries" error && - test_must_fail git rev-parse --verify master@{99999} >output 2>error && + test_must_fail git rev-parse --verify main@{99999} >output 2>error && test_must_be_empty output && test_i18ngrep "log for [^ ]* only has [0-9][0-9]* entries" error ' diff --git a/t/t1507-rev-parse-upstream.sh b/t/t1507-rev-parse-upstream.sh index dfc0d96d8a..73b4f34c6e 100755 --- a/t/t1507-rev-parse-upstream.sh +++ b/t/t1507-rev-parse-upstream.sh @@ -2,6 +2,9 @@ test_description='test <branch>@{upstream} syntax' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh @@ -10,20 +13,20 @@ test_expect_success 'setup' ' test_commit 1 && git checkout -b side && test_commit 2 && - git checkout master && + git checkout main && git clone . clone && test_commit 3 && (cd clone && test_commit 4 && git branch --track my-side origin/side && - git branch --track local-master master && + git branch --track local-main main && git branch --track fun@ny origin/side && git branch --track @funny origin/side && git branch --track funny@ origin/side && - git remote add -t master master-only .. && - git fetch master-only && + git remote add -t main main-only .. && + git fetch main-only && git branch bad-upstream && - git config branch.bad-upstream.remote master-only && + git config branch.bad-upstream.remote main-only && git config branch.bad-upstream.merge refs/heads/side ) ' @@ -39,7 +42,7 @@ error_message () { } test_expect_success '@{upstream} resolves to correct full name' ' - echo refs/remotes/origin/master >expect && + echo refs/remotes/origin/main >expect && git -C clone rev-parse --symbolic-full-name @{upstream} >actual && test_cmp expect actual && git -C clone rev-parse --symbolic-full-name @{UPSTREAM} >actual && @@ -49,7 +52,7 @@ test_expect_success '@{upstream} resolves to correct full name' ' ' test_expect_success '@{u} resolves to correct full name' ' - echo refs/remotes/origin/master >expect && + echo refs/remotes/origin/main >expect && git -C clone rev-parse --symbolic-full-name @{u} >actual && test_cmp expect actual && git -C clone rev-parse --symbolic-full-name @{U} >actual && @@ -132,7 +135,7 @@ test_expect_success 'checkout -b new my-side@{u} forks from the same' ' test_expect_success 'merge my-side@{u} records the correct name' ' ( cd clone && - git checkout master && + git checkout main && test_might_fail git branch -D new && git branch -t new my-side@{u} && git merge -s ours new@{u} && @@ -143,24 +146,24 @@ test_expect_success 'merge my-side@{u} records the correct name' ' ' test_expect_success 'branch -d other@{u}' ' - git checkout -t -b other master && + git checkout -t -b other main && git branch -d @{u} && - git for-each-ref refs/heads/master >actual && + git for-each-ref refs/heads/main >actual && test_must_be_empty actual ' test_expect_success 'checkout other@{u}' ' - git branch -f master HEAD && - git checkout -t -b another master && + git branch -f main HEAD && + git checkout -t -b another main && git checkout @{u} && git symbolic-ref HEAD >actual && - echo refs/heads/master >expect && + echo refs/heads/main >expect && test_cmp expect actual ' test_expect_success 'branch@{u} works when tracking a local branch' ' - echo refs/heads/master >expect && - git -C clone rev-parse --symbolic-full-name local-master@{u} >actual && + echo refs/heads/main >expect && + git -C clone rev-parse --symbolic-full-name local-main@{u} >actual && test_cmp expect actual ' @@ -174,7 +177,7 @@ test_expect_success 'branch@{u} error message when no upstream' ' test_expect_success '@{u} error message when no upstream' ' cat >expect <<-EOF && - fatal: no upstream configured for branch ${SQ}master${SQ} + fatal: no upstream configured for branch ${SQ}main${SQ} EOF test_must_fail git rev-parse --verify @{u} 2>actual && test_i18ncmp expect actual @@ -208,14 +211,14 @@ test_expect_success 'branch@{u} error message if upstream branch not fetched' ' test_expect_success 'pull works when tracking a local branch' ' ( cd clone && - git checkout local-master && + git checkout local-main && git pull ) ' # makes sense if the previous one succeeded test_expect_success '@{u} works when tracking a local branch' ' - echo refs/heads/master >expect && + echo refs/heads/main >expect && git -C clone rev-parse --symbolic-full-name @{u} >actual && test_cmp expect actual ' @@ -224,7 +227,7 @@ test_expect_success 'log -g other@{u}' ' commit=$(git rev-parse HEAD) && cat >expect <<-EOF && commit $commit - Reflog: master@{0} (C O Mitter <committer@example.com>) + Reflog: main@{0} (C O Mitter <committer@example.com>) Reflog message: branch: Created from HEAD Author: A U Thor <author@example.com> Date: Thu Apr 7 15:15:13 2005 -0700 @@ -239,7 +242,7 @@ test_expect_success 'log -g other@{u}@{now}' ' commit=$(git rev-parse HEAD) && cat >expect <<-EOF && commit $commit - Reflog: master@{Thu Apr 7 15:17:13 2005 -0700} (C O Mitter <committer@example.com>) + Reflog: main@{Thu Apr 7 15:17:13 2005 -0700} (C O Mitter <committer@example.com>) Reflog message: branch: Created from HEAD Author: A U Thor <author@example.com> Date: Thu Apr 7 15:15:13 2005 -0700 diff --git a/t/t1508-at-combinations.sh b/t/t1508-at-combinations.sh index 4a9964e9dc..87a4286414 100755 --- a/t/t1508-at-combinations.sh +++ b/t/t1508-at-combinations.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test various @{X} syntax combinations together' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check() { @@ -30,8 +33,8 @@ fail() { } test_expect_success 'setup' ' - test_commit master-one && - test_commit master-two && + test_commit main-one && + test_commit main-two && git checkout -b upstream-branch && test_commit upstream-one && test_commit upstream-two && @@ -47,7 +50,7 @@ test_expect_success 'setup' ' git checkout -b new-branch && test_commit new-one && test_commit new-two && - git branch -u master old-branch && + git branch -u main old-branch && git branch -u upstream-branch new-branch ' @@ -62,8 +65,8 @@ check "@{-1}@{1}" commit old-one check "@{u}" ref refs/heads/upstream-branch check "HEAD@{u}" ref refs/heads/upstream-branch check "@{u}@{1}" commit upstream-one -check "@{-1}@{u}" ref refs/heads/master -check "@{-1}@{u}@{1}" commit master-one +check "@{-1}@{u}" ref refs/heads/main +check "@{-1}@{u}@{1}" commit main-one check "@" commit new-two check "@@{u}" ref refs/heads/upstream-branch check "@@/at-test" ref refs/heads/@@/at-test @@ -99,4 +102,17 @@ test_expect_success 'create path with @' ' check "@:normal" blob content check "@:fun@ny" blob content +test_expect_success '@{1} works with only one reflog entry' ' + git checkout -B newbranch main && + git reflog expire --expire=now refs/heads/newbranch && + git commit --allow-empty -m "first after expiration" && + test_cmp_rev newbranch~ newbranch@{1} +' + +test_expect_success '@{0} works with empty reflog' ' + git checkout -B newbranch main && + git reflog expire --expire=now refs/heads/newbranch && + test_cmp_rev newbranch newbranch@{0} +' + test_done diff --git a/t/t1511-rev-parse-caret.sh b/t/t1511-rev-parse-caret.sh index e0a49a651f..6ecfed86bc 100755 --- a/t/t1511-rev-parse-caret.sh +++ b/t/t1511-rev-parse-caret.sh @@ -2,6 +2,9 @@ test_description='tests for ref^{stuff}' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -15,7 +18,7 @@ test_expect_success 'setup' ' git commit -m Initial && git tag -a -m commit commit-tag && git branch ref && - git checkout master && + git checkout main && echo modified >>a-blob && git add -u && git commit -m Modified && @@ -73,52 +76,52 @@ test_expect_success 'ref^{tag}' ' ' test_expect_success 'ref^{/.}' ' - git rev-parse master >expected && - git rev-parse master^{/.} >actual && + git rev-parse main >expected && + git rev-parse main^{/.} >actual && test_cmp expected actual ' test_expect_success 'ref^{/non-existent}' ' - test_must_fail git rev-parse master^{/non-existent} + test_must_fail git rev-parse main^{/non-existent} ' test_expect_success 'ref^{/Initial}' ' git rev-parse ref >expected && - git rev-parse master^{/Initial} >actual && + git rev-parse main^{/Initial} >actual && test_cmp expected actual ' test_expect_success 'ref^{/!Exp}' ' - test_must_fail git rev-parse master^{/!Exp} + test_must_fail git rev-parse main^{/!Exp} ' test_expect_success 'ref^{/!}' ' - test_must_fail git rev-parse master^{/!} + test_must_fail git rev-parse main^{/!} ' test_expect_success 'ref^{/!!Exp}' ' git rev-parse expref >expected && - git rev-parse master^{/!!Exp} >actual && + git rev-parse main^{/!!Exp} >actual && test_cmp expected actual ' test_expect_success 'ref^{/!-}' ' - test_must_fail git rev-parse master^{/!-} + test_must_fail git rev-parse main^{/!-} ' test_expect_success 'ref^{/!-.}' ' - test_must_fail git rev-parse master^{/!-.} + test_must_fail git rev-parse main^{/!-.} ' test_expect_success 'ref^{/!-non-existent}' ' - git rev-parse master >expected && - git rev-parse master^{/!-non-existent} >actual && + git rev-parse main >expected && + git rev-parse main^{/!-non-existent} >actual && test_cmp expected actual ' test_expect_success 'ref^{/!-Changed}' ' git rev-parse expref >expected && - git rev-parse master^{/!-Changed} >actual && + git rev-parse main^{/!-Changed} >actual && test_cmp expected actual ' diff --git a/t/t1512-rev-parse-disambiguation.sh b/t/t1512-rev-parse-disambiguation.sh index 18fa6cf40d..242abbfa0b 100755 --- a/t/t1512-rev-parse-disambiguation.sh +++ b/t/t1512-rev-parse-disambiguation.sh @@ -20,6 +20,9 @@ one tagged as v1.0.0. They all have one regular file each. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh if ! test_have_prereq SHA1 @@ -48,7 +51,7 @@ test_expect_success 'blob and tree' ' test_expect_success 'warn ambiguity when no candidate matches type hint' ' test_must_fail git rev-parse --verify 000000000^{commit} 2>actual && - test_i18ngrep "short SHA1 000000000 is ambiguous" actual + test_i18ngrep "short object ID 000000000 is ambiguous" actual ' test_expect_success 'disambiguate tree-ish' ' @@ -212,7 +215,7 @@ test_expect_success 'more history' ' side=$(git rev-parse HEAD) && # commit 000000000066 - git checkout master && + git checkout main && # If you use recursive, merge will fail and you will need to # clean up a0blgqsjc as well. If you use resolve, merge will diff --git a/t/t1513-rev-parse-prefix.sh b/t/t1513-rev-parse-prefix.sh index 87ec3ae714..5f437be8c9 100755 --- a/t/t1513-rev-parse-prefix.sh +++ b/t/t1513-rev-parse-prefix.sh @@ -2,6 +2,9 @@ test_description='Tests for rev-parse --prefix' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -76,9 +79,9 @@ test_expect_success 'disambiguate path with valid prefix' ' ' test_expect_success 'file and refs with prefix' ' - git rev-parse --prefix sub1/ master file1 >actual && + git rev-parse --prefix sub1/ main file1 >actual && cat <<-EOF >expected && - $(git rev-parse master) + $(git rev-parse main) sub1/file1 EOF test_cmp expected actual diff --git a/t/t1514-rev-parse-push.sh b/t/t1514-rev-parse-push.sh index 788cc91e45..d868a08110 100755 --- a/t/t1514-rev-parse-push.sh +++ b/t/t1514-rev-parse-push.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test <branch>@{push} syntax' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh resolve () { @@ -16,24 +19,24 @@ test_expect_success 'setup' ' git remote add other other.git && test_commit base && git push origin HEAD && - git branch --set-upstream-to=origin/master master && - git branch --track topic origin/master && + git branch --set-upstream-to=origin/main main && + git branch --track topic origin/main && git push origin topic && git push other topic ' test_expect_success '@{push} with default=nothing' ' test_config push.default nothing && - test_must_fail git rev-parse master@{push} && - test_must_fail git rev-parse master@{PUSH} && - test_must_fail git rev-parse master@{PuSH} + test_must_fail git rev-parse main@{push} && + test_must_fail git rev-parse main@{PUSH} && + test_must_fail git rev-parse main@{PuSH} ' test_expect_success '@{push} with default=simple' ' test_config push.default simple && - resolve master@{push} refs/remotes/origin/master && - resolve master@{PUSH} refs/remotes/origin/master && - resolve master@{pUSh} refs/remotes/origin/master + resolve main@{push} refs/remotes/origin/main && + resolve main@{PUSH} refs/remotes/origin/main && + resolve main@{pUSh} refs/remotes/origin/main ' test_expect_success 'triangular @{push} fails with default=simple' ' diff --git a/t/t1700-split-index.sh b/t/t1700-split-index.sh index 12a5568844..986baa612e 100755 --- a/t/t1700-split-index.sh +++ b/t/t1700-split-index.sh @@ -2,6 +2,9 @@ test_description='split index mode tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # We need total control of index splitting here @@ -496,7 +499,7 @@ test_expect_success 'do not refresh null base index' ' test_commit initial && git checkout -b side-branch && test_commit extra && - git checkout master && + git checkout main && git update-index --split-index && test_commit more && # must not write a new shareindex, or we wont catch the problem diff --git a/t/t2007-checkout-symlink.sh b/t/t2007-checkout-symlink.sh index fc9aad530e..6f0b90ce12 100755 --- a/t/t2007-checkout-symlink.sh +++ b/t/t2007-checkout-symlink.sh @@ -4,6 +4,9 @@ test_description='git checkout to switch between branches with symlink<->dir' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -12,14 +15,14 @@ test_expect_success setup ' echo hello >frotz/filfre && git add frotz/filfre && test_tick && - git commit -m "master has file frotz/filfre" && + git commit -m "main has file frotz/filfre" && git branch side && echo goodbye >nitfol && git add nitfol && test_tick && - git commit -m "master adds file nitfol" && + git commit -m "main adds file nitfol" && git checkout side && @@ -34,13 +37,13 @@ test_expect_success setup ' test_expect_success 'switch from symlink to dir' ' - git checkout master + git checkout main ' -test_expect_success 'Remove temporary directories & switch to master' ' +test_expect_success 'Remove temporary directories & switch to main' ' rm -fr frotz xyzzy nitfol && - git checkout -f master + git checkout -f main ' test_expect_success 'switch from dir to symlink' ' diff --git a/t/t2009-checkout-statinfo.sh b/t/t2009-checkout-statinfo.sh index f3c2152087..b0540636ae 100755 --- a/t/t2009-checkout-statinfo.sh +++ b/t/t2009-checkout-statinfo.sh @@ -2,6 +2,9 @@ test_description='checkout should leave clean stat info' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -21,13 +24,13 @@ test_expect_success 'branch switching' ' git reset --hard && test "$(git diff-files --raw)" = "" && - git checkout master && + git checkout main && test "$(git diff-files --raw)" = "" && git checkout side && test "$(git diff-files --raw)" = "" && - git checkout master && + git checkout main && test "$(git diff-files --raw)" = "" ' @@ -37,13 +40,13 @@ test_expect_success 'path checkout' ' git reset --hard && test "$(git diff-files --raw)" = "" && - git checkout master world && + git checkout main world && test "$(git diff-files --raw)" = "" && git checkout side world && test "$(git diff-files --raw)" = "" && - git checkout master world && + git checkout main world && test "$(git diff-files --raw)" = "" ' diff --git a/t/t2010-checkout-ambiguous.sh b/t/t2010-checkout-ambiguous.sh index 2e47fe01cf..6e8757387d 100755 --- a/t/t2010-checkout-ambiguous.sh +++ b/t/t2010-checkout-ambiguous.sh @@ -2,6 +2,9 @@ test_description='checkout and pathspecs/refspecs ambiguities' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -17,7 +20,7 @@ test_expect_success 'reference must be a tree' ' ' test_expect_success 'branch switching' ' - test "refs/heads/master" = "$(git symbolic-ref HEAD)" && + test "refs/heads/main" = "$(git symbolic-ref HEAD)" && git checkout world -- && test "refs/heads/world" = "$(git symbolic-ref HEAD)" ' @@ -57,7 +60,7 @@ test_expect_success 'disambiguate checking out from a tree-ish' ' ' test_expect_success 'accurate error message with more than one ref' ' - test_must_fail git checkout HEAD master -- 2>actual && + test_must_fail git checkout HEAD main -- 2>actual && test_i18ngrep 2 actual && test_i18ngrep "one reference expected, 2 given" actual ' diff --git a/t/t2011-checkout-invalid-head.sh b/t/t2011-checkout-invalid-head.sh index 0e8d56aa76..e52022e152 100755 --- a/t/t2011-checkout-invalid-head.sh +++ b/t/t2011-checkout-invalid-head.sh @@ -2,6 +2,9 @@ test_description='checkout switching away from an invalid branch' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -11,12 +14,12 @@ test_expect_success 'setup' ' ' test_expect_success 'checkout should not start branch from a tree' ' - test_must_fail git checkout -b newbranch master^{tree} + test_must_fail git checkout -b newbranch main^{tree} ' -test_expect_success 'checkout master from invalid HEAD' ' +test_expect_success 'checkout main from invalid HEAD' ' echo $ZERO_OID >.git/HEAD && - git checkout master -- + git checkout main -- ' test_expect_success 'checkout notices failure to lock HEAD' ' @@ -26,7 +29,7 @@ test_expect_success 'checkout notices failure to lock HEAD' ' ' test_expect_success 'create ref directory/file conflict scenario' ' - git update-ref refs/heads/outer/inner master && + git update-ref refs/heads/outer/inner main && # do not rely on symbolic-ref to get a known state, # as it may use the same code we are testing @@ -37,12 +40,12 @@ test_expect_success 'create ref directory/file conflict scenario' ' test_expect_success 'checkout away from d/f HEAD (unpacked, to branch)' ' reset_to_df && - git checkout master + git checkout main ' test_expect_success 'checkout away from d/f HEAD (unpacked, to detached)' ' reset_to_df && - git checkout --detach master + git checkout --detach main ' test_expect_success 'pack refs' ' @@ -51,11 +54,11 @@ test_expect_success 'pack refs' ' test_expect_success 'checkout away from d/f HEAD (packed, to branch)' ' reset_to_df && - git checkout master + git checkout main ' test_expect_success 'checkout away from d/f HEAD (packed, to detached)' ' reset_to_df && - git checkout --detach master + git checkout --detach main ' test_done diff --git a/t/t2012-checkout-last.sh b/t/t2012-checkout-last.sh index e7ba8c505f..0e7d47ab31 100755 --- a/t/t2012-checkout-last.sh +++ b/t/t2012-checkout-last.sh @@ -2,16 +2,15 @@ test_description='checkout can switch to last branch and merge base' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' - echo hello >world && - git add world && - git commit -m initial && + test_commit initial world hello && git branch other && - echo "hello again" >>world && - git add world && - git commit -m second + test_commit --append second world "hello again" ' test_expect_success '"checkout -" does not work initially' ' @@ -24,7 +23,7 @@ test_expect_success 'first branch switch' ' test_expect_success '"checkout -" switches back' ' git checkout - && - test "z$(git symbolic-ref HEAD)" = "zrefs/heads/master" + test "z$(git symbolic-ref HEAD)" = "zrefs/heads/main" ' test_expect_success '"checkout -" switches forth' ' @@ -93,61 +92,59 @@ test_expect_success 'switch to twelfth from the last' ' test_expect_success 'merge base test setup' ' git checkout -b another other && - echo "hello again" >>world && - git add world && - git commit -m third + test_commit --append third world "hello again" ' -test_expect_success 'another...master' ' +test_expect_success 'another...main' ' git checkout another && - git checkout another...master && - test "z$(git rev-parse --verify HEAD)" = "z$(git rev-parse --verify master^)" + git checkout another...main && + test "z$(git rev-parse --verify HEAD)" = "z$(git rev-parse --verify main^)" ' -test_expect_success '...master' ' +test_expect_success '...main' ' git checkout another && - git checkout ...master && - test "z$(git rev-parse --verify HEAD)" = "z$(git rev-parse --verify master^)" + git checkout ...main && + test "z$(git rev-parse --verify HEAD)" = "z$(git rev-parse --verify main^)" ' -test_expect_success 'master...' ' +test_expect_success 'main...' ' git checkout another && - git checkout master... && - test "z$(git rev-parse --verify HEAD)" = "z$(git rev-parse --verify master^)" + git checkout main... && + test "z$(git rev-parse --verify HEAD)" = "z$(git rev-parse --verify main^)" ' test_expect_success '"checkout -" works after a rebase A' ' - git checkout master && + git checkout main && git checkout other && - git rebase master && + git rebase main && git checkout - && - test "z$(git symbolic-ref HEAD)" = "zrefs/heads/master" + test "z$(git symbolic-ref HEAD)" = "zrefs/heads/main" ' test_expect_success '"checkout -" works after a rebase A B' ' - git branch moodle master~1 && - git checkout master && + git branch moodle main~1 && + git checkout main && git checkout other && - git rebase master moodle && + git rebase main moodle && git checkout - && - test "z$(git symbolic-ref HEAD)" = "zrefs/heads/master" + test "z$(git symbolic-ref HEAD)" = "zrefs/heads/main" ' test_expect_success '"checkout -" works after a rebase -i A' ' - git checkout master && + git checkout main && git checkout other && - git rebase -i master && + git rebase -i main && git checkout - && - test "z$(git symbolic-ref HEAD)" = "zrefs/heads/master" + test "z$(git symbolic-ref HEAD)" = "zrefs/heads/main" ' test_expect_success '"checkout -" works after a rebase -i A B' ' - git branch foodle master~1 && - git checkout master && + git branch foodle main~1 && + git checkout main && git checkout other && - git rebase master foodle && + git rebase main foodle && git checkout - && - test "z$(git symbolic-ref HEAD)" = "zrefs/heads/master" + test "z$(git symbolic-ref HEAD)" = "zrefs/heads/main" ' test_done diff --git a/t/t2015-checkout-unborn.sh b/t/t2015-checkout-unborn.sh index 37bdcedcc9..a9721215fa 100755 --- a/t/t2015-checkout-unborn.sh +++ b/t/t2015-checkout-unborn.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='checkout from unborn branch' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -11,7 +14,7 @@ test_expect_success 'setup' ' git add file && git commit -m base ) && - git fetch parent master:origin + git fetch parent main:origin ' test_expect_success 'checkout from unborn preserves untracked files' ' diff --git a/t/t2017-checkout-orphan.sh b/t/t2017-checkout-orphan.sh index 655f278c5f..c7adbdd39a 100755 --- a/t/t2017-checkout-orphan.sh +++ b/t/t2017-checkout-orphan.sh @@ -7,6 +7,9 @@ test_description='git checkout --orphan Main Tests for --orphan functionality.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh TEST_FILE=foo @@ -29,34 +32,34 @@ test_expect_success '--orphan creates a new orphan branch from HEAD' ' test_tick && git commit -m "Third Commit" && test_must_fail git rev-parse --verify HEAD^ && - git diff-tree --quiet master alpha + git diff-tree --quiet main alpha ' test_expect_success '--orphan creates a new orphan branch from <start_point>' ' - git checkout master && - git checkout --orphan beta master^ && + git checkout main && + git checkout --orphan beta main^ && test_must_fail git rev-parse --verify HEAD && test "refs/heads/beta" = "$(git symbolic-ref HEAD)" && test_tick && git commit -m "Fourth Commit" && test_must_fail git rev-parse --verify HEAD^ && - git diff-tree --quiet master^ beta + git diff-tree --quiet main^ beta ' test_expect_success '--orphan must be rejected with -b' ' - git checkout master && + git checkout main && test_must_fail git checkout --orphan new -b newer && - test refs/heads/master = "$(git symbolic-ref HEAD)" + test refs/heads/main = "$(git symbolic-ref HEAD)" ' test_expect_success '--orphan must be rejected with -t' ' - git checkout master && - test_must_fail git checkout --orphan new -t master && - test refs/heads/master = "$(git symbolic-ref HEAD)" + git checkout main && + test_must_fail git checkout --orphan new -t main && + test refs/heads/main = "$(git symbolic-ref HEAD)" ' test_expect_success '--orphan ignores branch.autosetupmerge' ' - git checkout master && + git checkout main && git config branch.autosetupmerge always && git checkout --orphan gamma && test -z "$(git config branch.gamma.merge)" && @@ -65,7 +68,7 @@ test_expect_success '--orphan ignores branch.autosetupmerge' ' ' test_expect_success '--orphan makes reflog by default' ' - git checkout master && + git checkout main && git config --unset core.logAllRefUpdates && git checkout --orphan delta && test_must_fail git rev-parse --verify delta@{0} && @@ -74,7 +77,7 @@ test_expect_success '--orphan makes reflog by default' ' ' test_expect_success '--orphan does not make reflog when core.logAllRefUpdates = false' ' - git checkout master && + git checkout main && git config core.logAllRefUpdates false && git checkout --orphan epsilon && test_must_fail git rev-parse --verify epsilon@{0} && @@ -83,7 +86,7 @@ test_expect_success '--orphan does not make reflog when core.logAllRefUpdates = ' test_expect_success '--orphan with -l makes reflog when core.logAllRefUpdates = false' ' - git checkout master && + git checkout main && git checkout -l --orphan zeta && test_must_fail git rev-parse --verify zeta@{0} && git commit -m Zeta && @@ -91,33 +94,33 @@ test_expect_success '--orphan with -l makes reflog when core.logAllRefUpdates = ' test_expect_success 'giving up --orphan not committed when -l and core.logAllRefUpdates = false deletes reflog' ' - git checkout master && + git checkout main && git checkout -l --orphan eta && test_must_fail git rev-parse --verify eta@{0} && - git checkout master && + git checkout main && test_must_fail git rev-parse --verify eta@{0} ' test_expect_success '--orphan is rejected with an existing name' ' - git checkout master && - test_must_fail git checkout --orphan master && - test refs/heads/master = "$(git symbolic-ref HEAD)" + git checkout main && + test_must_fail git checkout --orphan main && + test refs/heads/main = "$(git symbolic-ref HEAD)" ' test_expect_success '--orphan refuses to switch if a merge is needed' ' - git checkout master && + git checkout main && git reset --hard && echo local >>"$TEST_FILE" && cat "$TEST_FILE" >"$TEST_FILE.saved" && - test_must_fail git checkout --orphan new master^ && - test refs/heads/master = "$(git symbolic-ref HEAD)" && + test_must_fail git checkout --orphan new main^ && + test refs/heads/main = "$(git symbolic-ref HEAD)" && test_cmp "$TEST_FILE" "$TEST_FILE.saved" && git diff-index --quiet --cached HEAD && git reset --hard ' test_expect_success 'cannot --detach on an unborn branch' ' - git checkout master && + git checkout main && git checkout --orphan new && test_must_fail git checkout --detach ' diff --git a/t/t2020-checkout-detach.sh b/t/t2020-checkout-detach.sh index b748db9946..b432b6427b 100755 --- a/t/t2020-checkout-detach.sh +++ b/t/t2020-checkout-detach.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='checkout into detached HEAD state' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_detached () { @@ -22,7 +25,7 @@ check_no_orphan_warning() { } reset () { - git checkout master && + git checkout main && check_not_detached } @@ -85,7 +88,7 @@ test_expect_success 'checkout --detach errors out for non-commit' ' test_expect_success 'checkout --detach errors out for extra argument' ' reset && - git checkout master && + git checkout main && test_must_fail git checkout --detach tag one.t && check_not_detached ' @@ -113,7 +116,7 @@ test_expect_success 'checkout warns on orphan commits' ' echo new content >orphan && git commit -a -m orphan2 && orphan2=$(git rev-parse HEAD) && - git checkout master 2>stderr + git checkout main 2>stderr ' test_expect_success 'checkout warns on orphan commits: output' ' @@ -132,7 +135,7 @@ test_expect_success 'checkout warns orphaning 1 of 2 commits: output' ' test_expect_success 'checkout does not warn leaving ref tip' ' reset && git checkout --detach two && - git checkout master 2>stderr + git checkout main 2>stderr ' test_expect_success 'checkout does not warn leaving ref tip' ' @@ -142,7 +145,7 @@ test_expect_success 'checkout does not warn leaving ref tip' ' test_expect_success 'checkout does not warn leaving reachable commit' ' reset && git checkout --detach HEAD^ && - git checkout master 2>stderr + git checkout main 2>stderr ' test_expect_success 'checkout does not warn leaving reachable commit' ' @@ -150,14 +153,14 @@ test_expect_success 'checkout does not warn leaving reachable commit' ' ' cat >expect <<'EOF' -Your branch is behind 'master' by 1 commit, and can be fast-forwarded. +Your branch is behind 'main' by 1 commit, and can be fast-forwarded. (use "git pull" to update your local branch) EOF test_expect_success 'tracking count is accurate after orphan check' ' reset && - git branch child master^ && + git branch child main^ && git config branch.child.remote . && - git config branch.child.merge refs/heads/master && + git config branch.child.merge refs/heads/main && git checkout child^ && git checkout child >stdout && test_i18ncmp expect stdout @@ -189,9 +192,9 @@ test_expect_success 'no advice given for explicit detached head state' ' # Detached HEAD tests for GIT_PRINT_SHA1_ELLIPSIS (new format) test_expect_success 'describe_detached_head prints no SHA-1 ellipsis when not asked to' " - commit=$(git rev-parse --short=12 master^) && - commit2=$(git rev-parse --short=12 master~2) && - commit3=$(git rev-parse --short=12 master~3) && + commit=$(git rev-parse --short=12 main^) && + commit2=$(git rev-parse --short=12 main~2) && + commit3=$(git rev-parse --short=12 main~3) && # The first detach operation is more chatty than the following ones. cat >1st_detach <<-EOF && @@ -271,9 +274,9 @@ test_expect_success 'describe_detached_head prints no SHA-1 ellipsis when not as # Detached HEAD tests for GIT_PRINT_SHA1_ELLIPSIS (old format) test_expect_success 'describe_detached_head does print SHA-1 ellipsis when asked to' " - commit=$(git rev-parse --short=12 master^) && - commit2=$(git rev-parse --short=12 master~2) && - commit3=$(git rev-parse --short=12 master~3) && + commit=$(git rev-parse --short=12 main^) && + commit2=$(git rev-parse --short=12 main~2) && + commit3=$(git rev-parse --short=12 main~3) && # The first detach operation is more chatty than the following ones. cat >1st_detach <<-EOF && diff --git a/t/t2022-checkout-paths.sh b/t/t2022-checkout-paths.sh index 6844afafc0..c49ba7f9bd 100755 --- a/t/t2022-checkout-paths.sh +++ b/t/t2022-checkout-paths.sh @@ -1,19 +1,22 @@ #!/bin/sh test_description='checkout $tree -- $paths' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' mkdir dir && - >dir/master && + >dir/main && echo common >dir/common && - git add dir/master dir/common && - test_tick && git commit -m "master has dir/master" && + git add dir/main dir/common && + test_tick && git commit -m "main has dir/main" && git checkout -b next && - git mv dir/master dir/next0 && + git mv dir/main dir/next0 && echo next >dir/next1 && git add dir && - test_tick && git commit -m "next has dir/next but not dir/master" + test_tick && git commit -m "next has dir/next but not dir/main" ' test_expect_success 'checking out paths out of a tree does not clobber unrelated paths' ' @@ -26,11 +29,11 @@ test_expect_success 'checking out paths out of a tree does not clobber unrelated echo untracked >expect.next2 && cat expect.next2 >dir/next2 && - git checkout master dir && + git checkout main dir && test_cmp expect.common dir/common && - test_path_is_file dir/master && - git diff --exit-code master dir/master && + test_path_is_file dir/main && + git diff --exit-code main dir/main && test_path_is_missing dir/next0 && test_cmp expect.next1 dir/next1 && @@ -52,11 +55,11 @@ test_expect_success 'do not touch unmerged entries matching $path but not in $tr EOF git update-index --index-info <expect.next0 && - git checkout master dir && + git checkout main dir && test_cmp expect.common dir/common && - test_path_is_file dir/master && - git diff --exit-code master dir/master && + test_path_is_file dir/main && + git diff --exit-code main dir/main && git ls-files -s dir/next0 >actual.next0 && test_cmp expect.next0 actual.next0 ' diff --git a/t/t2023-checkout-m.sh b/t/t2023-checkout-m.sh index fca3f85824..7b327b7544 100755 --- a/t/t2023-checkout-m.sh +++ b/t/t2023-checkout-m.sh @@ -4,21 +4,24 @@ test_description='checkout -m -- <conflicted path> Ensures that checkout -m on a resolved file restores the conflicted file' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' test_tick && test_commit both.txt both.txt initial && git branch topic && - test_commit modified_in_master both.txt in_master && - test_commit added_in_master each.txt in_master && + test_commit modified_in_main both.txt in_main && + test_commit added_in_main each.txt in_main && git checkout topic && test_commit modified_in_topic both.txt in_topic && test_commit added_in_topic each.txt in_topic ' -test_expect_success 'git merge master' ' - test_must_fail git merge master +test_expect_success 'git merge main' ' + test_must_fail git merge main ' clean_branchnames () { @@ -61,7 +64,7 @@ test_expect_success 'force checkout a conflict file creates stage zero entry' ' git checkout topic && echo c >a && C_OBJ=$(git hash-object a) && - git checkout -m master && + git checkout -m main && test_cmp_rev :1:a $A_OBJ && test_cmp_rev :2:a $B_OBJ && test_cmp_rev :3:a $C_OBJ && diff --git a/t/t2024-checkout-dwim.sh b/t/t2024-checkout-dwim.sh index a4f8d3a67e..4a1c901456 100755 --- a/t/t2024-checkout-dwim.sh +++ b/t/t2024-checkout-dwim.sh @@ -29,11 +29,11 @@ status_uno_is_clean () { } test_expect_success 'setup' ' - test_commit my_master && + test_commit my_main && git init repo_a && ( cd repo_a && - test_commit a_master && + test_commit a_main && git checkout -b foo && test_commit a_foo && git checkout -b bar && @@ -44,7 +44,7 @@ test_expect_success 'setup' ' git init repo_b && ( cd repo_b && - test_commit b_master && + test_commit b_main && git checkout -b foo && test_commit b_foo && git checkout -b baz && @@ -60,23 +60,23 @@ test_expect_success 'setup' ' ' test_expect_success 'checkout of non-existing branch fails' ' - git checkout -B master && + git checkout -B main && test_might_fail git branch -D xyzzy && test_must_fail git checkout xyzzy && status_uno_is_clean && test_must_fail git rev-parse --verify refs/heads/xyzzy && - test_branch master + test_branch main ' test_expect_success 'checkout of branch from multiple remotes fails #1' ' - git checkout -B master && + git checkout -B main && test_might_fail git branch -D foo && test_must_fail git checkout foo && status_uno_is_clean && test_must_fail git rev-parse --verify refs/heads/foo && - test_branch master + test_branch main ' test_expect_success 'when arg matches multiple remotes, do not fallback to interpreting as pathspec' ' @@ -100,21 +100,21 @@ test_expect_success 'when arg matches multiple remotes, do not fallback to inter ' test_expect_success 'checkout of branch from multiple remotes fails with advice' ' - git checkout -B master && + git checkout -B main && test_might_fail git branch -D foo && test_must_fail git checkout foo 2>stderr && - test_branch master && + test_branch main && status_uno_is_clean && test_i18ngrep "^hint: " stderr && test_must_fail git -c advice.checkoutAmbiguousRemoteBranchName=false \ checkout foo 2>stderr && - test_branch master && + test_branch main && status_uno_is_clean && test_i18ngrep ! "^hint: " stderr ' test_expect_success PERL 'checkout -p with multiple remotes does not print advice' ' - git checkout -B master && + git checkout -B main && test_might_fail git branch -D foo && git checkout -p foo 2>stderr && @@ -123,7 +123,7 @@ test_expect_success PERL 'checkout -p with multiple remotes does not print advic ' test_expect_success 'checkout of branch from multiple remotes succeeds with checkout.defaultRemote #1' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D foo && @@ -135,7 +135,7 @@ test_expect_success 'checkout of branch from multiple remotes succeeds with chec ' test_expect_success 'checkout of branch from a single remote succeeds #1' ' - git checkout -B master && + git checkout -B main && test_might_fail git branch -D bar && git checkout bar && @@ -146,7 +146,7 @@ test_expect_success 'checkout of branch from a single remote succeeds #1' ' ' test_expect_success 'checkout of branch from a single remote succeeds #2' ' - git checkout -B master && + git checkout -B main && test_might_fail git branch -D baz && git checkout baz && @@ -157,33 +157,33 @@ test_expect_success 'checkout of branch from a single remote succeeds #2' ' ' test_expect_success '--no-guess suppresses branch auto-vivification' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D bar && test_must_fail git checkout --no-guess bar && test_must_fail git rev-parse --verify refs/heads/bar && - test_branch master + test_branch main ' test_expect_success 'checkout.guess = false suppresses branch auto-vivification' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D bar && test_config checkout.guess false && test_must_fail git checkout bar && test_must_fail git rev-parse --verify refs/heads/bar && - test_branch master + test_branch main ' test_expect_success 'setup more remotes with unconventional refspecs' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && git init repo_c && ( cd repo_c && - test_commit c_master && + test_commit c_main && git checkout -b bar && test_commit c_bar && git checkout -b spam && @@ -192,7 +192,7 @@ test_expect_success 'setup more remotes with unconventional refspecs' ' git init repo_d && ( cd repo_d && - test_commit d_master && + test_commit d_main && git checkout -b baz && test_commit d_baz && git checkout -b eggs && @@ -208,29 +208,29 @@ test_expect_success 'setup more remotes with unconventional refspecs' ' ' test_expect_success 'checkout of branch from multiple remotes fails #2' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D bar && test_must_fail git checkout bar && status_uno_is_clean && test_must_fail git rev-parse --verify refs/heads/bar && - test_branch master + test_branch main ' test_expect_success 'checkout of branch from multiple remotes fails #3' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D baz && test_must_fail git checkout baz && status_uno_is_clean && test_must_fail git rev-parse --verify refs/heads/baz && - test_branch master + test_branch main ' test_expect_success 'checkout of branch from a single remote succeeds #3' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D spam && @@ -242,7 +242,7 @@ test_expect_success 'checkout of branch from a single remote succeeds #3' ' ' test_expect_success 'checkout of branch from a single remote succeeds #4' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D eggs && @@ -254,7 +254,7 @@ test_expect_success 'checkout of branch from a single remote succeeds #4' ' ' test_expect_success 'checkout of branch with a file having the same name fails' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D spam && @@ -262,11 +262,11 @@ test_expect_success 'checkout of branch with a file having the same name fails' test_must_fail git checkout spam && status_uno_is_clean && test_must_fail git rev-parse --verify refs/heads/spam && - test_branch master + test_branch main ' test_expect_success 'checkout of branch with a file in subdir having the same name fails' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D spam && @@ -276,11 +276,11 @@ test_expect_success 'checkout of branch with a file in subdir having the same na test_must_fail git -C sub checkout spam && status_uno_is_clean && test_must_fail git rev-parse --verify refs/heads/spam && - test_branch master + test_branch main ' test_expect_success 'checkout <branch> -- succeeds, even if a file with the same name exists' ' - git checkout -B master && + git checkout -B main && status_uno_is_clean && test_might_fail git branch -D spam && @@ -294,7 +294,7 @@ test_expect_success 'checkout <branch> -- succeeds, even if a file with the same test_expect_success 'loosely defined local base branch is reported correctly' ' - git checkout master && + git checkout main && status_uno_is_clean && git branch strict && git branch loose && @@ -302,8 +302,8 @@ test_expect_success 'loosely defined local base branch is reported correctly' ' test_config branch.strict.remote . && test_config branch.loose.remote . && - test_config branch.strict.merge refs/heads/master && - test_config branch.loose.merge master && + test_config branch.strict.merge refs/heads/main && + test_config branch.loose.merge main && git checkout strict | sed -e "s/strict/BRANCHNAME/g" >expect && status_uno_is_clean && diff --git a/t/t2027-checkout-track.sh b/t/t2027-checkout-track.sh index bcba1bf90c..4453741b96 100755 --- a/t/t2027-checkout-track.sh +++ b/t/t2027-checkout-track.sh @@ -2,6 +2,9 @@ test_description='tests for git branch --track' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -10,14 +13,14 @@ test_expect_success 'setup' ' ' test_expect_success 'checkout --track -b creates a new tracking branch' ' - git checkout --track -b branch1 master && + git checkout --track -b branch1 main && test $(git rev-parse --abbrev-ref HEAD) = branch1 && test $(git config --get branch.branch1.remote) = . && - test $(git config --get branch.branch1.merge) = refs/heads/master + test $(git config --get branch.branch1.merge) = refs/heads/main ' test_expect_success 'checkout --track -b rejects an extra path argument' ' - test_must_fail git checkout --track -b branch2 master one.t 2>err && + test_must_fail git checkout --track -b branch2 main one.t 2>err && test_i18ngrep "cannot be used with updating paths" err ' diff --git a/t/t2030-unresolve-info.sh b/t/t2030-unresolve-info.sh index 309199bca2..be6c84c52a 100755 --- a/t/t2030-unresolve-info.sh +++ b/t/t2030-unresolve-info.sh @@ -2,6 +2,9 @@ test_description='undoing resolution' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_resolve_undo () { @@ -59,7 +62,7 @@ test_expect_success setup ' test_commit fourth fi/le fourth && git checkout add-add && test_commit fifth add-differently && - git checkout master + git checkout main ' test_expect_success 'add records switch clears' ' @@ -183,8 +186,8 @@ test_expect_success 'rerere forget (binary)' ' ' test_expect_success 'rerere forget (add-add conflict)' ' - git checkout -f master && - echo master >add-differently && + git checkout -f main && + echo main >add-differently && git add add-differently && git commit -m "add differently" && test_must_fail git merge fifth && diff --git a/t/t2060-switch.sh b/t/t2060-switch.sh index 68c9101b02..9bc6a3aa5c 100755 --- a/t/t2060-switch.sh +++ b/t/t2060-switch.sh @@ -2,6 +2,9 @@ test_description='switch basic functionality' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -23,41 +26,41 @@ test_expect_success 'switch branch' ' ' test_expect_success 'switch and detach' ' - test_when_finished git switch master && - test_must_fail git switch master^{commit} && - git switch --detach master^{commit} && + test_when_finished git switch main && + test_must_fail git switch main^{commit} && + git switch --detach main^{commit} && test_must_fail git symbolic-ref HEAD ' test_expect_success 'switch and detach current branch' ' - test_when_finished git switch master && - git switch master && + test_when_finished git switch main && + git switch main && git switch --detach && test_must_fail git symbolic-ref HEAD ' test_expect_success 'switch and create branch' ' - test_when_finished git switch master && - git switch -c temp master^ && - test_cmp_rev master^ refs/heads/temp && + test_when_finished git switch main && + git switch -c temp main^ && + test_cmp_rev main^ refs/heads/temp && echo refs/heads/temp >expected-branch && git symbolic-ref HEAD >actual-branch && test_cmp expected-branch actual-branch ' test_expect_success 'force create branch from HEAD' ' - test_when_finished git switch master && - git switch --detach master && + test_when_finished git switch main && + git switch --detach main && test_must_fail git switch -c temp && git switch -C temp && - test_cmp_rev master refs/heads/temp && + test_cmp_rev main refs/heads/temp && echo refs/heads/temp >expected-branch && git symbolic-ref HEAD >actual-branch && test_cmp expected-branch actual-branch ' test_expect_success 'new orphan branch from empty' ' - test_when_finished git switch master && + test_when_finished git switch main && test_must_fail git switch --orphan new-orphan HEAD && git switch --orphan new-orphan && test_commit orphan && @@ -69,7 +72,7 @@ test_expect_success 'new orphan branch from empty' ' ' test_expect_success 'orphan branch works with --discard-changes' ' - test_when_finished git switch master && + test_when_finished git switch main && echo foo >foo.txt && git switch --discard-changes --orphan new-orphan2 && git ls-files >tracked-files && @@ -77,7 +80,7 @@ test_expect_success 'orphan branch works with --discard-changes' ' ' test_expect_success 'switching ignores file of same branch name' ' - test_when_finished git switch master && + test_when_finished git switch main && : >first-branch && git switch first-branch && echo refs/heads/first-branch >expected && @@ -86,7 +89,7 @@ test_expect_success 'switching ignores file of same branch name' ' ' test_expect_success 'guess and create branch' ' - test_when_finished git switch master && + test_when_finished git switch main && test_must_fail git switch --no-guess foo && test_config checkout.guess false && test_must_fail git switch foo && diff --git a/t/t2070-restore.sh b/t/t2070-restore.sh index 89e5a142c9..7c43ddf1d9 100755 --- a/t/t2070-restore.sh +++ b/t/t2070-restore.sh @@ -2,6 +2,9 @@ test_description='restore basic functionality' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -15,7 +18,7 @@ test_expect_success 'setup' ' echo ignored >ignored && echo /ignored >.gitignore && git add one two .gitignore && - git update-ref refs/heads/one master + git update-ref refs/heads/one main ' test_expect_success 'restore without pathspec is not ok' ' @@ -91,7 +94,7 @@ test_expect_success 'restore --ignore-unmerged ignores unmerged entries' ' git switch -c first && echo first >unmerged && git commit -am first && - git switch -c second master && + git switch -c second main && echo second >unmerged && git commit -am second && test_must_fail git merge first && diff --git a/t/t2400-worktree-add.sh b/t/t2400-worktree-add.sh index 5a7495474a..96dfca1554 100755 --- a/t/t2400-worktree-add.sh +++ b/t/t2400-worktree-add.sh @@ -2,6 +2,9 @@ test_description='test git worktree add' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh @@ -12,12 +15,12 @@ test_expect_success 'setup' ' test_expect_success '"add" an existing worktree' ' mkdir -p existing/subtree && - test_must_fail git worktree add --detach existing master + test_must_fail git worktree add --detach existing main ' test_expect_success '"add" an existing empty worktree' ' mkdir existing_empty && - git worktree add --detach existing_empty master + git worktree add --detach existing_empty main ' test_expect_success '"add" using shorthand - fails when no previous branch' ' @@ -29,7 +32,7 @@ test_expect_success '"add" using - shorthand' ' echo hello >myworld && git add myworld && git commit -m myworld && - git checkout master && + git checkout main && git worktree add short-hand - && echo refs/heads/newbranch >expect && git -C short-hand rev-parse --symbolic-full-name HEAD >actual && @@ -37,7 +40,7 @@ test_expect_success '"add" using - shorthand' ' ' test_expect_success '"add" refuses to checkout locked branch' ' - test_must_fail git worktree add zere master && + test_must_fail git worktree add zere main && ! test -d zere && ! test -d .git/worktrees/zere ' @@ -46,13 +49,13 @@ test_expect_success 'checking out paths not complaining about linked checkouts' ( cd existing_empty && echo dirty >>init.t && - git checkout master -- init.t + git checkout main -- init.t ) ' test_expect_success '"add" worktree' ' git rev-parse HEAD >expect && - git worktree add --detach here master && + git worktree add --detach here main && ( cd here && test_cmp ../init.t init.t && @@ -65,7 +68,7 @@ test_expect_success '"add" worktree' ' test_expect_success '"add" worktree with lock' ' git rev-parse HEAD >expect && - git worktree add --detach --lock here-with-lock master && + git worktree add --detach --lock here-with-lock main && test -f .git/worktrees/here-with-lock/locked ' @@ -73,7 +76,7 @@ test_expect_success '"add" worktree from a subdir' ' ( mkdir sub && cd sub && - git worktree add --detach here master && + git worktree add --detach here main && cd here && test_cmp ../../init.t init.t ) @@ -82,19 +85,19 @@ test_expect_success '"add" worktree from a subdir' ' test_expect_success '"add" from a linked checkout' ' ( cd here && - git worktree add --detach nested-here master && + git worktree add --detach nested-here main && cd nested-here && git fsck ) ' test_expect_success '"add" worktree creating new branch' ' - git worktree add -b newmaster there master && + git worktree add -b newmain there main && ( cd there && test_cmp ../init.t init.t && git symbolic-ref HEAD >actual && - echo refs/heads/newmaster >expect && + echo refs/heads/newmain >expect && test_cmp expect actual && git fsck ) @@ -103,7 +106,7 @@ test_expect_success '"add" worktree creating new branch' ' test_expect_success 'die the same branch is already checked out' ' ( cd here && - test_must_fail git checkout newmaster + test_must_fail git checkout newmain ) ' @@ -112,20 +115,20 @@ test_expect_success SYMLINKS 'die the same branch is already checked out (symlin ref=$(git -C there symbolic-ref HEAD) && rm "$head" && ln -s "$ref" "$head" && - test_must_fail git -C here checkout newmaster + test_must_fail git -C here checkout newmain ' test_expect_success 'not die the same branch is already checked out' ' ( cd here && - git worktree add --force anothernewmaster newmaster + git worktree add --force anothernewmain newmain ) ' test_expect_success 'not die on re-checking out current branch' ' ( cd there && - git checkout newmaster + git checkout newmain ) ' @@ -133,14 +136,14 @@ test_expect_success '"add" from a bare repo' ' ( git clone --bare . bare && cd bare && - git worktree add -b bare-master ../there2 master + git worktree add -b bare-main ../there2 main ) ' test_expect_success 'checkout from a bare repo without "add"' ' ( cd bare && - test_must_fail git checkout master + test_must_fail git checkout main ) ' @@ -148,7 +151,7 @@ test_expect_success '"add" default branch of a bare repo' ' ( git clone --bare . bare2 && cd bare2 && - git worktree add ../there3 master + git worktree add ../there3 main ) ' @@ -165,7 +168,7 @@ test_expect_success 'checkout with grafts' ' EOF git log --format=%s -2 >actual && test_cmp expected actual && - git worktree add --detach grafted master && + git worktree add --detach grafted main && git --git-dir=grafted/.git log --format=%s -2 >actual && test_cmp expected actual ' @@ -226,34 +229,34 @@ test_expect_success '"add" no auto-vivify with --detach and <branch> omitted' ' ' test_expect_success '"add" -b/-B mutually exclusive' ' - test_must_fail git worktree add -b poodle -B poodle bamboo master + test_must_fail git worktree add -b poodle -B poodle bamboo main ' test_expect_success '"add" -b/--detach mutually exclusive' ' - test_must_fail git worktree add -b poodle --detach bamboo master + test_must_fail git worktree add -b poodle --detach bamboo main ' test_expect_success '"add" -B/--detach mutually exclusive' ' - test_must_fail git worktree add -B poodle --detach bamboo master + test_must_fail git worktree add -B poodle --detach bamboo main ' test_expect_success '"add -B" fails if the branch is checked out' ' - git rev-parse newmaster >before && - test_must_fail git worktree add -B newmaster bamboo master && - git rev-parse newmaster >after && + git rev-parse newmain >before && + test_must_fail git worktree add -B newmain bamboo main && + git rev-parse newmain >after && test_cmp before after ' test_expect_success 'add -B' ' - git worktree add -B poodle bamboo2 master^ && + git worktree add -B poodle bamboo2 main^ && git -C bamboo2 symbolic-ref HEAD >actual && echo refs/heads/poodle >expected && test_cmp expected actual && - test_cmp_rev master^ poodle + test_cmp_rev main^ poodle ' test_expect_success 'add --quiet' ' - git worktree add --quiet another-worktree master 2>actual && + git worktree add --quiet another-worktree main 2>actual && test_must_be_empty actual ' @@ -348,24 +351,24 @@ test_branch_upstream () { test_expect_success '--track sets up tracking' ' test_when_finished rm -rf track && - git worktree add --track -b track track master && - test_branch_upstream track . master + git worktree add --track -b track track main && + test_branch_upstream track . main ' # setup remote repository $1 and repository $2 with $1 set up as -# remote. The remote has two branches, master and foo. +# remote. The remote has two branches, main and foo. setup_remote_repo () { git init $1 && ( cd $1 && - test_commit $1_master && + test_commit $1_main && git checkout -b foo && test_commit upstream_foo ) && git init $2 && ( cd $2 && - test_commit $2_master && + test_commit $2_main && git remote add $1 ../$1 && git config remote.$1.fetch \ "refs/heads/*:refs/remotes/$1/*" && diff --git a/t/t2401-worktree-prune.sh b/t/t2401-worktree-prune.sh index a6ce7f590b..aff877590d 100755 --- a/t/t2401-worktree-prune.sh +++ b/t/t2401-worktree-prune.sh @@ -2,6 +2,9 @@ test_description='prune $GIT_DIR/worktrees' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success initialize ' @@ -87,7 +90,7 @@ test_expect_success 'not prune recent checkouts' ' test_expect_success 'not prune proper checkouts' ' test_when_finished rm -r .git/worktrees && - git worktree add --detach "$PWD/nop" master && + git worktree add --detach "$PWD/nop" main && git worktree prune && test -d .git/worktrees/nop ' diff --git a/t/t2402-worktree-list.sh b/t/t2402-worktree-list.sh index 795ddca2e4..821a20f3d6 100755 --- a/t/t2402-worktree-list.sh +++ b/t/t2402-worktree-list.sh @@ -2,6 +2,9 @@ test_description='test git worktree list' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -21,7 +24,7 @@ test_expect_success 'rev-parse --git-common-dir on main worktree' ' test_expect_success 'rev-parse --git-path objects linked worktree' ' echo "$(git rev-parse --show-toplevel)/.git/objects" >expect && test_when_finished "rm -rf linked-tree actual expect && git worktree prune" && - git worktree add --detach linked-tree master && + git worktree add --detach linked-tree main && git -C linked-tree rev-parse --git-path objects >actual && test_cmp expect actual ' @@ -29,7 +32,7 @@ test_expect_success 'rev-parse --git-path objects linked worktree' ' test_expect_success '"list" all worktrees from main' ' echo "$(git rev-parse --show-toplevel) $(git rev-parse --short HEAD) [$(git symbolic-ref --short HEAD)]" >expect && test_when_finished "rm -rf here out actual expect && git worktree prune" && - git worktree add --detach here master && + git worktree add --detach here main && echo "$(git -C here rev-parse --show-toplevel) $(git rev-parse --short HEAD) (detached HEAD)" >>expect && git worktree list >out && sed "s/ */ /g" <out >actual && @@ -39,7 +42,7 @@ test_expect_success '"list" all worktrees from main' ' test_expect_success '"list" all worktrees from linked' ' echo "$(git rev-parse --show-toplevel) $(git rev-parse --short HEAD) [$(git symbolic-ref --short HEAD)]" >expect && test_when_finished "rm -rf here out actual expect && git worktree prune" && - git worktree add --detach here master && + git worktree add --detach here main && echo "$(git -C here rev-parse --show-toplevel) $(git rev-parse --short HEAD) (detached HEAD)" >>expect && git -C here worktree list >out && sed "s/ */ /g" <out >actual && @@ -52,7 +55,7 @@ test_expect_success '"list" all worktrees --porcelain' ' echo "branch $(git symbolic-ref HEAD)" >>expect && echo >>expect && test_when_finished "rm -rf here actual expect && git worktree prune" && - git worktree add --detach here master && + git worktree add --detach here main && echo "worktree $(git -C here rev-parse --show-toplevel)" >>expect && echo "HEAD $(git rev-parse HEAD)" >>expect && echo "detached" >>expect && @@ -63,8 +66,8 @@ test_expect_success '"list" all worktrees --porcelain' ' test_expect_success '"list" all worktrees with locked annotation' ' test_when_finished "rm -rf locked unlocked out && git worktree prune" && - git worktree add --detach locked master && - git worktree add --detach unlocked master && + git worktree add --detach locked main && + git worktree add --detach unlocked main && git worktree lock locked && git worktree list >out && grep "/locked *[0-9a-f].* locked$" out && @@ -76,13 +79,13 @@ test_expect_success 'bare repo setup' ' echo "data" >file1 && git add file1 && git commit -m"File1: add data" && - git push bare1 master && + git push bare1 main && git reset --hard HEAD^ ' test_expect_success '"list" all worktrees from bare main' ' test_when_finished "rm -rf there out actual expect && git -C bare1 worktree prune" && - git -C bare1 worktree add --detach ../there master && + git -C bare1 worktree add --detach ../there main && echo "$(pwd)/bare1 (bare)" >expect && echo "$(git -C there rev-parse --show-toplevel) $(git -C there rev-parse --short HEAD) (detached HEAD)" >>expect && git -C bare1 worktree list >out && @@ -92,7 +95,7 @@ test_expect_success '"list" all worktrees from bare main' ' test_expect_success '"list" all worktrees --porcelain from bare main' ' test_when_finished "rm -rf there actual expect && git -C bare1 worktree prune" && - git -C bare1 worktree add --detach ../there master && + git -C bare1 worktree add --detach ../there main && echo "worktree $(pwd)/bare1" >expect && echo "bare" >>expect && echo >>expect && @@ -106,7 +109,7 @@ test_expect_success '"list" all worktrees --porcelain from bare main' ' test_expect_success '"list" all worktrees from linked with a bare main' ' test_when_finished "rm -rf there out actual expect && git -C bare1 worktree prune" && - git -C bare1 worktree add --detach ../there master && + git -C bare1 worktree add --detach ../there main && echo "$(pwd)/bare1 (bare)" >expect && echo "$(git -C there rev-parse --show-toplevel) $(git -C there rev-parse --short HEAD) (detached HEAD)" >>expect && git -C there worktree list >out && diff --git a/t/t2405-worktree-submodule.sh b/t/t2405-worktree-submodule.sh index e1b2bfd87e..b172c26ca4 100755 --- a/t/t2405-worktree-submodule.sh +++ b/t/t2405-worktree-submodule.sh @@ -2,6 +2,9 @@ test_description='Combination of submodules and multiple worktrees' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh base_path=$(pwd -P) @@ -31,7 +34,7 @@ test_expect_success 'add superproject worktree' ' ' test_expect_failure 'submodule is checked out just after worktree add' ' - git -C worktree diff --submodule master"^!" >out && + git -C worktree diff --submodule main"^!" >out && grep "file1 updated" out ' @@ -41,7 +44,7 @@ test_expect_success 'add superproject worktree and initialize submodules' ' ' test_expect_success 'submodule is checked out just after submodule update in linked worktree' ' - git -C worktree-submodule-update diff --submodule master"^!" >out && + git -C worktree-submodule-update diff --submodule main"^!" >out && grep "file1 updated" out ' @@ -51,7 +54,7 @@ test_expect_success 'add superproject worktree and manually add submodule worktr ' test_expect_success 'submodule is checked out after manually adding submodule worktree' ' - git -C linked_submodule diff --submodule master"^!" >out && + git -C linked_submodule diff --submodule main"^!" >out && grep "file1 updated" out ' diff --git a/t/t2406-worktree-repair.sh b/t/t2406-worktree-repair.sh index 1fe468bfe8..f73741886b 100755 --- a/t/t2406-worktree-repair.sh +++ b/t/t2406-worktree-repair.sh @@ -104,6 +104,16 @@ test_expect_success 'repo not found; .git not file' ' test_i18ngrep ".git is not a file" err ' +test_expect_success 'repo not found; .git not referencing repo' ' + test_when_finished "rm -rf side not-a-repo && git worktree prune" && + git worktree add --detach side && + sed s,\.git/worktrees/side$,not-a-repo, side/.git >side/.newgit && + mv side/.newgit side/.git && + mkdir not-a-repo && + test_must_fail git worktree repair side 2>err && + test_i18ngrep ".git file does not reference a repository" err +' + test_expect_success 'repo not found; .git file broken' ' test_when_finished "rm -rf orig moved && git worktree prune" && git worktree add --detach orig && @@ -176,4 +186,20 @@ test_expect_success 'repair multiple gitdir files' ' test_must_be_empty err ' +test_expect_success 'repair moved main and linked worktrees' ' + test_when_finished "rm -rf main side mainmoved sidemoved" && + test_create_repo main && + test_commit -C main init && + git -C main worktree add --detach ../side && + sed "s,side/\.git$,sidemoved/.git," \ + main/.git/worktrees/side/gitdir >expect-gitdir && + sed "s,main/.git/worktrees/side$,mainmoved/.git/worktrees/side," \ + side/.git >expect-gitfile && + mv main mainmoved && + mv side sidemoved && + git -C mainmoved worktree repair ../sidemoved && + test_cmp expect-gitdir mainmoved/.git/worktrees/side/gitdir && + test_cmp expect-gitfile sidemoved/.git +' + test_done diff --git a/t/t3200-branch.sh b/t/t3200-branch.sh index 3ec3e1d730..00761e4080 100755 --- a/t/t3200-branch.sh +++ b/t/t3200-branch.sh @@ -5,6 +5,9 @@ test_description='git branch assorted tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh @@ -306,7 +309,9 @@ test_expect_success 'git branch --list -v with --abbrev' ' git branch -v --list --no-abbrev t >actual.noabbrev && git branch -v --list --abbrev=0 t >actual.0abbrev && + git -c core.abbrev=no branch -v --list t >actual.noabbrev-conf && test_cmp actual.noabbrev actual.0abbrev && + test_cmp actual.noabbrev actual.noabbrev-conf && git branch -v --list --abbrev=36 t >actual.36abbrev && # how many hexdigits are used? diff --git a/t/t3201-branch-contains.sh b/t/t3201-branch-contains.sh index 6c1ab69ca6..578b5f4825 100755 --- a/t/t3201-branch-contains.sh +++ b/t/t3201-branch-contains.sh @@ -2,6 +2,9 @@ test_description='branch --contains <commit>, --no-contains <commit> --merged, and --no-merged' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' diff --git a/t/t3202-show-branch-octopus.sh b/t/t3202-show-branch-octopus.sh index 6adf47869c..5cb0126cfe 100755 --- a/t/t3202-show-branch-octopus.sh +++ b/t/t3202-show-branch-octopus.sh @@ -2,6 +2,9 @@ test_description='test show-branch with more than 8 heads' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh numbers="1 2 3 4 5 6 7 8 9 10" @@ -15,7 +18,7 @@ test_expect_success 'setup' ' for i in $numbers do - git checkout -b branch$i master && + git checkout -b branch$i main && > file$i && git add file$i && test_tick && diff --git a/t/t3203-branch-output.sh b/t/t3203-branch-output.sh index b945faf470..b6fcd017af 100755 --- a/t/t3203-branch-output.sh +++ b/t/t3203-branch-output.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git branch display tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-terminal.sh @@ -210,7 +213,7 @@ EOF test_i18ncmp expect actual ' -test_expect_success 'git branch `--sort` option' ' +test_expect_success 'git branch `--sort=[-]objectsize` option' ' cat >expect <<-\EOF && * (HEAD detached from fromtag) branch-two @@ -218,6 +221,55 @@ test_expect_success 'git branch `--sort` option' ' main EOF git branch --sort=objectsize >actual && + test_i18ncmp expect actual && + + cat >expect <<-\EOF && + * (HEAD detached from fromtag) + branch-one + main + branch-two + EOF + git branch --sort=-objectsize >actual && + test_i18ncmp expect actual +' + +test_expect_success 'git branch `--sort=[-]type` option' ' + cat >expect <<-\EOF && + * (HEAD detached from fromtag) + branch-one + branch-two + main + EOF + git branch --sort=type >actual && + test_i18ncmp expect actual && + + cat >expect <<-\EOF && + * (HEAD detached from fromtag) + branch-one + branch-two + main + EOF + git branch --sort=-type >actual && + test_i18ncmp expect actual +' + +test_expect_success 'git branch `--sort=[-]version:refname` option' ' + cat >expect <<-\EOF && + * (HEAD detached from fromtag) + branch-one + branch-two + main + EOF + git branch --sort=version:refname >actual && + test_i18ncmp expect actual && + + cat >expect <<-\EOF && + * (HEAD detached from fromtag) + main + branch-two + branch-one + EOF + git branch --sort=-version:refname >actual && test_i18ncmp expect actual ' diff --git a/t/t3204-branch-name-interpretation.sh b/t/t3204-branch-name-interpretation.sh index 698d9cc4f3..993a6b5eff 100755 --- a/t/t3204-branch-name-interpretation.sh +++ b/t/t3204-branch-name-interpretation.sh @@ -6,6 +6,9 @@ Branch name arguments are usually names which are taken to be inside of refs/heads/, but we interpret some magic syntax like @{-1}, @{upstream}, etc. This script aims to check the behavior of those corner cases. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh expect_branch() { @@ -28,7 +31,7 @@ test_expect_success 'update branch via @{-1}' ' git branch previous one && git checkout previous && - git checkout master && + git checkout main && git branch -f @{-1} two && expect_branch previous two @@ -58,7 +61,7 @@ test_expect_success 'delete branch via @{-1}' ' git branch previous-del && git checkout previous-del && - git checkout master && + git checkout main && git branch -D @{-1} && expect_deleted previous-del @@ -98,7 +101,7 @@ test_expect_success 'disallow deleting remote branch via @{-1}' ' git update-ref refs/remotes/origin/previous one && git checkout -b origin/previous two && - git checkout master && + git checkout main && test_must_fail git branch -r -D @{-1} && expect_branch refs/remotes/origin/previous one && diff --git a/t/t3205-branch-color.sh b/t/t3205-branch-color.sh index da1c202fa7..08bd906173 100755 --- a/t/t3205-branch-color.sh +++ b/t/t3205-branch-color.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='basic branch output coloring' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'set up some sample branches' ' diff --git a/t/t3206-range-diff.sh b/t/t3206-range-diff.sh index 6eb344be03..ce24b5d735 100755 --- a/t/t3206-range-diff.sh +++ b/t/t3206-range-diff.sh @@ -2,6 +2,9 @@ test_description='range-diff tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Note that because of the range-diff's heuristics, test_commit does more @@ -127,7 +130,7 @@ test_expect_success 'setup' ' ' test_expect_success 'simple A..B A..C (unmodified)' ' - git range-diff --no-color master..topic master..unmodified \ + git range-diff --no-color main..topic main..unmodified \ >actual && cat >expect <<-EOF && 1: $(test_oid t1) = 1: $(test_oid u1) s/5/A/ @@ -145,13 +148,13 @@ test_expect_success 'simple B...C (unmodified)' ' ' test_expect_success 'simple A B C (unmodified)' ' - git range-diff --no-color master topic unmodified >actual && + git range-diff --no-color main topic unmodified >actual && # same "expect" as above test_cmp expect actual ' test_expect_success 'trivial reordering' ' - git range-diff --no-color master topic reordered >actual && + git range-diff --no-color main topic reordered >actual && cat >expect <<-EOF && 1: $(test_oid t1) = 1: $(test_oid r1) s/5/A/ 3: $(test_oid t3) = 2: $(test_oid r2) s/11/B/ @@ -162,7 +165,7 @@ test_expect_success 'trivial reordering' ' ' test_expect_success 'removed a commit' ' - git range-diff --no-color master topic removed >actual && + git range-diff --no-color main topic removed >actual && cat >expect <<-EOF && 1: $(test_oid t1) = 1: $(test_oid d1) s/5/A/ 2: $(test_oid t2) < -: $(test_oid __) s/4/A/ @@ -173,7 +176,7 @@ test_expect_success 'removed a commit' ' ' test_expect_success 'added a commit' ' - git range-diff --no-color master topic added >actual && + git range-diff --no-color main topic added >actual && cat >expect <<-EOF && 1: $(test_oid t1) = 1: $(test_oid a1) s/5/A/ 2: $(test_oid t2) = 2: $(test_oid a2) s/4/A/ @@ -185,7 +188,7 @@ test_expect_success 'added a commit' ' ' test_expect_success 'new base, A B C' ' - git range-diff --no-color master topic rebased >actual && + git range-diff --no-color main topic rebased >actual && cat >expect <<-EOF && 1: $(test_oid t1) = 1: $(test_oid b1) s/5/A/ 2: $(test_oid t2) = 2: $(test_oid b2) s/4/A/ @@ -196,7 +199,7 @@ test_expect_success 'new base, A B C' ' ' test_expect_success 'new base, B...C' ' - # this syntax includes the commits from master! + # this syntax includes the commits from main! git range-diff --no-color topic...rebased >actual && cat >expect <<-EOF && -: $(test_oid __) > 1: $(test_oid b5) unrelated @@ -420,7 +423,7 @@ test_expect_success 'file added and later removed' ' test_expect_success 'no commits on one side' ' git commit --amend -m "new message" && - git range-diff master HEAD@{1} HEAD + git range-diff main HEAD@{1} HEAD ' test_expect_success 'changed message' ' @@ -482,11 +485,11 @@ test_expect_success 'dual-coloring' ' test_cmp expect actual ' -for prev in topic master..topic +for prev in topic main..topic do test_expect_success "format-patch --range-diff=$prev" ' git format-patch --cover-letter --range-diff=$prev \ - master..unmodified >actual && + main..unmodified >actual && test_when_finished "rm 000?-*" && test_line_count = 5 actual && test_i18ngrep "^Range-diff:$" 0000-* && @@ -511,19 +514,19 @@ test_expect_success 'range-diff overrides diff.noprefix internally' ' test_expect_success 'basic with modified format.pretty with suffix' ' git -c format.pretty="format:commit %H%d%n" range-diff \ - master..topic master..unmodified + main..topic main..unmodified ' test_expect_success 'basic with modified format.pretty without "commit "' ' git -c format.pretty="format:%H%n" range-diff \ - master..topic master..unmodified + main..topic main..unmodified ' test_expect_success 'range-diff compares notes by default' ' git notes add -m "topic note" topic && git notes add -m "unmodified note" unmodified && test_when_finished git notes remove topic unmodified && - git range-diff --no-color master..topic master..unmodified \ + git range-diff --no-color main..topic main..unmodified \ >actual && sed s/Z/\ /g >expect <<-EOF && 1: $(test_oid t1) = 1: $(test_oid u1) s/5/A/ @@ -547,7 +550,7 @@ test_expect_success 'range-diff with --no-notes' ' git notes add -m "topic note" topic && git notes add -m "unmodified note" unmodified && test_when_finished git notes remove topic unmodified && - git range-diff --no-color --no-notes master..topic master..unmodified \ + git range-diff --no-color --no-notes main..topic main..unmodified \ >actual && cat >expect <<-EOF && 1: $(test_oid t1) = 1: $(test_oid u1) s/5/A/ @@ -565,7 +568,7 @@ test_expect_success 'range-diff with multiple --notes' ' git notes --ref=note2 add -m "topic note2" topic && git notes --ref=note2 add -m "unmodified note2" unmodified && test_when_finished git notes --ref=note2 remove topic unmodified && - git range-diff --no-color --notes=note1 --notes=note2 master..topic master..unmodified \ + git range-diff --no-color --notes=note1 --notes=note2 main..topic main..unmodified \ >actual && sed s/Z/\ /g >expect <<-EOF && 1: $(test_oid t1) = 1: $(test_oid u1) s/5/A/ @@ -595,7 +598,7 @@ test_expect_success 'format-patch --range-diff does not compare notes by default git notes add -m "unmodified note" unmodified && test_when_finished git notes remove topic unmodified && git format-patch --cover-letter --range-diff=$prev \ - master..unmodified >actual && + main..unmodified >actual && test_when_finished "rm 000?-*" && test_line_count = 5 actual && test_i18ngrep "^Range-diff:$" 0000-* && @@ -612,7 +615,7 @@ test_expect_success 'format-patch --range-diff with --no-notes' ' git notes add -m "unmodified note" unmodified && test_when_finished git notes remove topic unmodified && git format-patch --no-notes --cover-letter --range-diff=$prev \ - master..unmodified >actual && + main..unmodified >actual && test_when_finished "rm 000?-*" && test_line_count = 5 actual && test_i18ngrep "^Range-diff:$" 0000-* && @@ -629,7 +632,7 @@ test_expect_success 'format-patch --range-diff with --notes' ' git notes add -m "unmodified note" unmodified && test_when_finished git notes remove topic unmodified && git format-patch --notes --cover-letter --range-diff=$prev \ - master..unmodified >actual && + main..unmodified >actual && test_when_finished "rm 000?-*" && test_line_count = 5 actual && test_i18ngrep "^Range-diff:$" 0000-* && @@ -658,7 +661,7 @@ test_expect_success 'format-patch --range-diff with format.notes config' ' test_when_finished git notes remove topic unmodified && test_config format.notes true && git format-patch --cover-letter --range-diff=$prev \ - master..unmodified >actual && + main..unmodified >actual && test_when_finished "rm 000?-*" && test_line_count = 5 actual && test_i18ngrep "^Range-diff:$" 0000-* && @@ -689,7 +692,7 @@ test_expect_success 'format-patch --range-diff with multiple notes' ' git notes --ref=note2 add -m "unmodified note2" unmodified && test_when_finished git notes --ref=note2 remove topic unmodified && git format-patch --notes=note1 --notes=note2 --cover-letter --range-diff=$prev \ - master..unmodified >actual && + main..unmodified >actual && test_when_finished "rm 000?-*" && test_line_count = 5 actual && test_i18ngrep "^Range-diff:$" 0000-* && diff --git a/t/t3206/history.export b/t/t3206/history.export index 4c808e5b3b..4485adc37b 100644 --- a/t/t3206/history.export +++ b/t/t3206/history.export @@ -168,7 +168,7 @@ mark :11 data 10 unrelated -commit refs/heads/master +commit refs/heads/main mark :12 author Thomas Rast <trast@inf.ethz.ch> 1374485127 +0200 committer Thomas Rast <trast@inf.ethz.ch> 1374485127 +0200 diff --git a/t/t3210-pack-refs.sh b/t/t3210-pack-refs.sh index f41b2afb99..3b7cdc56ec 100755 --- a/t/t3210-pack-refs.sh +++ b/t/t3210-pack-refs.sh @@ -9,6 +9,9 @@ test_description='git pack-refs should not change the branch semantic This test runs git pack-refs and git show-ref and checks that the branch semantic is still the same. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'enable reflogs' ' @@ -135,7 +138,7 @@ test_expect_success 'delete ref with dangling packed version' ' git commit --allow-empty -m "future garbage" && git pack-refs --all && git reset --hard HEAD^ && - git checkout master && + git checkout main && git reflog expire --expire=all --all && git prune --expire=all && git branch -d lamb 2>result && @@ -240,7 +243,7 @@ test_expect_success 'retry acquiring packed-refs.lock' ' test_expect_success SYMLINKS 'pack symlinked packed-refs' ' # First make sure that symlinking works when reading: - git update-ref refs/heads/lossy refs/heads/master && + git update-ref refs/heads/lossy refs/heads/main && git for-each-ref >all-refs-before && mv .git/packed-refs .git/my-deviant-packed-refs && ln -s my-deviant-packed-refs .git/packed-refs && diff --git a/t/t3211-peel-ref.sh b/t/t3211-peel-ref.sh index 3b7caca421..37b9d26f4b 100755 --- a/t/t3211-peel-ref.sh +++ b/t/t3211-peel-ref.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='tests for the peel_ref optimization of packed-refs' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'create annotated tag in refs/tags' ' @@ -19,7 +22,7 @@ print_ref() { test_expect_success 'set up expected show-ref output' ' { - print_ref "refs/heads/master" && + print_ref "refs/heads/main" && print_ref "refs/outside/foo" && print_ref "refs/outside/foo^{}" && print_ref "refs/tags/base" && @@ -47,7 +50,7 @@ test_expect_success 'create old-style pack-refs without fully-peeled' ' # know we are emulating exactly what an older git would have written. { echo "# pack-refs with: peeled " && - print_ref "refs/heads/master" && + print_ref "refs/heads/main" && print_ref "refs/outside/foo" && print_ref "refs/tags/base" && print_ref "refs/tags/foo" && diff --git a/t/t3301-notes.sh b/t/t3301-notes.sh index ca60faf480..4af881f0ba 100755 --- a/t/t3301-notes.sh +++ b/t/t3301-notes.sh @@ -1300,11 +1300,11 @@ test_expect_success 'git notes copy diagnoses too many or too few parameters' ' test_i18ngrep "too many parameters" error ' -test_expect_success 'git notes get-ref expands refs/heads/master to refs/notes/refs/heads/master' ' +test_expect_success 'git notes get-ref expands refs/heads/main to refs/notes/refs/heads/main' ' test_unconfig core.notesRef && sane_unset GIT_NOTES_REF && - echo refs/notes/refs/heads/master >expect && - git notes --ref=refs/heads/master get-ref >actual && + echo refs/notes/refs/heads/main >expect && + git notes --ref=refs/heads/main get-ref >actual && test_cmp expect actual ' diff --git a/t/t3302-notes-index-expensive.sh b/t/t3302-notes-index-expensive.sh index 7217c5e222..ef8b63952e 100755 --- a/t/t3302-notes-index-expensive.sh +++ b/t/t3302-notes-index-expensive.sh @@ -5,6 +5,9 @@ test_description='Test commit notes index (expensive!)' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh create_repo () { @@ -20,7 +23,7 @@ create_repo () { notemark=$(($mark+1)) test_tick && cat <<-INPUT_END && - commit refs/heads/master + commit refs/heads/main mark :$mark committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT diff --git a/t/t3303-notes-subtrees.sh b/t/t3303-notes-subtrees.sh index 704aee81ef..d47ce00f69 100755 --- a/t/t3303-notes-subtrees.sh +++ b/t/t3303-notes-subtrees.sh @@ -2,6 +2,9 @@ test_description='Test commit notes organized in subtrees' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh number_of_commits=100 @@ -40,7 +43,7 @@ test_expect_success "setup: create $number_of_commits commits" ' nr=$(($nr+1)) && test_tick && cat <<INPUT_END -commit refs/heads/master +commit refs/heads/main committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT commit #$nr @@ -75,7 +78,7 @@ test_sha1_based () { ( start_note_commit && nr=$number_of_commits && - git rev-list refs/heads/master | + git rev-list refs/heads/main | while read sha1; do note_path=$(echo "$sha1" | sed "$1") cat <<INPUT_END && @@ -105,7 +108,7 @@ test_same_notes () { ( start_note_commit && nr=$number_of_commits && - git rev-list refs/heads/master | + git rev-list refs/heads/main | while read sha1; do first_note_path=$(echo "$sha1" | sed "$1") second_note_path=$(echo "$sha1" | sed "$2") @@ -144,7 +147,7 @@ test_concatenated_notes () { ( start_note_commit && nr=$number_of_commits && - git rev-list refs/heads/master | + git rev-list refs/heads/main | while read sha1; do first_note_path=$(echo "$sha1" | sed "$1") second_note_path=$(echo "$sha1" | sed "$2") diff --git a/t/t3304-notes-mixed.sh b/t/t3304-notes-mixed.sh index 1709e8c00b..03dfcd3954 100755 --- a/t/t3304-notes-mixed.sh +++ b/t/t3304-notes-mixed.sh @@ -2,6 +2,9 @@ test_description='Test notes trees that also contain non-notes' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh number_of_commits=100 @@ -36,7 +39,7 @@ test_expect_success "setup: create a couple of commits" ' test_tick && cat <<INPUT_END >input && -commit refs/heads/master +commit refs/heads/main committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT commit #1 @@ -51,7 +54,7 @@ INPUT_END test_tick && cat <<INPUT_END >>input && -commit refs/heads/master +commit refs/heads/main committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT commit #2 @@ -68,8 +71,8 @@ INPUT_END test_expect_success "create a notes tree with both notes and non-notes" ' - commit1=$(git rev-parse refs/heads/master^) && - commit2=$(git rev-parse refs/heads/master) && + commit1=$(git rev-parse refs/heads/main^) && + commit2=$(git rev-parse refs/heads/main) && test_tick && cat <<INPUT_END >input && commit refs/notes/commits diff --git a/t/t3308-notes-merge.sh b/t/t3308-notes-merge.sh index d69c84c640..202702be1a 100755 --- a/t/t3308-notes-merge.sh +++ b/t/t3308-notes-merge.sh @@ -108,7 +108,7 @@ test_expect_success 'fail to merge into various non-notes refs' ' git update-ref refs/notes/dir/foo HEAD && test_must_fail git -c "core.notesRef=refs/notes/dir" notes merge x && test_must_fail git -c "core.notesRef=refs/notes/dir/" notes merge x && - test_must_fail git -c "core.notesRef=refs/heads/master" notes merge x && + test_must_fail git -c "core.notesRef=refs/heads/main" notes merge x && test_must_fail git -c "core.notesRef=refs/notes/y:" notes merge x && test_must_fail git -c "core.notesRef=refs/notes/y:foo" notes merge x && test_must_fail git -c "core.notesRef=refs/notes/foo^{bar" notes merge x diff --git a/t/t3320-notes-merge-worktrees.sh b/t/t3320-notes-merge-worktrees.sh index 823fdbda1f..052516e6c6 100755 --- a/t/t3320-notes-merge-worktrees.sh +++ b/t/t3320-notes-merge-worktrees.sh @@ -5,6 +5,9 @@ test_description='Test merging of notes trees in multiple worktrees' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup commit' ' @@ -36,8 +39,8 @@ test_expect_success 'modify notes ref ourselves (x)' ' ' test_expect_success 'create some new worktrees' ' - git worktree add -b newbranch worktree master && - git worktree add -b newbranch2 worktree2 master + git worktree add -b newbranch worktree main && + git worktree add -b newbranch2 worktree2 main ' test_expect_success 'merge z into y fails and sets NOTES_MERGE_REF' ' diff --git a/t/t3400-rebase.sh b/t/t3400-rebase.sh index 40d2975995..5e88a10f8d 100755 --- a/t/t3400-rebase.sh +++ b/t/t3400-rebase.sh @@ -8,6 +8,9 @@ test_description='git rebase assorted tests This test runs git rebase and checks that the author information is not lost among other things. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh GIT_AUTHOR_NAME=author@name @@ -24,15 +27,15 @@ test_expect_success 'prepare repository with topic branches' ' git update-index --add Y && git commit -m "Add Y." && git checkout -b filemove && - git reset --soft master && + git reset --soft main && mkdir D && git mv A D/A && git commit -m "Move A." && - git checkout -b my-topic-branch master && + git checkout -b my-topic-branch main && echo Second >B && git update-index --add B && git commit -m "Add B." && - git checkout -f master && + git checkout -f main && echo Third >>A && git update-index A && git commit -m "Modify A." && @@ -46,23 +49,23 @@ test_expect_success 'prepare repository with topic branches' ' test_expect_success 'rebase on dirty worktree' ' echo dirty >>A && - test_must_fail git rebase master + test_must_fail git rebase main ' test_expect_success 'rebase on dirty cache' ' git add A && - test_must_fail git rebase master + test_must_fail git rebase main ' -test_expect_success 'rebase against master' ' +test_expect_success 'rebase against main' ' git reset --hard HEAD && - git rebase master + git rebase main ' test_expect_success 'rebase sets ORIG_HEAD to pre-rebase state' ' git checkout -b orig-head topic && pre="$(git rev-parse --verify HEAD)" && - git rebase master && + git rebase main && test_cmp_rev "$pre" ORIG_HEAD && test_cmp_rev ! "$pre" HEAD ' @@ -93,19 +96,19 @@ test_expect_success 'HEAD was detached during rebase' ' test_expect_success 'rebase from ambiguous branch name' ' git checkout -b topic side && - git rebase master + git rebase main ' test_expect_success 'rebase off of the previous branch using "-"' ' - git checkout master && + git checkout main && git checkout HEAD^ && git rebase @{-1} >expect.messages && - git merge-base master HEAD >expect.forkpoint && + git merge-base main HEAD >expect.forkpoint && - git checkout master && + git checkout main && git checkout HEAD^ && git rebase - >actual.messages && - git merge-base master HEAD >actual.forkpoint && + git merge-base main HEAD >actual.forkpoint && test_cmp expect.forkpoint actual.forkpoint && # the next one is dubious---we may want to say "-", @@ -114,7 +117,7 @@ test_expect_success 'rebase off of the previous branch using "-"' ' ' test_expect_success 'rebase a single mode change' ' - git checkout master && + git checkout main && git branch -D topic && echo 1 >X && git add X && @@ -126,7 +129,7 @@ test_expect_success 'rebase a single mode change' ' test_chmod +x A && test_tick && git commit -m modechange && - GIT_TRACE=1 git rebase master + GIT_TRACE=1 git rebase main ' test_expect_success 'rebase is not broken by diff.renames' ' @@ -162,11 +165,11 @@ test_expect_success 'fail when upstream arg is missing and not configured' ' test_expect_success 'rebase works with format.useAutoBase' ' test_config format.useAutoBase true && git checkout topic && - git rebase master + git rebase main ' test_expect_success 'default to common base in @{upstream}s reflog if no upstream arg (--merge)' ' - git checkout -b default-base master && + git checkout -b default-base main && git checkout -b default topic && git config branch.default.remote . && git config branch.default.merge refs/heads/default-base && @@ -184,7 +187,7 @@ test_expect_success 'default to common base in @{upstream}s reflog if no upstrea ' test_expect_success 'default to common base in @{upstream}s reflog if no upstream arg (--apply)' ' - git checkout -B default-base master && + git checkout -B default-base main && git checkout -B default topic && git config branch.default.remote . && git config branch.default.merge refs/heads/default-base && @@ -226,13 +229,13 @@ test_expect_success 'cherry-picked commits and fork-point work together' ' test_expect_success 'rebase --apply -q is quiet' ' git checkout -b quiet topic && - git rebase --apply -q master >output.out 2>&1 && + git rebase --apply -q main >output.out 2>&1 && test_must_be_empty output.out ' test_expect_success 'rebase --merge -q is quiet' ' git checkout -B quiet topic && - git rebase --merge -q master >output.out 2>&1 && + git rebase --merge -q main >output.out 2>&1 && test_must_be_empty output.out ' @@ -294,7 +297,7 @@ test_expect_success 'rebase commit with an ancient timestamp' ' ' test_expect_success 'rebase with "From " line in commit message' ' - git checkout -b preserve-from master~1 && + git checkout -b preserve-from main~1 && cat >From_.msg <<EOF && Somebody embedded an mbox in a commit message @@ -310,7 +313,7 @@ EOF >From_ && git add From_ && git commit -F From_.msg && - git rebase master && + git rebase main && git log -1 --pretty=format:%B >out && test_cmp From_.msg out ' @@ -357,12 +360,12 @@ test_expect_success 'rebase --apply and .gitattributes' ' git cherry-pick test && git checkout test && - git rebase master && + git rebase main && grep "smudged" a.txt && git checkout removal && git reset --hard && - git rebase master && + git rebase main && grep "clean" a.txt ) ' @@ -402,20 +405,20 @@ test_expect_success 'rebase -c rebase.useBuiltin=false warning' ' ' test_expect_success 'switch to branch checked out here' ' - git checkout master && - git rebase master master + git checkout main && + git rebase main main ' test_expect_success 'switch to branch not checked out' ' - git checkout master && + git checkout main && git branch other && - git rebase master other + git rebase main other ' test_expect_success 'refuse to switch to branch checked out elsewhere' ' - git checkout master && + git checkout main && git worktree add wt && - test_must_fail git -C wt rebase master master 2>err && + test_must_fail git -C wt rebase main main 2>err && test_i18ngrep "already checked out" err ' diff --git a/t/t3402-rebase-merge.sh b/t/t3402-rebase-merge.sh index 6e032716a6..cfde68f193 100755 --- a/t/t3402-rebase-merge.sh +++ b/t/t3402-rebase-merge.sh @@ -5,6 +5,9 @@ test_description='git rebase --merge test' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh T="A quick brown fox @@ -19,10 +22,10 @@ test_expect_success setup ' git commit -m"initial" && git branch side && echo "11 $T" >>original && - git commit -a -m"master updates a bit." && + git commit -a -m"main updates a bit." && echo "12 $T" >>original && - git commit -a -m"master updates a bit more." && + git commit -a -m"main updates a bit more." && git checkout side && (echo "0 $T" && cat original) >renamed && @@ -47,13 +50,13 @@ test_expect_success setup ' ' test_expect_success 'reference merge' ' - git merge -s recursive -m "reference merge" master + git merge -s recursive -m "reference merge" main ' PRE_REBASE=$(git rev-parse test-rebase) test_expect_success rebase ' git checkout test-rebase && - GIT_TRACE=1 git rebase --merge master + GIT_TRACE=1 git rebase --merge main ' test_expect_success 'test-rebase@{1} is pre rebase' ' @@ -72,24 +75,24 @@ test_expect_success 'merge and rebase should match' ' ' test_expect_success 'rebase the other way' ' - git reset --hard master && + git reset --hard main && git rebase --merge side ' test_expect_success 'rebase -Xtheirs' ' - git checkout -b conflicting master~2 && + git checkout -b conflicting main~2 && echo "AB $T" >> original && git commit -mconflicting original && - git rebase -Xtheirs master && + git rebase -Xtheirs main && grep AB original && ! grep 11 original ' test_expect_success 'rebase -Xtheirs from orphan' ' - git checkout --orphan orphan-conflicting master~2 && + git checkout --orphan orphan-conflicting main~2 && echo "AB $T" >> original && git commit -morphan-conflicting original && - git rebase -Xtheirs master && + git rebase -Xtheirs main && grep AB original && ! grep 11 original ' @@ -107,9 +110,9 @@ test_expect_success 'merge and rebase should match' ' test_expect_success 'picking rebase' ' git reset --hard side && - git rebase --merge --onto master side^^ && - mb=$(git merge-base master HEAD) && - if test "$mb" = "$(git rev-parse master)" + git rebase --merge --onto main side^^ && + mb=$(git merge-base main HEAD) && + if test "$mb" = "$(git rev-parse main)" then echo happy else @@ -140,11 +143,11 @@ test_expect_success 'rebase -s funny -Xopt' ' EOF chmod +x test-bin/git-merge-funny && git reset --hard && - git checkout -b test-funny master^ && + git checkout -b test-funny main^ && test_commit funny && ( PATH=./test-bin:$PATH && - git rebase -s funny -Xopt master + git rebase -s funny -Xopt main ) && test -f funny.was.run ' @@ -165,7 +168,7 @@ test_expect_success 'rebase --skip works with two conflicts in a row' ' test_expect_success '--reapply-cherry-picks' ' git init repo && - # O(1-10) -- O(1-11) -- O(0-10) master + # O(1-10) -- O(1-11) -- O(0-10) main # \ # -- O(1-11) -- O(1-12) otherbranch @@ -187,18 +190,18 @@ test_expect_success '--reapply-cherry-picks' ' git -C repo commit -a -m "add 12 in another branch" && # Regular rebase fails, because the 1-11 commit is deduplicated - test_must_fail git -C repo rebase --merge master 2> err && + test_must_fail git -C repo rebase --merge main 2> err && test_i18ngrep "error: could not apply.*add 12 in another branch" err && git -C repo rebase --abort && # With --reapply-cherry-picks, it works - git -C repo rebase --merge --reapply-cherry-picks master + git -C repo rebase --merge --reapply-cherry-picks main ' test_expect_success '--reapply-cherry-picks refrains from reading unneeded blobs' ' git init server && - # O(1-10) -- O(1-11) -- O(1-12) master + # O(1-10) -- O(1-11) -- O(1-12) main # \ # -- O(0-10) otherbranch @@ -220,18 +223,18 @@ test_expect_success '--reapply-cherry-picks refrains from reading unneeded blobs test_config -C server uploadpack.allowanysha1inwant 1 && git clone --filter=blob:none "file://$(pwd)/server" client && - git -C client checkout origin/master && + git -C client checkout origin/main && git -C client checkout origin/otherbranch && # Sanity check to ensure that the blobs from the merge base and "add # 11" are missing git -C client rev-list --objects --all --missing=print >missing_list && - MERGE_BASE_BLOB=$(git -C server rev-parse master^^:file.txt) && - ADD_11_BLOB=$(git -C server rev-parse master^:file.txt) && + MERGE_BASE_BLOB=$(git -C server rev-parse main^^:file.txt) && + ADD_11_BLOB=$(git -C server rev-parse main^:file.txt) && grep "[?]$MERGE_BASE_BLOB" missing_list && grep "[?]$ADD_11_BLOB" missing_list && - git -C client rebase --merge --reapply-cherry-picks origin/master && + git -C client rebase --merge --reapply-cherry-picks origin/main && # The blob from the merge base had to be fetched, but not "add 11" git -C client rev-list --objects --all --missing=print >missing_list && diff --git a/t/t3403-rebase-skip.sh b/t/t3403-rebase-skip.sh index a927774910..e26762d0b2 100755 --- a/t/t3403-rebase-skip.sh +++ b/t/t3403-rebase-skip.sh @@ -5,6 +5,9 @@ test_description='git rebase --merge --skip tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh @@ -48,7 +51,7 @@ test_expect_success setup ' ' test_expect_success 'rebase with git am -3 (default)' ' - test_must_fail git rebase master + test_must_fail git rebase main ' test_expect_success 'rebase --skip can not be used with other options' ' @@ -64,7 +67,7 @@ test_expect_success 'rebase moves back to skip-reference' ' test refs/heads/skip-reference = $(git symbolic-ref HEAD) && git branch post-rebase && git reset --hard pre-rebase && - test_must_fail git rebase master && + test_must_fail git rebase main && echo "hello" > hello && git add hello && git rebase --continue && @@ -75,7 +78,7 @@ test_expect_success 'rebase moves back to skip-reference' ' test_expect_success 'checkout skip-merge' 'git checkout -f skip-merge' test_expect_success 'rebase with --merge' ' - test_must_fail git rebase --merge master + test_must_fail git rebase --merge main ' test_expect_success 'rebase --skip with --merge' ' diff --git a/t/t3404-rebase-interactive.sh b/t/t3404-rebase-interactive.sh index b06fc36159..1e738df81d 100755 --- a/t/t3404-rebase-interactive.sh +++ b/t/t3404-rebase-interactive.sh @@ -25,6 +25,9 @@ Initial setup: where A, B, D and G all touch file1, and one, two, three, four all touch file "conflict". ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=master +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh diff --git a/t/t3405-rebase-malformed.sh b/t/t3405-rebase-malformed.sh index 860e63e444..2524331861 100755 --- a/t/t3405-rebase-malformed.sh +++ b/t/t3405-rebase-malformed.sh @@ -2,6 +2,9 @@ test_description='rebase should handle arbitrary git message' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh @@ -52,7 +55,7 @@ test_expect_success setup ' git add file3 && git commit --allow-empty-message -m "" && - git checkout master && + git checkout main && echo One >file1 && test_tick && @@ -62,7 +65,7 @@ test_expect_success setup ' test_expect_success 'rebase commit with multi-line subject' ' - git rebase master multi-line-subject && + git rebase main multi-line-subject && git cat-file commit HEAD | sed -e "1,/^\$/d" >F1 && test_cmp F0 F1 && @@ -70,14 +73,14 @@ test_expect_success 'rebase commit with multi-line subject' ' ' test_expect_success 'rebase commit with diff in message' ' - git rebase master diff-in-message && + git rebase main diff-in-message && git cat-file commit HEAD | sed -e "1,/^$/d" >G1 && test_cmp G0 G1 && test_cmp G G0 ' test_expect_success 'rebase -m commit with empty message' ' - git rebase -m master empty-message-merge + git rebase -m main empty-message-merge ' test_expect_success 'rebase -i commit with empty message' ' diff --git a/t/t3406-rebase-message.sh b/t/t3406-rebase-message.sh index 4afc528165..c02729d5ea 100755 --- a/t/t3406-rebase-message.sh +++ b/t/t3406-rebase-message.sh @@ -2,6 +2,9 @@ test_description='messages from rebase operation' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -18,27 +21,27 @@ test_expect_success 'setup' ' ' test_expect_success 'rebase -m' ' - git rebase -m master >actual && + git rebase -m main >actual && test_must_be_empty actual ' -test_expect_success 'rebase against master twice' ' - git rebase --apply master >out && +test_expect_success 'rebase against main twice' ' + git rebase --apply main >out && test_i18ngrep "Current branch topic is up to date" out ' -test_expect_success 'rebase against master twice with --force' ' - git rebase --force-rebase --apply master >out && +test_expect_success 'rebase against main twice with --force' ' + git rebase --force-rebase --apply main >out && test_i18ngrep "Current branch topic is up to date, rebase forced" out ' -test_expect_success 'rebase against master twice from another branch' ' +test_expect_success 'rebase against main twice from another branch' ' git checkout topic^ && - git rebase --apply master topic >out && + git rebase --apply main topic >out && test_i18ngrep "Current branch topic is up to date" out ' -test_expect_success 'rebase fast-forward to master' ' +test_expect_success 'rebase fast-forward to main' ' git checkout topic^ && git rebase --apply topic >out && test_i18ngrep "Fast-forwarded HEAD to topic" out @@ -46,21 +49,21 @@ test_expect_success 'rebase fast-forward to master' ' test_expect_success 'rebase --stat' ' git reset --hard start && - git rebase --stat master >diffstat.txt && + git rebase --stat main >diffstat.txt && grep "^ fileX | *1 +$" diffstat.txt ' test_expect_success 'rebase w/config rebase.stat' ' git reset --hard start && git config rebase.stat true && - git rebase master >diffstat.txt && + git rebase main >diffstat.txt && grep "^ fileX | *1 +$" diffstat.txt ' test_expect_success 'rebase -n overrides config rebase.stat config' ' git reset --hard start && git config rebase.stat true && - git rebase -n master >diffstat.txt && + git rebase -n main >diffstat.txt && ! grep "^ fileX | *1 +$" diffstat.txt ' @@ -113,7 +116,7 @@ test_expect_success 'rebase -i onto unrelated history' ' git init unrelated && test_commit -C unrelated 1 && git -C unrelated remote add -f origin "$PWD" && - git -C unrelated branch --set-upstream-to=origin/master && + git -C unrelated branch --set-upstream-to=origin/main && git -C unrelated -c core.editor=true rebase -i -v --stat >actual && test_i18ngrep "Changes to " actual && test_i18ngrep "5 files changed" actual diff --git a/t/t3407-rebase-abort.sh b/t/t3407-rebase-abort.sh index 97efea0f56..7c381fbc89 100755 --- a/t/t3407-rebase-abort.sh +++ b/t/t3407-rebase-abort.sh @@ -2,6 +2,9 @@ test_description='git rebase --abort tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh ### Test that we handle space characters properly @@ -37,7 +40,7 @@ testrebase() { cd "$work_dir" && # Clean up the state from the previous one git reset --hard pre-rebase && - test_must_fail git rebase$type master && + test_must_fail git rebase$type main && test_path_is_dir "$dotest" && git rebase --abort && test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase) && @@ -48,10 +51,10 @@ testrebase() { cd "$work_dir" && # Clean up the state from the previous one git reset --hard pre-rebase && - test_must_fail git rebase$type master && + test_must_fail git rebase$type main && test_path_is_dir "$dotest" && test_must_fail git rebase --skip && - test $(git rev-parse HEAD) = $(git rev-parse master) && + test $(git rev-parse HEAD) = $(git rev-parse main) && git rebase --abort && test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase) && test ! -d "$dotest" @@ -61,13 +64,13 @@ testrebase() { cd "$work_dir" && # Clean up the state from the previous one git reset --hard pre-rebase && - test_must_fail git rebase$type master && + test_must_fail git rebase$type main && test_path_is_dir "$dotest" && echo c > a && echo d >> a && git add a && test_must_fail git rebase --continue && - test $(git rev-parse HEAD) != $(git rev-parse master) && + test $(git rev-parse HEAD) != $(git rev-parse main) && git rebase --abort && test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase) && test ! -d "$dotest" @@ -78,7 +81,7 @@ testrebase() { # Clean up the state from the previous one git reset --hard pre-rebase && git reflog show to-rebase > reflog_before && - test_must_fail git rebase$type master && + test_must_fail git rebase$type main && git rebase --abort && git reflog show to-rebase > reflog_after && test_cmp reflog_before reflog_after && @@ -89,7 +92,7 @@ testrebase() { cd "$work_dir" && # Clean up the state from the previous one git reset --hard pre-rebase && - test_must_fail git rebase$type master && + test_must_fail git rebase$type main && test_must_fail git rebase -v --abort && test_must_fail git rebase --abort -v && git rebase --abort @@ -103,7 +106,7 @@ test_expect_success 'rebase --apply --quit' ' cd "$work_dir" && # Clean up the state from the previous one git reset --hard pre-rebase && - test_must_fail git rebase --apply master && + test_must_fail git rebase --apply main && test_path_is_dir .git/rebase-apply && head_before=$(git rev-parse HEAD) && git rebase --quit && @@ -115,7 +118,7 @@ test_expect_success 'rebase --merge --quit' ' cd "$work_dir" && # Clean up the state from the previous one git reset --hard pre-rebase && - test_must_fail git rebase --merge master && + test_must_fail git rebase --merge main && test_path_is_dir .git/rebase-merge && head_before=$(git rev-parse HEAD) && git rebase --quit && diff --git a/t/t3408-rebase-multi-line.sh b/t/t3408-rebase-multi-line.sh index d2bd7c17b0..ab0960e6d9 100755 --- a/t/t3408-rebase-multi-line.sh +++ b/t/t3408-rebase-multi-line.sh @@ -2,6 +2,9 @@ test_description='rebasing a commit with multi-line first paragraph.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -46,7 +49,7 @@ But otherwise with a sane description." side2 && test_expect_success rebase ' git checkout side && - git rebase master && + git rebase main && git cat-file commit HEAD | sed -e "1,/^\$/d" >actual && git cat-file commit side@{1} | sed -e "1,/^\$/d" >expect && test_cmp expect actual diff --git a/t/t3409-rebase-preserve-merges.sh b/t/t3409-rebase-preserve-merges.sh index 3b340f1ece..ec8062a66a 100755 --- a/t/t3409-rebase-preserve-merges.sh +++ b/t/t3409-rebase-preserve-merges.sh @@ -6,6 +6,9 @@ test_description='git rebase -p should preserve merges Run "git rebase -p" and check that merges are properly carried along ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh if ! test_have_prereq REBASE_P; then @@ -18,7 +21,7 @@ export GIT_AUTHOR_EMAIL # Clone 2 (conflicting merge): # -# A1--A2--B3 <-- origin/master +# A1--A2--B3 <-- origin/main # \ \ # B1------M <-- topic # \ @@ -26,7 +29,7 @@ export GIT_AUTHOR_EMAIL # # Clone 3 (no-ff merge): # -# A1--A2--B3 <-- origin/master +# A1--A2--B3 <-- origin/main # \ # B1------M <-- topic # \ / @@ -44,7 +47,7 @@ test_expect_success 'setup for merge-preserving rebase' \ echo Second > B && git add B && git commit -m "Add B1" && - git checkout -f master && + git checkout -f main && echo Third >> A && git commit -a -m "Modify A2" && echo Fifth > B && @@ -55,10 +58,10 @@ test_expect_success 'setup for merge-preserving rebase' \ ( cd clone2 && git checkout -b topic origin/topic && - test_must_fail git merge origin/master && + test_must_fail git merge origin/main && echo Resolved >B && git add B && - git commit -m "Merge origin/master into topic" + git commit -m "Merge origin/main into topic" ) && git clone ./. clone3 && diff --git a/t/t3412-rebase-root.sh b/t/t3412-rebase-root.sh index 21632a984e..fda62c65bd 100755 --- a/t/t3412-rebase-root.sh +++ b/t/t3412-rebase-root.sh @@ -4,6 +4,9 @@ test_description='git rebase --root Tests if git rebase --root --onto <newparent> can rebase the root commit. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh log_with_names () { @@ -24,7 +27,7 @@ test_expect_success 'prepare repository' ' test_expect_success 'rebase --root fails with too many args' ' git checkout -B fail other && - test_must_fail git rebase --onto master --root fail fail + test_must_fail git rebase --onto main --root fail fail ' test_expect_success 'setup pre-rebase hook' ' @@ -44,7 +47,7 @@ EOF test_expect_success 'rebase --root --onto <newbase>' ' git checkout -b work other && - git rebase --root --onto master && + git rebase --root --onto main && git log --pretty=tformat:"%s" > rebased && test_cmp expect rebased ' @@ -55,7 +58,7 @@ test_expect_success 'pre-rebase got correct input (1)' ' test_expect_success 'rebase --root --onto <newbase> <branch>' ' git branch work2 other && - git rebase --root --onto master work2 && + git rebase --root --onto main work2 && git log --pretty=tformat:"%s" > rebased2 && test_cmp expect rebased2 ' @@ -66,7 +69,7 @@ test_expect_success 'pre-rebase got correct input (2)' ' test_expect_success 'rebase -i --root --onto <newbase>' ' git checkout -b work3 other && - git rebase -i --root --onto master && + git rebase -i --root --onto main && git log --pretty=tformat:"%s" > rebased3 && test_cmp expect rebased3 ' @@ -77,7 +80,7 @@ test_expect_success 'pre-rebase got correct input (3)' ' test_expect_success 'rebase -i --root --onto <newbase> <branch>' ' git branch work4 other && - git rebase -i --root --onto master work4 && + git rebase -i --root --onto main work4 && git log --pretty=tformat:"%s" > rebased4 && test_cmp expect rebased4 ' @@ -88,7 +91,7 @@ test_expect_success 'pre-rebase got correct input (4)' ' test_expect_success REBASE_P 'rebase -i -p with linear history' ' git checkout -b work5 other && - git rebase -i -p --root --onto master && + git rebase -i -p --root --onto main && git log --pretty=tformat:"%s" > rebased5 && test_cmp expect rebased5 ' @@ -122,7 +125,7 @@ EOF test_expect_success REBASE_P 'rebase -i -p with merge' ' git checkout -b work6 other && - git rebase -i -p --root --onto master && + git rebase -i -p --root --onto main && log_with_names work6 > rebased6 && test_cmp expect-side rebased6 ' @@ -157,7 +160,7 @@ EOF test_expect_success REBASE_P 'rebase -i -p with two roots' ' git checkout -b work7 other && - git rebase -i -p --root --onto master && + git rebase -i -p --root --onto main && log_with_names work7 > rebased7 && test_cmp expect-third rebased7 ' @@ -173,14 +176,14 @@ EOF test_expect_success 'pre-rebase hook stops rebase' ' git checkout -b stops1 other && - test_must_fail git rebase --root --onto master && + test_must_fail git rebase --root --onto main && test "z$(git symbolic-ref HEAD)" = zrefs/heads/stops1 && test 0 = $(git rev-list other...stops1 | wc -l) ' test_expect_success 'pre-rebase hook stops rebase -i' ' git checkout -b stops2 other && - test_must_fail git rebase --root --onto master && + test_must_fail git rebase --root --onto main && test "z$(git symbolic-ref HEAD)" = zrefs/heads/stops2 && test 0 = $(git rev-list other...stops2 | wc -l) ' @@ -190,7 +193,7 @@ test_expect_success 'remove pre-rebase hook' ' ' test_expect_success 'set up a conflict' ' - git checkout master && + git checkout main && echo conflict > B && git add B && git commit -m conflict @@ -198,7 +201,7 @@ test_expect_success 'set up a conflict' ' test_expect_success 'rebase --root with conflict (first part)' ' git checkout -b conflict1 other && - test_must_fail git rebase --root --onto master && + test_must_fail git rebase --root --onto main && git ls-files -u | grep "B$" ' @@ -225,7 +228,7 @@ test_expect_success 'rebase --root with conflict (second part)' ' test_expect_success 'rebase -i --root with conflict (first part)' ' git checkout -b conflict2 other && - test_must_fail git rebase -i --root --onto master && + test_must_fail git rebase -i --root --onto main && git ls-files -u | grep "B$" ' @@ -263,7 +266,7 @@ EOF test_expect_success REBASE_P 'rebase -i -p --root with conflict (first part)' ' git checkout -b conflict3 other && - test_must_fail git rebase -i -p --root --onto master && + test_must_fail git rebase -i -p --root --onto main && git ls-files -u | grep "B$" ' diff --git a/t/t3413-rebase-hook.sh b/t/t3413-rebase-hook.sh index b6833e9a5f..b4acb3be5c 100755 --- a/t/t3413-rebase-hook.sh +++ b/t/t3413-rebase-hook.sh @@ -2,6 +2,9 @@ test_description='git rebase with its hook(s)' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -18,7 +21,7 @@ test_expect_success setup ' git add git && test_tick && git commit -m side && - git checkout master && + git checkout main && git log --pretty=oneline --abbrev-commit --graph --all && git branch test side ' @@ -26,14 +29,14 @@ test_expect_success setup ' test_expect_success 'rebase' ' git checkout test && git reset --hard side && - git rebase master && + git rebase main && test "z$(cat git)" = zworld ' test_expect_success 'rebase -i' ' git checkout test && git reset --hard side && - EDITOR=true git rebase -i master && + EDITOR=true git rebase -i main && test "z$(cat git)" = zworld ' @@ -49,53 +52,53 @@ EOF test_expect_success 'pre-rebase hook gets correct input (1)' ' git checkout test && git reset --hard side && - git rebase master && + git rebase main && test "z$(cat git)" = zworld && - test "z$(cat .git/PRE-REBASE-INPUT)" = zmaster, + test "z$(cat .git/PRE-REBASE-INPUT)" = zmain, ' test_expect_success 'pre-rebase hook gets correct input (2)' ' git checkout test && git reset --hard side && - git rebase master test && + git rebase main test && test "z$(cat git)" = zworld && - test "z$(cat .git/PRE-REBASE-INPUT)" = zmaster,test + test "z$(cat .git/PRE-REBASE-INPUT)" = zmain,test ' test_expect_success 'pre-rebase hook gets correct input (3)' ' git checkout test && git reset --hard side && - git checkout master && - git rebase master test && + git checkout main && + git rebase main test && test "z$(cat git)" = zworld && - test "z$(cat .git/PRE-REBASE-INPUT)" = zmaster,test + test "z$(cat .git/PRE-REBASE-INPUT)" = zmain,test ' test_expect_success 'pre-rebase hook gets correct input (4)' ' git checkout test && git reset --hard side && - EDITOR=true git rebase -i master && + EDITOR=true git rebase -i main && test "z$(cat git)" = zworld && - test "z$(cat .git/PRE-REBASE-INPUT)" = zmaster, + test "z$(cat .git/PRE-REBASE-INPUT)" = zmain, ' test_expect_success 'pre-rebase hook gets correct input (5)' ' git checkout test && git reset --hard side && - EDITOR=true git rebase -i master test && + EDITOR=true git rebase -i main test && test "z$(cat git)" = zworld && - test "z$(cat .git/PRE-REBASE-INPUT)" = zmaster,test + test "z$(cat .git/PRE-REBASE-INPUT)" = zmain,test ' test_expect_success 'pre-rebase hook gets correct input (6)' ' git checkout test && git reset --hard side && - git checkout master && - EDITOR=true git rebase -i master test && + git checkout main && + EDITOR=true git rebase -i main test && test "z$(cat git)" = zworld && - test "z$(cat .git/PRE-REBASE-INPUT)" = zmaster,test + test "z$(cat .git/PRE-REBASE-INPUT)" = zmain,test ' test_expect_success 'setup pre-rebase hook that fails' ' @@ -110,7 +113,7 @@ EOF test_expect_success 'pre-rebase hook stops rebase (1)' ' git checkout test && git reset --hard side && - test_must_fail git rebase master && + test_must_fail git rebase main && test "z$(git symbolic-ref HEAD)" = zrefs/heads/test && test 0 = $(git rev-list HEAD...side | wc -l) ' @@ -118,7 +121,7 @@ test_expect_success 'pre-rebase hook stops rebase (1)' ' test_expect_success 'pre-rebase hook stops rebase (2)' ' git checkout test && git reset --hard side && - test_must_fail env EDITOR=: git rebase -i master && + test_must_fail env EDITOR=: git rebase -i main && test "z$(git symbolic-ref HEAD)" = zrefs/heads/test && test 0 = $(git rev-list HEAD...side | wc -l) ' @@ -126,7 +129,7 @@ test_expect_success 'pre-rebase hook stops rebase (2)' ' test_expect_success 'rebase --no-verify overrides pre-rebase (1)' ' git checkout test && git reset --hard side && - git rebase --no-verify master && + git rebase --no-verify main && test "z$(git symbolic-ref HEAD)" = zrefs/heads/test && test "z$(cat git)" = zworld ' @@ -134,7 +137,7 @@ test_expect_success 'rebase --no-verify overrides pre-rebase (1)' ' test_expect_success 'rebase --no-verify overrides pre-rebase (2)' ' git checkout test && git reset --hard side && - EDITOR=true git rebase --no-verify -i master && + EDITOR=true git rebase --no-verify -i main && test "z$(git symbolic-ref HEAD)" = zrefs/heads/test && test "z$(cat git)" = zworld ' diff --git a/t/t3415-rebase-autosquash.sh b/t/t3415-rebase-autosquash.sh index 7bab6000dc..e7087befd4 100755 --- a/t/t3415-rebase-autosquash.sh +++ b/t/t3415-rebase-autosquash.sh @@ -2,6 +2,9 @@ test_description='auto squash' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh @@ -407,7 +410,7 @@ test_expect_success 'wrapped original subject' ' test_expect_success 'abort last squash' ' test_when_finished "test_might_fail git rebase --abort" && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && git checkout -b some-squashes && git commit --allow-empty -m first && diff --git a/t/t3416-rebase-onto-threedots.sh b/t/t3416-rebase-onto-threedots.sh index 9c2548423b..3716a42e81 100755 --- a/t/t3416-rebase-onto-threedots.sh +++ b/t/t3416-rebase-onto-threedots.sh @@ -2,17 +2,20 @@ test_description='git rebase --onto A...B' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY/lib-rebase.sh" -# Rebase only the tip commit of "topic" on merge base between "master" -# and "topic". Cannot do this for "side" with "master" because there +# Rebase only the tip commit of "topic" on merge base between "main" +# and "topic". Cannot do this for "side" with "main" because there # is no single merge base. # # # F---G topic G' # / / -# A---B---C---D---E master --> A---B---C---D---E +# A---B---C---D---E main --> A---B---C---D---E # \ \ / # \ x # \ / \ @@ -26,7 +29,7 @@ test_expect_success setup ' git branch topic && git checkout side && test_commit H && - git checkout master && + git checkout main && test_tick && git merge H && git tag D && @@ -42,83 +45,83 @@ test_expect_success setup ' test_commit K ' -test_expect_success 'rebase --onto master...topic' ' +test_expect_success 'rebase --onto main...topic' ' git reset --hard && git checkout topic && git reset --hard G && - git rebase --onto master...topic F && + git rebase --onto main...topic F && git rev-parse HEAD^1 >actual && git rev-parse C^0 >expect && test_cmp expect actual ' -test_expect_success 'rebase --onto master...' ' +test_expect_success 'rebase --onto main...' ' git reset --hard && git checkout topic && git reset --hard G && - git rebase --onto master... F && + git rebase --onto main... F && git rev-parse HEAD^1 >actual && git rev-parse C^0 >expect && test_cmp expect actual ' -test_expect_success 'rebase --onto master...side' ' +test_expect_success 'rebase --onto main...side' ' git reset --hard && git checkout side && git reset --hard K && - test_must_fail git rebase --onto master...side J + test_must_fail git rebase --onto main...side J ' -test_expect_success 'rebase -i --onto master...topic' ' +test_expect_success 'rebase -i --onto main...topic' ' git reset --hard && git checkout topic && git reset --hard G && set_fake_editor && - EXPECT_COUNT=1 git rebase -i --onto master...topic F && + EXPECT_COUNT=1 git rebase -i --onto main...topic F && git rev-parse HEAD^1 >actual && git rev-parse C^0 >expect && test_cmp expect actual ' -test_expect_success 'rebase -i --onto master...' ' +test_expect_success 'rebase -i --onto main...' ' git reset --hard && git checkout topic && git reset --hard G && set_fake_editor && - EXPECT_COUNT=1 git rebase -i --onto master... F && + EXPECT_COUNT=1 git rebase -i --onto main... F && git rev-parse HEAD^1 >actual && git rev-parse C^0 >expect && test_cmp expect actual ' -test_expect_success 'rebase -i --onto master...side' ' +test_expect_success 'rebase -i --onto main...side' ' git reset --hard && git checkout side && git reset --hard K && set_fake_editor && - test_must_fail git rebase -i --onto master...side J + test_must_fail git rebase -i --onto main...side J ' test_expect_success 'rebase --keep-base --onto incompatible' ' - test_must_fail git rebase --keep-base --onto master... + test_must_fail git rebase --keep-base --onto main... ' test_expect_success 'rebase --keep-base --root incompatible' ' test_must_fail git rebase --keep-base --root ' -test_expect_success 'rebase --keep-base master from topic' ' +test_expect_success 'rebase --keep-base main from topic' ' git reset --hard && git checkout topic && git reset --hard G && - git rebase --keep-base master && + git rebase --keep-base main && git rev-parse C >base.expect && - git merge-base master HEAD >base.actual && + git merge-base main HEAD >base.actual && test_cmp base.expect base.actual && git rev-parse HEAD~2 >actual && @@ -126,23 +129,23 @@ test_expect_success 'rebase --keep-base master from topic' ' test_cmp expect actual ' -test_expect_success 'rebase --keep-base master from side' ' +test_expect_success 'rebase --keep-base main from side' ' git reset --hard && git checkout side && git reset --hard K && - test_must_fail git rebase --keep-base master + test_must_fail git rebase --keep-base main ' -test_expect_success 'rebase -i --keep-base master from topic' ' +test_expect_success 'rebase -i --keep-base main from topic' ' git reset --hard && git checkout topic && git reset --hard G && set_fake_editor && - EXPECT_COUNT=2 git rebase -i --keep-base master && + EXPECT_COUNT=2 git rebase -i --keep-base main && git rev-parse C >base.expect && - git merge-base master HEAD >base.actual && + git merge-base main HEAD >base.actual && test_cmp base.expect base.actual && git rev-parse HEAD~2 >actual && @@ -150,13 +153,13 @@ test_expect_success 'rebase -i --keep-base master from topic' ' test_cmp expect actual ' -test_expect_success 'rebase -i --keep-base master from side' ' +test_expect_success 'rebase -i --keep-base main from side' ' git reset --hard && git checkout side && git reset --hard K && set_fake_editor && - test_must_fail git rebase -i --keep-base master + test_must_fail git rebase -i --keep-base main ' test_done diff --git a/t/t3418-rebase-continue.sh b/t/t3418-rebase-continue.sh index 7a2da972fd..0838f4e798 100755 --- a/t/t3418-rebase-continue.sh +++ b/t/t3418-rebase-continue.sh @@ -2,6 +2,9 @@ test_description='git rebase --continue tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh @@ -15,13 +18,13 @@ test_expect_success 'setup' ' git checkout -b topic HEAD^ && test_commit "commit-new-file-F2-on-topic-branch" F2 22 && - git checkout master + git checkout main ' test_expect_success 'interactive rebase --continue works with touched file' ' rm -fr .git/rebase-* && git reset --hard && - git checkout master && + git checkout main && FAKE_LINES="edit 1" git rebase -i HEAD^ && test-tool chmtime =-60 F1 && @@ -31,9 +34,9 @@ test_expect_success 'interactive rebase --continue works with touched file' ' test_expect_success 'non-interactive rebase --continue works with touched file' ' rm -fr .git/rebase-* && git reset --hard && - git checkout master && + git checkout main && - test_must_fail git rebase --onto master master topic && + test_must_fail git rebase --onto main main topic && echo "Resolved" >F2 && git add F2 && test-tool chmtime =-60 F1 && @@ -61,7 +64,7 @@ test_expect_success 'rebase --continue remembers merge strategy and options' ' chmod +x test-bin/git-merge-funny && ( PATH=./test-bin:$PATH && - test_must_fail git rebase -s funny -Xopt master topic + test_must_fail git rebase -s funny -Xopt main topic ) && test -f funny.was.run && rm funny.was.run && @@ -93,7 +96,7 @@ test_expect_success 'rebase -i --continue handles merge strategy and options' ' chmod +x test-bin/git-merge-funny && ( PATH=./test-bin:$PATH && - test_must_fail git rebase -i -s funny -Xopt -Xfoo master topic + test_must_fail git rebase -i -s funny -Xopt -Xfoo main topic ) && test -f funny.was.run && rm funny.was.run && @@ -188,11 +191,11 @@ test_expect_success '--skip after failed fixup cleans commit message' ' test_expect_success 'setup rerere database' ' rm -fr .git/rebase-* && git reset --hard commit-new-file-F3-on-topic-branch && - git checkout master && + git checkout main && test_commit "commit-new-file-F3" F3 3 && test_config rerere.enabled true && git update-ref refs/heads/topic commit-new-file-F3-on-topic-branch && - test_must_fail git rebase -m master topic && + test_must_fail git rebase -m main topic && echo "Resolved" >F2 && cp F2 expected-F2 && git add F2 && @@ -207,7 +210,7 @@ test_expect_success 'setup rerere database' ' prepare () { rm -fr .git/rebase-* && git reset --hard commit-new-file-F3-on-topic-branch && - git checkout master && + git checkout main && test_config rerere.enabled true } @@ -215,7 +218,7 @@ test_rerere_autoupdate () { action=$1 && test_expect_success "rebase $action --continue remembers --rerere-autoupdate" ' prepare && - test_must_fail git rebase $action --rerere-autoupdate master topic && + test_must_fail git rebase $action --rerere-autoupdate main topic && test_cmp expected-F2 F2 && git diff-files --quiet && test_must_fail git rebase --continue && @@ -227,7 +230,7 @@ test_rerere_autoupdate () { test_expect_success "rebase $action --continue honors rerere.autoUpdate" ' prepare && test_config rerere.autoupdate true && - test_must_fail git rebase $action master topic && + test_must_fail git rebase $action main topic && test_cmp expected-F2 F2 && git diff-files --quiet && test_must_fail git rebase --continue && @@ -239,7 +242,7 @@ test_rerere_autoupdate () { test_expect_success "rebase $action --continue remembers --no-rerere-autoupdate" ' prepare && test_config rerere.autoupdate true && - test_must_fail git rebase $action --no-rerere-autoupdate master topic && + test_must_fail git rebase $action --no-rerere-autoupdate main topic && test_cmp expected-F2 F2 && test_must_fail git diff-files --quiet && git add F2 && diff --git a/t/t3419-rebase-patch-id.sh b/t/t3419-rebase-patch-id.sh index 1f32faa4a4..295040f2fe 100755 --- a/t/t3419-rebase-patch-id.sh +++ b/t/t3419-rebase-patch-id.sh @@ -2,6 +2,9 @@ test_description='git rebase - test patch id computation' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh scramble () { @@ -24,7 +27,7 @@ test_expect_success 'setup' ' test_expect_success 'setup: 500 lines' ' rm -f .gitattributes && - git checkout -q -f master && + git checkout -q -f main && git reset --hard root && test_seq 500 >file && git add file && @@ -40,7 +43,7 @@ test_expect_success 'setup: 500 lines' ' git add newfile && git commit -q -m "add small file" && - git cherry-pick master >/dev/null 2>&1 + git cherry-pick main >/dev/null 2>&1 ' test_expect_success 'setup attributes' ' @@ -48,18 +51,18 @@ test_expect_success 'setup attributes' ' ' test_expect_success 'detect upstream patch' ' - git checkout -q master && + git checkout -q main && scramble file && git add file && git commit -q -m "change big file again" && git checkout -q other^{} && - git rebase master && - git rev-list master...HEAD~ >revs && + git rebase main && + git rev-list main...HEAD~ >revs && test_must_be_empty revs ' test_expect_success 'do not drop patch' ' - git branch -f squashed master && + git branch -f squashed main && git checkout -q -f squashed && git reset -q --soft HEAD~2 && git commit -q -m squashed && diff --git a/t/t3420-rebase-autostash.sh b/t/t3420-rebase-autostash.sh index ca331733fb..4caa014c71 100755 --- a/t/t3420-rebase-autostash.sh +++ b/t/t3420-rebase-autostash.sh @@ -4,6 +4,9 @@ # test_description='git rebase --autostash tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -21,12 +24,12 @@ test_expect_success setup ' git add . && test_tick && git commit -m "third commit" && - git checkout -b unrelated-onto-branch master && + git checkout -b unrelated-onto-branch main && echo unrelated >file4 && git add . && test_tick && git commit -m "unrelated commit" && - git checkout -b related-onto-branch master && + git checkout -b related-onto-branch main && echo conflicting-change >file2 && git add . && test_tick && @@ -305,7 +308,7 @@ test_expect_success 'autostash is saved on editor failure with conflict' ' ' test_expect_success 'autostash with dirty submodules' ' - test_when_finished "git reset --hard && git checkout master" && + test_when_finished "git reset --hard && git checkout main" && git checkout -b with-submodule && git submodule add ./ sub && test_tick && @@ -324,7 +327,7 @@ test_expect_success 'branch is left alone when possible' ' test_expect_success 'never change active branch' ' git checkout -b not-the-feature-branch unrelated-onto-branch && - test_when_finished "git reset --hard && git checkout master" && + test_when_finished "git reset --hard && git checkout main" && echo changed >file0 && git rebase --autostash not-the-feature-branch feature-branch && test_cmp_rev not-the-feature-branch unrelated-onto-branch diff --git a/t/t3423-rebase-reword.sh b/t/t3423-rebase-reword.sh index 6963750794..4859bb8f72 100755 --- a/t/t3423-rebase-reword.sh +++ b/t/t3423-rebase-reword.sh @@ -7,7 +7,7 @@ test_description='git rebase interactive with rewording' . "$TEST_DIRECTORY"/lib-rebase.sh test_expect_success 'setup' ' - test_commit master file-1 test && + test_commit main file-1 test && git checkout -b stuff && @@ -22,7 +22,7 @@ test_expect_success 'reword without issues functions as intended' ' set_fake_editor && FAKE_LINES="pick 1 reword 2" FAKE_COMMIT_MESSAGE="feature_b_reworded" \ - git rebase -i -v master && + git rebase -i -v main && test "$(git log -1 --format=%B)" = "feature_b_reworded" && test $(git rev-list --count HEAD) = 3 @@ -35,7 +35,7 @@ test_expect_success 'reword after a conflict preserves commit' ' set_fake_editor && test_must_fail env FAKE_LINES="reword 2" \ - git rebase -i -v master && + git rebase -i -v main && git checkout --theirs file-2 && git add file-2 && diff --git a/t/t3427-rebase-subtree.sh b/t/t3427-rebase-subtree.sh index 5839719ba1..e78c7e3796 100755 --- a/t/t3427-rebase-subtree.sh +++ b/t/t3427-rebase-subtree.sh @@ -4,6 +4,9 @@ test_description='git rebase tests for -Xsubtree This test runs git rebase and tests the subtree strategy. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh @@ -17,7 +20,7 @@ commit_message() { # # topic_1 - topic_2 - topic_3 # \ -# README ---------------------- Add subproject master - topic_4 - files_subtree/topic_5 +# README ---------------------- Add subproject main - topic_4 - files_subtree/topic_5 # # Where the merge moves the files topic_[123].t into the subdirectory # files_subtree/ and topic_4 as well as files_subtree/topic_5 add files to that @@ -28,7 +31,7 @@ commit_message() { # an empty commit is added on top. The pre-rebase commit history looks like # this: # -# Add subproject master - topic_4 - files_subtree/topic_5 - Empty commit +# Add subproject main - topic_4 - files_subtree/topic_5 - Empty commit # # where the root commit adds three files: topic_1.t, topic_2.t and topic_3.t. # @@ -48,11 +51,11 @@ test_expect_success 'setup' ' test_commit -C files topic_3 && : perform subtree merge into files_subtree/ && - git fetch files refs/heads/master:refs/heads/files-master && + git fetch files refs/heads/main:refs/heads/files-main && git merge -s ours --no-commit --allow-unrelated-histories \ - files-master && - git read-tree --prefix=files_subtree -u files-master && - git commit -m "Add subproject master" && + files-main && + git read-tree --prefix=files_subtree -u files-main && + git commit -m "Add subproject main" && : add two extra commits to rebase && test_commit -C files_subtree topic_4 && @@ -70,7 +73,7 @@ test_expect_success 'setup' ' 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 && + git rebase -Xsubtree=files_subtree --preserve-merges --onto files-main main && verbose test "$(commit_message HEAD~)" = "topic_4" && verbose test "$(commit_message HEAD)" = "files_subtree/topic_5" ' @@ -79,7 +82,7 @@ test_expect_failure REBASE_P 'Rebase -Xsubtree --preserve-merges --onto commit' 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 && + git rebase -Xsubtree=files_subtree --keep-empty --preserve-merges --onto files-main main && verbose test "$(commit_message HEAD~2)" = "topic_4" && verbose test "$(commit_message HEAD~)" = "files_subtree/topic_5" && verbose test "$(commit_message HEAD)" = "Empty commit" @@ -88,7 +91,7 @@ test_expect_failure REBASE_P 'Rebase -Xsubtree --keep-empty --preserve-merges -- test_expect_success 'Rebase -Xsubtree --empty=ask --onto commit' ' reset_rebase && git checkout -b rebase-onto to-rebase && - test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --onto files-master master && + test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --onto files-main main && : first pick results in no changes && git rebase --skip && verbose test "$(commit_message HEAD~2)" = "topic_4" && @@ -99,7 +102,7 @@ test_expect_success 'Rebase -Xsubtree --empty=ask --onto commit' ' test_expect_success 'Rebase -Xsubtree --empty=ask --rebase-merges --onto commit' ' reset_rebase && git checkout -b rebase-merges-onto to-rebase && - test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --rebase-merges --onto files-master --root && + test_must_fail git rebase -Xsubtree=files_subtree --empty=ask --rebase-merges --onto files-main --root && : first pick results in no changes && git rebase --skip && verbose test "$(commit_message HEAD~2)" = "topic_4" && diff --git a/t/t3430-rebase-merges.sh b/t/t3430-rebase-merges.sh index b454f400eb..6748070df5 100755 --- a/t/t3430-rebase-merges.sh +++ b/t/t3430-rebase-merges.sh @@ -12,12 +12,15 @@ Initial setup: -- B -- (first) / \ - A - C - D - E - H (master) + A - C - D - E - H (main) \ \ / \ F - G (second) \ Conflicting-G ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh . "$TEST_DIRECTORY"/lib-log-graph.sh @@ -37,7 +40,7 @@ test_expect_success 'setup' ' git checkout -b first && test_commit B && b=$(git rev-parse --short HEAD) && - git checkout master && + git checkout main && test_commit C && c=$(git rev-parse --short HEAD) && test_commit D && @@ -52,7 +55,7 @@ test_expect_success 'setup' ' f=$(git rev-parse --short HEAD) && test_commit G && g=$(git rev-parse --short HEAD) && - git checkout master && + git checkout main && git merge --no-commit G && test_tick && git commit -m H && @@ -82,7 +85,7 @@ test_expect_success 'create completely different structure' ' EOF test_config sequence.editor \""$PWD"/replace-editor.sh\" && test_tick && - git rebase -i -r A master && + git rebase -i -r A main && test_cmp_graph <<-\EOF * Merge the topic branch '\''onebranch'\'' |\ @@ -183,7 +186,7 @@ test_expect_success 'fast-forward merge -c still rewords' ' ' test_expect_success 'with a branch tip that was cherry-picked already' ' - git checkout -b already-upstream master && + git checkout -b already-upstream main && base="$(git rev-parse --verify HEAD)" && test_commit A1 && @@ -211,7 +214,7 @@ test_expect_success 'with a branch tip that was cherry-picked already' ' ' test_expect_success 'do not rebase cousins unless asked for' ' - git checkout -b cousins master && + git checkout -b cousins main && before="$(git rev-parse --verify HEAD)" && test_tick && git rebase -r HEAD^ && @@ -340,7 +343,7 @@ test_expect_success 'a "merge" into a root commit is a fast-forward' ' test_expect_success 'A root commit can be a cousin, treat it that way' ' git checkout --orphan khnum && test_commit yama && - git checkout -b asherah master && + git checkout -b asherah main && test_commit shamkat && git merge --allow-unrelated-histories khnum && test_tick && @@ -367,7 +370,7 @@ test_expect_success 'labels that are object IDs are rewritten' ' git checkout -b third B && test_commit I && third=$(git rev-parse HEAD) && - git checkout -b labels master && + git checkout -b labels main && git merge --no-commit third && test_tick && git commit -m "Merge commit '\''$third'\'' into labels" && diff --git a/t/t3431-rebase-fork-point.sh b/t/t3431-rebase-fork-point.sh index 172562789e..2dab893c75 100755 --- a/t/t3431-rebase-fork-point.sh +++ b/t/t3431-rebase-fork-point.sh @@ -5,13 +5,16 @@ test_description='git rebase --fork-point test' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh -# A---B---D---E (master) +# A---B---D---E (main) # \ # C*---F---G (side) # -# C was formerly part of master but master was rewound to remove C +# C was formerly part of main but main was rewound to remove C # test_expect_success setup ' test_commit A && @@ -30,7 +33,7 @@ test_rebase () { expected="$1" && shift && test_expect_success "git rebase $*" " - git checkout master && + git checkout main && git reset --hard E && git checkout side && git reset --hard G && @@ -48,26 +51,26 @@ test_rebase 'G F C E D B A' --no-fork-point test_rebase 'G F C D B A' --no-fork-point --onto D test_rebase 'G F C B A' --no-fork-point --keep-base -test_rebase 'G F E D B A' --fork-point refs/heads/master -test_rebase 'G F E D B A' --fork-point master +test_rebase 'G F E D B A' --fork-point refs/heads/main +test_rebase 'G F E D B A' --fork-point main -test_rebase 'G F D B A' --fork-point --onto D refs/heads/master -test_rebase 'G F D B A' --fork-point --onto D master +test_rebase 'G F D B A' --fork-point --onto D refs/heads/main +test_rebase 'G F D B A' --fork-point --onto D main -test_rebase 'G F B A' --fork-point --keep-base refs/heads/master -test_rebase 'G F B A' --fork-point --keep-base master +test_rebase 'G F B A' --fork-point --keep-base refs/heads/main +test_rebase 'G F B A' --fork-point --keep-base main -test_rebase 'G F C E D B A' refs/heads/master -test_rebase 'G F C E D B A' master +test_rebase 'G F C E D B A' refs/heads/main +test_rebase 'G F C E D B A' main -test_rebase 'G F C D B A' --onto D refs/heads/master -test_rebase 'G F C D B A' --onto D master +test_rebase 'G F C D B A' --onto D refs/heads/main +test_rebase 'G F C D B A' --onto D main -test_rebase 'G F C B A' --keep-base refs/heads/master -test_rebase 'G F C B A' --keep-base master +test_rebase 'G F C B A' --keep-base refs/heads/main +test_rebase 'G F C B A' --keep-base main test_expect_success 'git rebase --fork-point with ambigous refname' ' - git checkout master && + git checkout main && git checkout -b one && git checkout side && git tag one && diff --git a/t/t3432-rebase-fast-forward.sh b/t/t3432-rebase-fast-forward.sh index a29eda87e9..5086e14c02 100755 --- a/t/t3432-rebase-fast-forward.sh +++ b/t/t3432-rebase-fast-forward.sh @@ -5,6 +5,9 @@ test_description='ensure rebase fast-forwards commits when possible' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -84,19 +87,19 @@ test_rebase_same_head_ () { changes='no changes' test_rebase_same_head success noop same success work same -test_rebase_same_head success noop same success work same master +test_rebase_same_head success noop same success work same main test_rebase_same_head success noop same success work diff --onto B B test_rebase_same_head success noop same success work diff --onto B... B -test_rebase_same_head success noop same success work same --onto master... master -test_rebase_same_head success noop same success work same --keep-base master +test_rebase_same_head success noop same success work same --onto main... main +test_rebase_same_head success noop same success work same --keep-base main test_rebase_same_head success noop same success work same --keep-base test_rebase_same_head success noop same success work same --no-fork-point test_rebase_same_head success noop same success work same --keep-base --no-fork-point -test_rebase_same_head success noop same success work same --fork-point master +test_rebase_same_head success noop same success work same --fork-point main test_rebase_same_head success noop same success work diff --fork-point --onto B B test_rebase_same_head success noop same success work diff --fork-point --onto B... B -test_rebase_same_head success noop same success work same --fork-point --onto master... master -test_rebase_same_head success noop same success work same --keep-base --keep-base master +test_rebase_same_head success noop same success work same --fork-point --onto main... main +test_rebase_same_head success noop same success work same --keep-base --keep-base main test_expect_success 'add work same to side' ' test_commit E @@ -104,22 +107,22 @@ test_expect_success 'add work same to side' ' changes='our changes' test_rebase_same_head success noop same success work same -test_rebase_same_head success noop same success work same master +test_rebase_same_head success noop same success work same main test_rebase_same_head success noop same success work diff --onto B B test_rebase_same_head success noop same success work diff --onto B... B -test_rebase_same_head success noop same success work same --onto master... master -test_rebase_same_head success noop same success work same --keep-base master +test_rebase_same_head success noop same success work same --onto main... main +test_rebase_same_head success noop same success work same --keep-base main test_rebase_same_head success noop same success work same --keep-base test_rebase_same_head success noop same success work same --no-fork-point test_rebase_same_head success noop same success work same --keep-base --no-fork-point -test_rebase_same_head success noop same success work same --fork-point master +test_rebase_same_head success noop same success work same --fork-point main test_rebase_same_head success noop same success work diff --fork-point --onto B B test_rebase_same_head success noop same success work diff --fork-point --onto B... B -test_rebase_same_head success noop same success work same --fork-point --onto master... master -test_rebase_same_head success noop same success work same --fork-point --keep-base master +test_rebase_same_head success noop same success work same --fork-point --onto main... main +test_rebase_same_head success noop same success work same --fork-point --keep-base main test_expect_success 'add work same to upstream' ' - git checkout master && + git checkout main && test_commit F && git checkout side ' @@ -127,12 +130,12 @@ test_expect_success 'add work same to upstream' ' changes='our and their changes' test_rebase_same_head success noop same success work diff --onto B B test_rebase_same_head success noop same success work diff --onto B... B -test_rebase_same_head success noop same success work diff --onto master... master -test_rebase_same_head success noop same success work diff --keep-base master +test_rebase_same_head success noop same success work diff --onto main... main +test_rebase_same_head success noop same success work diff --keep-base main test_rebase_same_head success noop same success work diff --keep-base test_rebase_same_head failure work same success work diff --fork-point --onto B B test_rebase_same_head failure work same success work diff --fork-point --onto B... B -test_rebase_same_head success noop same success work diff --fork-point --onto master... master -test_rebase_same_head success noop same success work diff --fork-point --keep-base master +test_rebase_same_head success noop same success work diff --fork-point --onto main... main +test_rebase_same_head success noop same success work diff --fork-point --keep-base main test_done diff --git a/t/t3434-rebase-i18n.sh b/t/t3434-rebase-i18n.sh index c7c835cde9..e6fef696bb 100755 --- a/t/t3434-rebase-i18n.sh +++ b/t/t3434-rebase-i18n.sh @@ -7,13 +7,16 @@ test_description='rebase with changing encoding Initial setup: -1 - 2 master +1 - 2 main \ 3 - 4 first \ 5 - 6 second ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh compare_msg () { @@ -41,7 +44,7 @@ test_expect_success 'rebase --rebase-merges update encoding eucJP to UTF-8' ' git config i18n.commitencoding eucJP && git merge -F "$TEST_DIRECTORY/t3434/eucJP.txt" second && git config i18n.commitencoding UTF-8 && - git rebase --rebase-merges master && + git rebase --rebase-merges main && compare_msg eucJP.txt eucJP UTF-8 ' @@ -50,7 +53,7 @@ test_expect_success 'rebase --rebase-merges update encoding eucJP to ISO-2022-JP git config i18n.commitencoding eucJP && git merge -F "$TEST_DIRECTORY/t3434/eucJP.txt" second && git config i18n.commitencoding ISO-2022-JP && - git rebase --rebase-merges master && + git rebase --rebase-merges main && compare_msg eucJP.txt eucJP ISO-2022-JP ' @@ -66,7 +69,7 @@ test_rebase_continue_update_encode () { git config i18n.commitencoding $old && git commit -F "$TEST_DIRECTORY/t3434/$msgfile" && git config i18n.commitencoding $new && - test_must_fail git rebase -m master && + test_must_fail git rebase -m main && test -f .git/rebase-merge/message && git stripspace <.git/rebase-merge/message >two.t && git add two.t && diff --git a/t/t3435-rebase-gpg-sign.sh b/t/t3435-rebase-gpg-sign.sh index 54120b09d6..ec10766858 100755 --- a/t/t3435-rebase-gpg-sign.sh +++ b/t/t3435-rebase-gpg-sign.sh @@ -5,6 +5,9 @@ test_description='test rebase --[no-]gpg-sign' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY/lib-rebase.sh" . "$TEST_DIRECTORY/lib-gpg.sh" @@ -46,7 +49,7 @@ test_expect_success 'setup: merge commit' ' test_commit fork-point && git switch -c side && test_commit three && - git switch master && + git switch main && git merge --no-ff side && git tag merged ' @@ -64,7 +67,7 @@ test_rebase_gpg_sign false -i --no-gpg-sign --gpg-sign test_expect_failure 'rebase -p --no-gpg-sign override commit.gpgsign' ' git reset --hard merged && git config commit.gpgsign true && - git rebase -p --no-gpg-sign --onto=one fork-point master && + git rebase -p --no-gpg-sign --onto=one fork-point main && test_must_fail git verify-commit HEAD ' diff --git a/t/t3436-rebase-more-options.sh b/t/t3436-rebase-more-options.sh index eaaf4c8d1d..4d106642ba 100755 --- a/t/t3436-rebase-more-options.sh +++ b/t/t3436-rebase-more-options.sh @@ -28,7 +28,7 @@ test_expect_success 'setup' ' test_commit commit2 foo foo2 && test_commit commit3 foo foo3 && - git checkout --orphan master && + git checkout --orphan main && rm foo && test_write_lines "line 1" " line 2" "line 3" >file && git commit -am "add file" && diff --git a/t/t3500-cherry.sh b/t/t3500-cherry.sh index 2b8d9cb38e..0458a58b4b 100755 --- a/t/t3500-cherry.sh +++ b/t/t3500-cherry.sh @@ -5,9 +5,12 @@ test_description='git cherry should detect patches integrated upstream -This test cherry-picks one local change of two into master branch, and +This test cherry-picks one local change of two into main branch, and checks that git cherry only returns the second patch in the local branch ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh GIT_AUTHOR_EMAIL=bogus_email_address @@ -32,7 +35,7 @@ test_expect_success \ test_tick && git commit -m "Add C." && - git checkout -f master && + git checkout -f main && rm -f B C && echo Third >> A && @@ -40,19 +43,19 @@ test_expect_success \ test_tick && git commit -m "Modify A." && - expr "$(echo $(git cherry master my-topic-branch) )" : "+ [^ ]* + .*" + expr "$(echo $(git cherry main my-topic-branch) )" : "+ [^ ]* + .*" ' test_expect_success \ 'check that cherry with limit returns only the top patch'\ - 'expr "$(echo $(git cherry master my-topic-branch my-topic-branch^1) )" : "+ [^ ]*" + 'expr "$(echo $(git cherry main my-topic-branch my-topic-branch^1) )" : "+ [^ ]*" ' test_expect_success \ 'cherry-pick one of the 2 patches, and check cherry recognized one and only one as new' \ 'git cherry-pick my-topic-branch^0 && - echo $(git cherry master my-topic-branch) && - expr "$(echo $(git cherry master my-topic-branch) )" : "+ [^ ]* - .*" + echo $(git cherry main my-topic-branch) && + expr "$(echo $(git cherry main my-topic-branch) )" : "+ [^ ]* - .*" ' test_expect_success 'cherry ignores whitespace' ' diff --git a/t/t3501-revert-cherry-pick.sh b/t/t3501-revert-cherry-pick.sh index 3669dfb1be..9d100cd188 100755 --- a/t/t3501-revert-cherry-pick.sh +++ b/t/t3501-revert-cherry-pick.sh @@ -10,6 +10,9 @@ test_description='test cherry-pick and revert with renames ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -112,7 +115,7 @@ test_expect_success 'cherry-pick on unborn branch' ' test_expect_success 'cherry-pick "-" to pick from previous branch' ' git checkout unborn && test_commit to-pick actual content && - git checkout master && + git checkout main && git cherry-pick - && echo content >expect && test_cmp expect actual @@ -132,7 +135,7 @@ test_expect_success 'cherry-pick "-" is meaningless without checkout' ' test_expect_success 'cherry-pick "-" works with arguments' ' git checkout -b side-branch && test_commit change actual change && - git checkout master && + git checkout main && git cherry-pick -s - && echo "Signed-off-by: C O Mitter <committer@example.com>" >expect && git cat-file commit HEAD | grep ^Signed-off-by: >signoff && diff --git a/t/t3502-cherry-pick-merge.sh b/t/t3502-cherry-pick-merge.sh index 8b635a196d..5495eacfec 100755 --- a/t/t3502-cherry-pick-merge.sh +++ b/t/t3502-cherry-pick-merge.sh @@ -8,6 +8,9 @@ test_description='cherry picking and reverting a merge ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -25,7 +28,7 @@ test_expect_success setup ' echo new line >B && git commit -m "add line to B" B && git tag b && - git checkout master && + git checkout main && git merge side && git tag c diff --git a/t/t3503-cherry-pick-root.sh b/t/t3503-cherry-pick-root.sh index e27f39d1e5..95fe4feaee 100755 --- a/t/t3503-cherry-pick-root.sh +++ b/t/t3503-cherry-pick-root.sh @@ -2,6 +2,9 @@ test_description='test cherry-picking (and reverting) a root commit' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -30,7 +33,7 @@ test_expect_success setup ' test_expect_success 'cherry-pick a root commit' ' git checkout second^0 && - git cherry-pick master && + git cherry-pick main && echo first >expect && test_cmp expect file1 @@ -38,14 +41,14 @@ test_expect_success 'cherry-pick a root commit' ' test_expect_success 'revert a root commit' ' - git revert master && + git revert main && test_path_is_missing file1 ' test_expect_success 'cherry-pick a root commit with an external strategy' ' - git cherry-pick --strategy=resolve master && + git cherry-pick --strategy=resolve main && echo first >expect && test_cmp expect file1 @@ -53,7 +56,7 @@ test_expect_success 'cherry-pick a root commit with an external strategy' ' test_expect_success 'revert a root commit with an external strategy' ' - git revert --strategy=resolve master && + git revert --strategy=resolve main && test_path_is_missing file1 ' @@ -65,7 +68,7 @@ test_expect_success 'cherry-pick two root commits' ' echo third >expect.file3 && git checkout second^0 && - git cherry-pick master third && + git cherry-pick main third && test_cmp expect.file1 file1 && test_cmp expect.file2 file2 && diff --git a/t/t3504-cherry-pick-rerere.sh b/t/t3504-cherry-pick-rerere.sh index 80a0d08706..9198535874 100755 --- a/t/t3504-cherry-pick-rerere.sh +++ b/t/t3504-cherry-pick-rerere.sh @@ -2,12 +2,15 @@ test_description='cherry-pick should rerere for conflicts' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' test_commit foo && - test_commit foo-master foo && - test_commit bar-master bar && + test_commit foo-main foo && + test_commit bar-main bar && git checkout -b dev foo && test_commit foo-dev foo && @@ -16,7 +19,7 @@ test_expect_success setup ' ' test_expect_success 'conflicting merge' ' - test_must_fail git merge master + test_must_fail git merge main ' test_expect_success 'fixup' ' @@ -29,7 +32,7 @@ test_expect_success 'fixup' ' ' test_expect_success 'cherry-pick conflict with --rerere-autoupdate' ' - test_must_fail git cherry-pick --rerere-autoupdate foo..bar-master && + test_must_fail git cherry-pick --rerere-autoupdate foo..bar-main && test_cmp foo-expect foo && git diff-files --quiet && test_must_fail git cherry-pick --continue && @@ -41,7 +44,7 @@ test_expect_success 'cherry-pick conflict with --rerere-autoupdate' ' test_expect_success 'cherry-pick conflict repsects rerere.autoUpdate' ' test_config rerere.autoUpdate true && - test_must_fail git cherry-pick foo..bar-master && + test_must_fail git cherry-pick foo..bar-main && test_cmp foo-expect foo && git diff-files --quiet && test_must_fail git cherry-pick --continue && @@ -53,7 +56,7 @@ test_expect_success 'cherry-pick conflict repsects rerere.autoUpdate' ' test_expect_success 'cherry-pick conflict with --no-rerere-autoupdate' ' test_config rerere.autoUpdate true && - test_must_fail git cherry-pick --no-rerere-autoupdate foo..bar-master && + test_must_fail git cherry-pick --no-rerere-autoupdate foo..bar-main && test_cmp foo-expect foo && test_must_fail git diff-files --quiet && git add foo && @@ -66,7 +69,7 @@ test_expect_success 'cherry-pick conflict with --no-rerere-autoupdate' ' ' test_expect_success 'cherry-pick --continue rejects --rerere-autoupdate' ' - test_must_fail git cherry-pick --rerere-autoupdate foo..bar-master && + test_must_fail git cherry-pick --rerere-autoupdate foo..bar-main && test_cmp foo-expect foo && git diff-files --quiet && test_must_fail git cherry-pick --continue --rerere-autoupdate >actual 2>&1 && @@ -79,25 +82,25 @@ test_expect_success 'cherry-pick --continue rejects --rerere-autoupdate' ' ' test_expect_success 'cherry-pick --rerere-autoupdate more than once' ' - test_must_fail git cherry-pick --rerere-autoupdate --rerere-autoupdate foo..bar-master && + test_must_fail git cherry-pick --rerere-autoupdate --rerere-autoupdate foo..bar-main && test_cmp foo-expect foo && git diff-files --quiet && git cherry-pick --abort && - test_must_fail git cherry-pick --rerere-autoupdate --no-rerere-autoupdate --rerere-autoupdate foo..bar-master && + test_must_fail git cherry-pick --rerere-autoupdate --no-rerere-autoupdate --rerere-autoupdate foo..bar-main && test_cmp foo-expect foo && git diff-files --quiet && git cherry-pick --abort && - test_must_fail git cherry-pick --rerere-autoupdate --no-rerere-autoupdate foo..bar-master && + test_must_fail git cherry-pick --rerere-autoupdate --no-rerere-autoupdate foo..bar-main && test_must_fail git diff-files --quiet && git cherry-pick --abort ' test_expect_success 'cherry-pick conflict without rerere' ' test_config rerere.enabled false && - test_must_fail git cherry-pick foo-master && + test_must_fail git cherry-pick foo-main && grep ===== foo && grep foo-dev foo && - grep foo-master foo + grep foo-main foo ' test_done diff --git a/t/t3505-cherry-pick-empty.sh b/t/t3505-cherry-pick-empty.sh index 5f911bb529..eba3c38d5a 100755 --- a/t/t3505-cherry-pick-empty.sh +++ b/t/t3505-cherry-pick-empty.sh @@ -2,6 +2,9 @@ test_description='test cherry-picking an empty commit' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -17,7 +20,7 @@ test_expect_success setup ' test_tick && git commit --allow-empty-message -m "" && - git checkout master && + git checkout main && git checkout -b empty-change-branch && test_tick && git commit --allow-empty -m "empty" @@ -25,7 +28,7 @@ test_expect_success setup ' ' test_expect_success 'cherry-pick an empty commit' ' - git checkout master && + git checkout main && test_expect_code 1 git cherry-pick empty-change-branch ' @@ -35,7 +38,7 @@ test_expect_success 'index lockfile was removed' ' test_expect_success 'cherry-pick a commit with an empty message' ' test_when_finished "git reset --hard empty-message-branch~1" && - git checkout master && + git checkout main && git cherry-pick empty-message-branch ' @@ -44,12 +47,12 @@ test_expect_success 'index lockfile was removed' ' ' test_expect_success 'cherry-pick a commit with an empty message with --allow-empty-message' ' - git checkout -f master && + git checkout -f main && git cherry-pick --allow-empty-message empty-message-branch ' test_expect_success 'cherry pick an empty non-ff commit without --allow-empty' ' - git checkout master && + git checkout main && echo fourth >>file2 && git add file2 && git commit -m "fourth" && @@ -57,22 +60,22 @@ test_expect_success 'cherry pick an empty non-ff commit without --allow-empty' ' ' test_expect_success 'cherry pick an empty non-ff commit with --allow-empty' ' - git checkout master && + git checkout main && git cherry-pick --allow-empty empty-change-branch ' test_expect_success 'cherry pick with --keep-redundant-commits' ' - git checkout master && + git checkout main && git cherry-pick --keep-redundant-commits HEAD^ ' test_expect_success 'cherry-pick a commit that becomes no-op (prep)' ' - git checkout master && + git checkout main && git branch fork && echo foo >file2 && git add file2 && test_tick && - git commit -m "add file2 on master" && + git commit -m "add file2 on main" && git checkout fork && echo foo >file2 && @@ -84,15 +87,15 @@ test_expect_success 'cherry-pick a commit that becomes no-op (prep)' ' test_expect_success 'cherry-pick a no-op without --keep-redundant' ' git reset --hard && git checkout fork^0 && - test_must_fail git cherry-pick master + test_must_fail git cherry-pick main ' test_expect_success 'cherry-pick a no-op with --keep-redundant' ' git reset --hard && git checkout fork^0 && - git cherry-pick --keep-redundant-commits master && + git cherry-pick --keep-redundant-commits main && git show -s --format=%s >actual && - echo "add file2 on master" >expect && + echo "add file2 on main" >expect && test_cmp expect actual ' diff --git a/t/t3506-cherry-pick-ff.sh b/t/t3506-cherry-pick-ff.sh index 9d5adbc130..7e11bd4a4c 100755 --- a/t/t3506-cherry-pick-ff.sh +++ b/t/t3506-cherry-pick-ff.sh @@ -2,6 +2,9 @@ test_description='test cherry-picking with --ff option' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -24,7 +27,7 @@ test_expect_success setup ' ' test_expect_success 'cherry-pick using --ff fast forwards' ' - git checkout master && + git checkout main && git reset --hard first && test_tick && git cherry-pick --ff second && @@ -32,7 +35,7 @@ test_expect_success 'cherry-pick using --ff fast forwards' ' ' test_expect_success 'cherry-pick not using --ff does not fast forwards' ' - git checkout master && + git checkout main && git reset --hard first && test_tick && git cherry-pick second && @@ -49,7 +52,7 @@ test_expect_success 'cherry-pick not using --ff does not fast forwards' ' # (This has been taken from t3502-cherry-pick-merge.sh) # test_expect_success 'merge setup' ' - git checkout master && + git checkout main && git reset --hard first && echo new line >A && git add A && @@ -62,7 +65,7 @@ test_expect_success 'merge setup' ' test_tick && git commit -m "add line to B" B && git tag B && - git checkout master && + git checkout main && git merge side && git tag C && git checkout -b new A diff --git a/t/t3507-cherry-pick-conflict.sh b/t/t3507-cherry-pick-conflict.sh index a21adcf0e4..5f4564c830 100755 --- a/t/t3507-cherry-pick-conflict.sh +++ b/t/t3507-cherry-pick-conflict.sh @@ -9,6 +9,9 @@ test_description='test cherry-pick and revert with conflicts ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh pristine_detach () { @@ -29,7 +32,7 @@ test_expect_success setup ' test_commit redundant-pick foo c redundant && git commit --allow-empty --allow-empty-message && git tag empty && - git checkout master && + git checkout main && git config advice.detachedhead false ' diff --git a/t/t3508-cherry-pick-many-commits.sh b/t/t3508-cherry-pick-many-commits.sh index 23070a7b73..ec7a2c9fcf 100755 --- a/t/t3508-cherry-pick-many-commits.sh +++ b/t/t3508-cherry-pick-many-commits.sh @@ -2,6 +2,9 @@ test_description='test cherry-picking many commits' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_head_differs_from() { @@ -31,7 +34,7 @@ test_expect_success setup ' ' test_expect_success 'cherry-pick first..fourth works' ' - git checkout -f master && + git checkout -f main && git reset --hard first && test_tick && git cherry-pick first..fourth && @@ -45,7 +48,7 @@ test_expect_success 'cherry-pick three one two works' ' test_commit one && test_commit two && test_commit three && - git checkout -f master && + git checkout -f main && git reset --hard first && git cherry-pick three one two && git diff --quiet three && @@ -56,28 +59,28 @@ two" ' test_expect_success 'cherry-pick three one two: fails' ' - git checkout -f master && + git checkout -f main && git reset --hard first && test_must_fail git cherry-pick three one two: ' test_expect_success 'output to keep user entertained during multi-pick' ' cat <<-\EOF >expected && - [master OBJID] second + [main OBJID] second Author: A U Thor <author@example.com> Date: Thu Apr 7 15:14:13 2005 -0700 1 file changed, 1 insertion(+) - [master OBJID] third + [main OBJID] third Author: A U Thor <author@example.com> Date: Thu Apr 7 15:15:13 2005 -0700 1 file changed, 1 insertion(+) - [master OBJID] fourth + [main OBJID] fourth Author: A U Thor <author@example.com> Date: Thu Apr 7 15:16:13 2005 -0700 1 file changed, 1 insertion(+) EOF - git checkout -f master && + git checkout -f main && git reset --hard first && test_tick && git cherry-pick first..fourth >actual && @@ -87,7 +90,7 @@ test_expect_success 'output to keep user entertained during multi-pick' ' ' test_expect_success 'cherry-pick --strategy resolve first..fourth works' ' - git checkout -f master && + git checkout -f main && git reset --hard first && test_tick && git cherry-pick --strategy resolve first..fourth && @@ -99,23 +102,23 @@ test_expect_success 'cherry-pick --strategy resolve first..fourth works' ' test_expect_success 'output during multi-pick indicates merge strategy' ' cat <<-\EOF >expected && Trying simple merge. - [master OBJID] second + [main OBJID] second Author: A U Thor <author@example.com> Date: Thu Apr 7 15:14:13 2005 -0700 1 file changed, 1 insertion(+) Trying simple merge. - [master OBJID] third + [main OBJID] third Author: A U Thor <author@example.com> Date: Thu Apr 7 15:15:13 2005 -0700 1 file changed, 1 insertion(+) Trying simple merge. - [master OBJID] fourth + [main OBJID] fourth Author: A U Thor <author@example.com> Date: Thu Apr 7 15:16:13 2005 -0700 1 file changed, 1 insertion(+) EOF - git checkout -f master && + git checkout -f main && git reset --hard first && test_tick && git cherry-pick --strategy resolve first..fourth >actual && @@ -124,7 +127,7 @@ test_expect_success 'output during multi-pick indicates merge strategy' ' ' test_expect_success 'cherry-pick --ff first..fourth works' ' - git checkout -f master && + git checkout -f main && git reset --hard first && test_tick && git cherry-pick --ff first..fourth && @@ -134,7 +137,7 @@ test_expect_success 'cherry-pick --ff first..fourth works' ' ' test_expect_success 'cherry-pick -n first..fourth works' ' - git checkout -f master && + git checkout -f main && git reset --hard first && test_tick && git cherry-pick -n first..fourth && @@ -144,7 +147,7 @@ test_expect_success 'cherry-pick -n first..fourth works' ' ' test_expect_success 'revert first..fourth works' ' - git checkout -f master && + git checkout -f main && git reset --hard fourth && test_tick && git revert first..fourth && @@ -154,7 +157,7 @@ test_expect_success 'revert first..fourth works' ' ' test_expect_success 'revert ^first fourth works' ' - git checkout -f master && + git checkout -f main && git reset --hard fourth && test_tick && git revert ^first fourth && @@ -164,7 +167,7 @@ test_expect_success 'revert ^first fourth works' ' ' test_expect_success 'revert fourth fourth~1 fourth~2 works' ' - git checkout -f master && + git checkout -f main && git reset --hard fourth && test_tick && git revert fourth fourth~1 fourth~2 && @@ -174,7 +177,7 @@ test_expect_success 'revert fourth fourth~1 fourth~2 works' ' ' test_expect_success 'cherry-pick -3 fourth works' ' - git checkout -f master && + git checkout -f main && git reset --hard first && test_tick && git cherry-pick -3 fourth && @@ -184,7 +187,7 @@ test_expect_success 'cherry-pick -3 fourth works' ' ' test_expect_success 'cherry-pick --stdin works' ' - git checkout -f master && + git checkout -f main && git reset --hard first && test_tick && git rev-list --reverse first..fourth | git cherry-pick --stdin && diff --git a/t/t3509-cherry-pick-merge-df.sh b/t/t3509-cherry-pick-merge-df.sh index 1e5b3948df..f4159246e1 100755 --- a/t/t3509-cherry-pick-merge-df.sh +++ b/t/t3509-cherry-pick-merge-df.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='Test cherry-pick with directory/file conflicts' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'Initialize repository' ' @@ -28,7 +31,7 @@ test_expect_success 'Setup rename across paths each below D/F conflicts' ' test_expect_success 'Cherry-pick succeeds with rename across D/F conflicts' ' git reset --hard && - git checkout master^0 && + git checkout main^0 && git cherry-pick branch ' diff --git a/t/t3512-cherry-pick-submodule.sh b/t/t3512-cherry-pick-submodule.sh index 6ece1d8573..822f2d4bfb 100755 --- a/t/t3512-cherry-pick-submodule.sh +++ b/t/t3512-cherry-pick-submodule.sh @@ -2,6 +2,9 @@ test_description='cherry-pick can handle submodules' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-submodule-update.sh @@ -35,7 +38,7 @@ test_expect_success 'unrelated submodule/file conflict is ignored' ' git add a_file && git commit -m "modify a file" && - git checkout master && + git checkout main && git submodule add ../sub sub && git submodule update sub && diff --git a/t/t3600-rm.sh b/t/t3600-rm.sh index efec8d13b6..dff1228669 100755 --- a/t/t3600-rm.sh +++ b/t/t3600-rm.sh @@ -5,6 +5,9 @@ test_description='Test of the various options to git rm.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Setup some files to be removed, some with funny characters @@ -483,16 +486,16 @@ test_expect_success 'setup submodule conflict' ' echo 1 >nitfol && git add nitfol && git commit -m "added nitfol 1" && - git checkout -b branch2 master && + git checkout -b branch2 main && echo 2 >nitfol && git add nitfol && git commit -m "added nitfol 2" && - git checkout -b conflict1 master && + git checkout -b conflict1 main && git -C submod fetch && git -C submod checkout branch1 && git add submod && git commit -m "submod 1" && - git checkout -b conflict2 master && + git checkout -b conflict2 main && git -C submod checkout branch2 && git add submod && git commit -m "submod 2" @@ -604,7 +607,7 @@ test_expect_success 'rm of a conflicted unpopulated submodule succeeds' ' ' test_expect_success 'rm of a populated submodule with a .git directory migrates git dir' ' - git checkout -f master && + git checkout -f main && git reset --hard && git submodule update && ( @@ -717,7 +720,7 @@ test_expect_success 'checking out a commit after submodule removal needs manual git checkout HEAD^ && git submodule update && git checkout -q HEAD^ && - git checkout -q master 2>actual && + git checkout -q main 2>actual && test_i18ngrep "^warning: unable to rmdir '\''submod'\'':" actual && git status -s submod >actual && echo "?? submod/" >expected && diff --git a/t/t3701-add-interactive.sh b/t/t3701-add-interactive.sh index cc3f434a97..b2f90997db 100755 --- a/t/t3701-add-interactive.sh +++ b/t/t3701-add-interactive.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='add -i basic tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-terminal.sh @@ -549,8 +552,8 @@ test_expect_success 'patch mode ignores unmerged entries' ' test_commit non-conflict && git checkout -b side && test_commit side conflict.t && - git checkout master && - test_commit master conflict.t && + git checkout main && + test_commit main conflict.t && test_must_fail git merge side && echo changed >non-conflict.t && echo y | git add -p >output && @@ -849,6 +852,12 @@ test_expect_success 'setup different kinds of dirty submodules' ' cat >expected <<-\EOF && dirty-both-ways dirty-head + EOF + test_cmp expected actual && + git -C for-submodules diff-files --name-only --ignore-submodules=none >actual && + cat >expected <<-\EOF && + dirty-both-ways + dirty-head dirty-otherwise EOF test_cmp expected actual && diff --git a/t/t3800-mktag.sh b/t/t3800-mktag.sh index d696aa4e52..86bfeb271e 100755 --- a/t/t3800-mktag.sh +++ b/t/t3800-mktag.sh @@ -12,10 +12,29 @@ test_description='git mktag: tag object verify test' # given in the expect.pat file. check_verify_failure () { - expect="$2" + test_expect_success "$1" " + test_must_fail env GIT_TEST_GETTEXT_POISON=false \ + git mktag <tag.sig 2>message && + grep '$2' message && + if test '$3' != '--no-strict' + then + test_must_fail env GIT_TEST_GETTEXT_POISON=false \ + git mktag --no-strict <tag.sig 2>message.no-strict && + grep '$2' message.no-strict + fi + " +} + +test_expect_mktag_success() { test_expect_success "$1" ' - ( test_must_fail git mktag <tag.sig 2>message ) && - grep "$expect" message + git hash-object -t tag -w --stdin <tag.sig >expected && + git fsck --strict && + + git mktag <tag.sig >hash && + test_cmp expected hash && + test_when_finished "git update-ref -d refs/tags/mytag $(cat hash)" && + git update-ref refs/tags/mytag $(cat hash) $(test_oid zero) && + git fsck --strict ' } @@ -23,10 +42,24 @@ check_verify_failure () { # first create a commit, so we have a valid object/type # for the tag. test_expect_success 'setup' ' - echo Hello >A && - git update-index --add A && - git commit -m "Initial commit" && - head=$(git rev-parse --verify HEAD) + test_commit A && + test_commit B && + head=$(git rev-parse --verify HEAD) && + head_parent=$(git rev-parse --verify HEAD~) && + tree=$(git rev-parse HEAD^{tree}) && + blob=$(git rev-parse --verify HEAD:B.t) +' + +test_expect_success 'basic usage' ' + cat >tag.sig <<-EOF && + object $head + type commit + tag mytag + tagger T A Gger <tagger@example.com> 1206478233 -0500 + EOF + git mktag <tag.sig && + git mktag --end-of-options <tag.sig && + test_expect_code 129 git mktag --unknown-option ' ############################################################ @@ -37,33 +70,33 @@ too short for a tag EOF check_verify_failure 'Tag object length check' \ - '^error: .*size wrong.*$' + '^error:.* missingObject:' 'strict' ############################################################ # 2. object line label check cat >tag.sig <<EOF -xxxxxx 139e9b33986b1c2670fff52c5067603117b3e895 +xxxxxx $head type tag tag mytag tagger . <> 0 +0000 EOF -check_verify_failure '"object" line label check' '^error: char0: .*"object "$' +check_verify_failure '"object" line label check' '^error:.* missingObject:' ############################################################ -# 3. object line SHA1 check +# 3. object line hash check cat >tag.sig <<EOF -object zz9e9b33986b1c2670fff52c5067603117b3e895 +object $(echo $head | tr 0-9a-f z) type tag tag mytag tagger . <> 0 +0000 EOF -check_verify_failure '"object" line SHA1 check' '^error: char7: .*SHA1 hash$' +check_verify_failure '"object" line check' '^error:.* badObjectSha1:' ############################################################ # 4. type line label check @@ -76,7 +109,7 @@ tagger . <> 0 +0000 EOF -check_verify_failure '"type" line label check' '^error: char.*: .*"\\ntype "$' +check_verify_failure '"type" line label check' '^error:.* missingTypeEntry:' ############################################################ # 5. type line eol check @@ -84,7 +117,7 @@ check_verify_failure '"type" line label check' '^error: char.*: .*"\\ntype "$' echo "object $head" >tag.sig printf "type tagsssssssssssssssssssssssssssssss" >>tag.sig -check_verify_failure '"type" line eol check' '^error: char.*: .*"\\n"$' +check_verify_failure '"type" line eol check' '^error:.* unterminatedHeader:' ############################################################ # 6. tag line label check #1 @@ -98,7 +131,7 @@ tagger . <> 0 +0000 EOF check_verify_failure '"tag" line label check #1' \ - '^error: char.*: no "tag " found$' + '^error:.* missingTagEntry:' ############################################################ # 7. tag line label check #2 @@ -110,7 +143,7 @@ tag EOF check_verify_failure '"tag" line label check #2' \ - '^error: char.*: no "tag " found$' + '^error:.* badType:' ############################################################ # 8. type line type-name length check @@ -122,21 +155,83 @@ tag mytag EOF check_verify_failure '"type" line type-name length check' \ - '^error: char.*: type too long$' + '^error:.* badType:' ############################################################ -# 9. verify object (SHA1/type) check +# 9. verify object (hash/type) check cat >tag.sig <<EOF object $(test_oid deadbeef) +type tag +tag mytag +tagger . <> 0 +0000 + +EOF + +check_verify_failure 'verify object (hash/type) check -- correct type, nonexisting object' \ + '^fatal: could not read tagged object' + +cat >tag.sig <<EOF +object $head type tagggg tag mytag tagger . <> 0 +0000 EOF -check_verify_failure 'verify object (SHA1/type) check' \ - '^error: char7: could not verify object.*$' +check_verify_failure 'verify object (hash/type) check -- made-up type, valid object' \ + '^error:.* badType:' + +cat >tag.sig <<EOF +object $(test_oid deadbeef) +type tagggg +tag mytag +tagger . <> 0 +0000 + +EOF + +check_verify_failure 'verify object (hash/type) check -- made-up type, nonexisting object' \ + '^error:.* badType:' + +cat >tag.sig <<EOF +object $head +type tree +tag mytag +tagger . <> 0 +0000 + +EOF + +check_verify_failure 'verify object (hash/type) check -- mismatched type, valid object' \ + '^fatal: object.*tagged as.*tree.*but is.*commit' + +############################################################ +# 9.5. verify object (hash/type) check -- replacement + +test_expect_success 'setup replacement of commit -> commit and tree -> blob' ' + git replace $head_parent $head && + git replace -f $tree $blob +' + +cat >tag.sig <<EOF +object $head_parent +type commit +tag mytag +tagger . <> 0 +0000 + +EOF + +test_expect_mktag_success 'tag to a commit replaced by another commit' + +cat >tag.sig <<EOF +object $tree +type tree +tag mytag +tagger . <> 0 +0000 + +EOF + +check_verify_failure 'verify object (hash/type) check -- mismatched type, valid object' \ + '^fatal: object.*tagged as.*tree.*but is.*blob' ############################################################ # 10. verify tag-name check @@ -150,7 +245,7 @@ tagger . <> 0 +0000 EOF check_verify_failure 'verify tag-name check' \ - '^error: char.*: could not verify tag name$' + '^error:.* badTagName:' '--no-strict' ############################################################ # 11. tagger line label check #1 @@ -164,7 +259,7 @@ This is filler EOF check_verify_failure '"tagger" line label check #1' \ - '^error: char.*: could not find "tagger "$' + '^error:.* missingTaggerEntry:' '--no-strict' ############################################################ # 12. tagger line label check #2 @@ -179,10 +274,10 @@ This is filler EOF check_verify_failure '"tagger" line label check #2' \ - '^error: char.*: could not find "tagger "$' + '^error:.* missingTaggerEntry:' '--no-strict' ############################################################ -# 13. disallow missing tag author name +# 13. allow missing tag author name like fsck cat >tag.sig <<EOF object $head @@ -193,8 +288,7 @@ tagger <> 0 +0000 This is filler EOF -check_verify_failure 'disallow missing tag author name' \ - '^error: char.*: missing tagger name$' +test_expect_mktag_success 'allow missing tag author name' ############################################################ # 14. disallow missing tag author name @@ -209,7 +303,7 @@ tagger T A Gger < EOF check_verify_failure 'disallow malformed tagger' \ - '^error: char.*: malformed tagger field$' + '^error:.* badEmail:' '--no-strict' ############################################################ # 15. allow empty tag email @@ -222,12 +316,10 @@ tagger T A Gger <> 0 +0000 EOF -test_expect_success \ - 'allow empty tag email' \ - 'git mktag <tag.sig >.git/refs/tags/mytag 2>message' +test_expect_mktag_success 'allow empty tag email' ############################################################ -# 16. disallow spaces in tag email +# 16. allow spaces in tag email like fsck cat >tag.sig <<EOF object $head @@ -237,8 +329,7 @@ tagger T A Gger <tag ger@example.com> 0 +0000 EOF -check_verify_failure 'disallow spaces in tag email' \ - '^error: char.*: malformed tagger field$' +test_expect_mktag_success 'allow spaces in tag email like fsck' ############################################################ # 17. disallow missing tag timestamp @@ -252,7 +343,7 @@ tagger T A Gger <tagger@example.com>__ EOF check_verify_failure 'disallow missing tag timestamp' \ - '^error: char.*: missing tag timestamp$' + '^error:.* badDate:' ############################################################ # 18. detect invalid tag timestamp1 @@ -266,7 +357,7 @@ tagger T A Gger <tagger@example.com> Tue Mar 25 15:47:44 2008 EOF check_verify_failure 'detect invalid tag timestamp1' \ - '^error: char.*: missing tag timestamp$' + '^error:.* badDate:' ############################################################ # 19. detect invalid tag timestamp2 @@ -280,7 +371,7 @@ tagger T A Gger <tagger@example.com> 2008-03-31T12:20:15-0500 EOF check_verify_failure 'detect invalid tag timestamp2' \ - '^error: char.*: malformed tag timestamp$' + '^error:.* badDate:' ############################################################ # 20. detect invalid tag timezone1 @@ -294,7 +385,7 @@ tagger T A Gger <tagger@example.com> 1206478233 GMT EOF check_verify_failure 'detect invalid tag timezone1' \ - '^error: char.*: malformed tag timezone$' + '^error:.* badTimezone:' ############################################################ # 21. detect invalid tag timezone2 @@ -308,10 +399,10 @@ tagger T A Gger <tagger@example.com> 1206478233 + 30 EOF check_verify_failure 'detect invalid tag timezone2' \ - '^error: char.*: malformed tag timezone$' + '^error:.* badTimezone:' ############################################################ -# 22. detect invalid tag timezone3 +# 22. allow invalid tag timezone3 (the maximum is -1200/+1400) cat >tag.sig <<EOF object $head @@ -321,8 +412,7 @@ tagger T A Gger <tagger@example.com> 1206478233 -1430 EOF -check_verify_failure 'detect invalid tag timezone3' \ - '^error: char.*: malformed tag timezone$' +test_expect_mktag_success 'allow invalid tag timezone' ############################################################ # 23. detect invalid header entry @@ -337,10 +427,41 @@ this line should not be here EOF check_verify_failure 'detect invalid header entry' \ - '^error: char.*: trailing garbage in tag header$' + '^error:.* extraHeaderEntry:' '--no-strict' -############################################################ -# 24. create valid tag +test_expect_success 'invalid header entry config & fsck' ' + test_must_fail git mktag <tag.sig && + git mktag --no-strict <tag.sig && + + test_must_fail git -c fsck.extraHeaderEntry=error mktag <tag.sig && + test_must_fail git -c fsck.extraHeaderEntry=error mktag --no-strict <tag.sig && + + test_must_fail git -c fsck.extraHeaderEntry=warn mktag <tag.sig && + git -c fsck.extraHeaderEntry=warn mktag --no-strict <tag.sig && + + git -c fsck.extraHeaderEntry=ignore mktag <tag.sig && + git -c fsck.extraHeaderEntry=ignore mktag --no-strict <tag.sig && + + git fsck && + env GIT_TEST_GETTEXT_POISON=false \ + git -c fsck.extraHeaderEntry=warn fsck 2>err && + grep "warning .*extraHeaderEntry:" err && + test_must_fail env GIT_TEST_GETTEXT_POISON=false \ + git -c fsck.extraHeaderEntry=error 2>err fsck && + grep "error .* extraHeaderEntry:" err +' + +cat >tag.sig <<EOF +object $head +type commit +tag mytag +tagger T A Gger <tagger@example.com> 1206478233 -0500 + + +this line comes after an extra newline +EOF + +test_expect_mktag_success 'allow extra newlines at start of body' cat >tag.sig <<EOF object $head @@ -350,16 +471,27 @@ tagger T A Gger <tagger@example.com> 1206478233 -0500 EOF -test_expect_success \ - 'create valid tag' \ - 'git mktag <tag.sig >.git/refs/tags/mytag 2>message' +test_expect_mktag_success 'allow a blank line before an empty body (1)' + +cat >tag.sig <<EOF +object $head +type commit +tag mytag +tagger T A Gger <tagger@example.com> 1206478233 -0500 +EOF + +test_expect_mktag_success 'allow no blank line before an empty body (2)' ############################################################ -# 25. check mytag +# 24. create valid tag -test_expect_success \ - 'check mytag' \ - 'git tag -l | grep mytag' +cat >tag.sig <<EOF +object $head +type commit +tag mytag +tagger T A Gger <tagger@example.com> 1206478233 -0500 +EOF +test_expect_mktag_success 'create valid tag object' test_done diff --git a/t/t3901-i18n-patch.sh b/t/t3901-i18n-patch.sh index 923eb01f0e..4f16a735d9 100755 --- a/t/t3901-i18n-patch.sh +++ b/t/t3901-i18n-patch.sh @@ -5,6 +5,9 @@ test_description='i18n settings and format-patch | am pipe' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_encoding () { @@ -45,7 +48,7 @@ test_expect_success setup ' # the first commit on the side branch is UTF-8 test_tick && - git checkout -b side master^ && + git checkout -b side main^ && echo Another file >yours && git add yours && git commit -s -m "Second on side" && @@ -69,7 +72,7 @@ test_expect_success setup ' test_expect_success 'format-patch output (ISO-8859-1)' ' git config i18n.logoutputencoding ISO8859-1 && - git format-patch --stdout master..HEAD^ >out-l1 && + git format-patch --stdout main..HEAD^ >out-l1 && git format-patch --stdout HEAD^ >out-l2 && grep "^Content-Type: text/plain; charset=ISO8859-1" out-l1 && grep "^From: =?ISO8859-1?q?=C1=E9=ED=20=F3=FA?=" out-l1 && @@ -80,7 +83,7 @@ test_expect_success 'format-patch output (ISO-8859-1)' ' test_expect_success 'format-patch output (UTF-8)' ' git config i18n.logoutputencoding UTF-8 && - git format-patch --stdout master..HEAD^ >out-u1 && + git format-patch --stdout main..HEAD^ >out-u1 && git format-patch --stdout HEAD^ >out-u2 && grep "^Content-Type: text/plain; charset=UTF-8" out-u1 && grep "^From: =?UTF-8?q?=C3=81=C3=A9=C3=AD=20=C3=B3=C3=BA?=" out-u1 && @@ -102,7 +105,7 @@ test_expect_success 'rebase (U/U)' ' # we want UTF-8 encoded name. . "$TEST_DIRECTORY"/t3901/utf8.txt && git checkout -b test && - git rebase master && + git rebase main && check_encoding 2 ' @@ -113,7 +116,7 @@ test_expect_success 'rebase (U/L)' ' . "$TEST_DIRECTORY"/t3901/utf8.txt && git reset --hard side && - git rebase master && + git rebase main && check_encoding 2 ' @@ -125,7 +128,7 @@ test_expect_success !MINGW 'rebase (L/L)' ' . "$TEST_DIRECTORY"/t3901/8859-1.txt && git reset --hard side && - git rebase master && + git rebase main && check_encoding 2 8859 ' @@ -138,7 +141,7 @@ test_expect_success !MINGW 'rebase (L/U)' ' . "$TEST_DIRECTORY"/t3901/8859-1.txt && git reset --hard side && - git rebase master && + git rebase main && check_encoding 2 8859 ' @@ -150,7 +153,7 @@ test_expect_success 'cherry-pick(U/U)' ' git config i18n.logoutputencoding UTF-8 && . "$TEST_DIRECTORY"/t3901/utf8.txt && - git reset --hard master && + git reset --hard main && git cherry-pick side^ && git cherry-pick side && git revert HEAD && @@ -165,7 +168,7 @@ test_expect_success !MINGW 'cherry-pick(L/L)' ' git config i18n.logoutputencoding ISO8859-1 && . "$TEST_DIRECTORY"/t3901/8859-1.txt && - git reset --hard master && + git reset --hard main && git cherry-pick side^ && git cherry-pick side && git revert HEAD && @@ -180,7 +183,7 @@ test_expect_success 'cherry-pick(U/L)' ' git config i18n.logoutputencoding ISO8859-1 && . "$TEST_DIRECTORY"/t3901/utf8.txt && - git reset --hard master && + git reset --hard main && git cherry-pick side^ && git cherry-pick side && git revert HEAD && @@ -196,7 +199,7 @@ test_expect_success !MINGW 'cherry-pick(L/U)' ' git config i18n.logoutputencoding UTF-8 && . "$TEST_DIRECTORY"/t3901/8859-1.txt && - git reset --hard master && + git reset --hard main && git cherry-pick side^ && git cherry-pick side && git revert HEAD && @@ -210,7 +213,7 @@ test_expect_success 'rebase --merge (U/U)' ' . "$TEST_DIRECTORY"/t3901/utf8.txt && git reset --hard side && - git rebase --merge master && + git rebase --merge main && check_encoding 2 ' @@ -221,7 +224,7 @@ test_expect_success 'rebase --merge (U/L)' ' . "$TEST_DIRECTORY"/t3901/utf8.txt && git reset --hard side && - git rebase --merge master && + git rebase --merge main && check_encoding 2 ' @@ -233,7 +236,7 @@ test_expect_success 'rebase --merge (L/L)' ' . "$TEST_DIRECTORY"/t3901/8859-1.txt && git reset --hard side && - git rebase --merge master && + git rebase --merge main && check_encoding 2 8859 ' @@ -246,7 +249,7 @@ test_expect_success 'rebase --merge (L/U)' ' . "$TEST_DIRECTORY"/t3901/8859-1.txt && git reset --hard side && - git rebase --merge master && + git rebase --merge main && check_encoding 2 8859 ' @@ -256,7 +259,7 @@ test_expect_success 'am (U/U)' ' git config i18n.commitencoding UTF-8 && . "$TEST_DIRECTORY"/t3901/utf8.txt && - git reset --hard master && + git reset --hard main && git am out-u1 out-u2 && check_encoding 2 @@ -267,7 +270,7 @@ test_expect_success !MINGW 'am (L/L)' ' git config i18n.commitencoding ISO8859-1 && . "$TEST_DIRECTORY"/t3901/8859-1.txt && - git reset --hard master && + git reset --hard main && git am out-l1 out-l2 && check_encoding 2 8859 @@ -277,7 +280,7 @@ test_expect_success 'am (U/L)' ' # Apply ISO-8859-1 patches with UTF-8 commitencoding git config i18n.commitencoding UTF-8 && . "$TEST_DIRECTORY"/t3901/utf8.txt && - git reset --hard master && + git reset --hard main && # am specifies --utf8 by default. git am out-l1 out-l2 && @@ -290,7 +293,7 @@ test_expect_success 'am --no-utf8 (U/L)' ' git config i18n.commitencoding UTF-8 && . "$TEST_DIRECTORY"/t3901/utf8.txt && - git reset --hard master && + git reset --hard main && git am --no-utf8 out-l1 out-l2 2>err && # commit-tree will warn that the commit message does not contain valid UTF-8 @@ -305,7 +308,7 @@ test_expect_success !MINGW 'am (L/U)' ' git config i18n.commitencoding ISO8859-1 && . "$TEST_DIRECTORY"/t3901/8859-1.txt && - git reset --hard master && + git reset --hard main && # mailinfo will re-code the commit message to the charset specified by # i18n.commitencoding git am out-u1 out-u2 && diff --git a/t/t3903-stash.sh b/t/t3903-stash.sh index 9f7ca98967..84b039e573 100755 --- a/t/t3903-stash.sh +++ b/t/t3903-stash.sh @@ -5,6 +5,9 @@ test_description='Test git stash' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh diff_cmp () { @@ -220,14 +223,14 @@ test_expect_success 'stash branch' ' git commit file -m second && git stash branch stashbranch && test refs/heads/stashbranch = $(git symbolic-ref HEAD) && - test $(git rev-parse HEAD) = $(git rev-parse master^) && + test $(git rev-parse HEAD) = $(git rev-parse main^) && git diff --cached >output && diff_cmp expect output && git diff >output && diff_cmp expect1 output && git add file && git commit -m alternate\ second && - git diff master..stashbranch >output && + git diff main..stashbranch >output && diff_cmp output expect2 && test 0 = $(git stash list | wc -l) ' @@ -520,7 +523,7 @@ test_expect_success 'stash branch - no stashes on stack, stash-like argument' ' STASH_ID=$(git stash create) && git reset --hard && git stash branch stash-branch ${STASH_ID} && - test_when_finished "git reset --hard HEAD && git checkout master && + test_when_finished "git reset --hard HEAD && git checkout main && git branch -D stash-branch" && test $(git ls-files --modified | wc -l) -eq 1 ' @@ -536,7 +539,7 @@ test_expect_success 'stash branch - stashes on stack, stash-like argument' ' STASH_ID=$(git stash create) && git reset --hard && git stash branch stash-branch ${STASH_ID} && - test_when_finished "git reset --hard HEAD && git checkout master && + test_when_finished "git reset --hard HEAD && git checkout main && git branch -D stash-branch" && test $(git ls-files --modified | wc -l) -eq 1 ' @@ -738,7 +741,7 @@ test_expect_success 'valid ref of the form "n", n < N' ' git stash && git stash show 0 && git stash branch tmp 0 && - git checkout master && + git checkout main && git stash && git stash apply 0 && git reset --hard && @@ -755,7 +758,7 @@ test_expect_success 'branch: do not drop the stash if the branch exists' ' git commit -m initial && echo bar >file && git stash && - test_must_fail git stash branch master stash@{0} && + test_must_fail git stash branch main stash@{0} && git rev-parse stash@{0} -- ' @@ -768,7 +771,7 @@ test_expect_success 'branch: should not drop the stash if the apply fails' ' echo bar >file && git stash && echo baz >file && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && test_must_fail git stash branch new_branch stash@{0} && git rev-parse stash@{0} -- ' @@ -902,7 +905,7 @@ test_expect_success 'push -m shows right message' ' >foo && git add foo && git stash push -m "test message" && - echo "stash@{0}: On master: test message" >expect && + echo "stash@{0}: On main: test message" >expect && git stash list -1 >actual && test_cmp expect actual ' @@ -911,7 +914,7 @@ test_expect_success 'push -m also works without space' ' >foo && git add foo && git stash push -m"unspaced test message" && - echo "stash@{0}: On master: unspaced test message" >expect && + echo "stash@{0}: On main: unspaced test message" >expect && git stash list -1 >actual && test_cmp expect actual ' @@ -968,7 +971,7 @@ test_expect_success 'push -mfoo uses right message' ' >foo && git add foo && git stash push -m"test mfoo" && - echo "stash@{0}: On master: test mfoo" >expect && + echo "stash@{0}: On main: test mfoo" >expect && git stash list -1 >actual && test_cmp expect actual ' @@ -977,7 +980,7 @@ test_expect_success 'push --message foo is synonym for -mfoo' ' >foo && git add foo && git stash push --message "test message foo" && - echo "stash@{0}: On master: test message foo" >expect && + echo "stash@{0}: On main: test message foo" >expect && git stash list -1 >actual && test_cmp expect actual ' @@ -986,7 +989,7 @@ test_expect_success 'push --message=foo is synonym for -mfoo' ' >foo && git add foo && git stash push --message="test message=foo" && - echo "stash@{0}: On master: test message=foo" >expect && + echo "stash@{0}: On main: test message=foo" >expect && git stash list -1 >actual && test_cmp expect actual ' @@ -995,7 +998,7 @@ test_expect_success 'push -m shows right message' ' >foo && git add foo && git stash push -m "test m foo" && - echo "stash@{0}: On master: test m foo" >expect && + echo "stash@{0}: On main: test m foo" >expect && git stash list -1 >actual && test_cmp expect actual ' @@ -1004,7 +1007,7 @@ test_expect_success 'create stores correct message' ' >foo && git add foo && STASH_ID=$(git stash create "create test message") && - echo "On master: create test message" >expect && + echo "On main: create test message" >expect && git show --pretty=%s -s ${STASH_ID} >actual && test_cmp expect actual ' @@ -1013,13 +1016,13 @@ test_expect_success 'create with multiple arguments for the message' ' >foo && git add foo && STASH_ID=$(git stash create test untracked) && - echo "On master: test untracked" >expect && + echo "On main: test untracked" >expect && git show --pretty=%s -s ${STASH_ID} >actual && test_cmp expect actual ' test_expect_success 'create in a detached state' ' - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && git checkout HEAD~1 && >foo && git add foo && diff --git a/t/t3910-mac-os-precompose.sh b/t/t3910-mac-os-precompose.sh index 54ce19e353..a0b9208ce8 100755 --- a/t/t3910-mac-os-precompose.sh +++ b/t/t3910-mac-os-precompose.sh @@ -5,6 +5,9 @@ test_description='utf-8 decomposed (nfd) converted to precomposed (nfc)' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh if ! test_have_prereq UTF8_NFD_TO_NFC @@ -151,7 +154,7 @@ test_expect_success "git checkout link nfd" ' git checkout l.$Odiarnfd ' test_expect_success "setup case mac2" ' - git checkout master && + git checkout main && git reset --hard && git checkout -b mac_os_2 ' @@ -163,7 +166,7 @@ test_expect_success "commit file d2.Adiarnfd/f.Adiarnfd" ' git commit -m "add d2.$Adiarnfd/f.$Adiarnfd" -- d2.$Adiarnfd/f.$Adiarnfd ' test_expect_success "setup for long decomposed filename" ' - git checkout master && + git checkout main && git reset --hard && git checkout -b mac_os_long_nfd_fn ' @@ -173,7 +176,7 @@ test_expect_success "Add long decomposed filename" ' git commit -m "Long filename" ' test_expect_success "setup for long precomposed filename" ' - git checkout master && + git checkout main && git reset --hard && git checkout -b mac_os_long_nfc_fn ' diff --git a/t/t4013-diff-various.sh b/t/t4013-diff-various.sh index f72d456d3b..45f68ebcdb 100755 --- a/t/t4013-diff-various.sh +++ b/t/t4013-diff-various.sh @@ -5,6 +5,9 @@ test_description='Various diff formatting options' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=master +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/diff-lib.sh diff --git a/t/t4014-format-patch.sh b/t/t4014-format-patch.sh index c5e5e0da3f..66630c8413 100755 --- a/t/t4014-format-patch.sh +++ b/t/t4014-format-patch.sh @@ -5,6 +5,9 @@ test_description='various format-patch tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-terminal.sh @@ -32,11 +35,11 @@ test_expect_success setup ' test_tick && git commit -m "Side changes #3 with \\n backslash-n in it." && - git checkout master && + git checkout main && git diff-tree -p C2 >patch && git apply --index <patch && test_tick && - git commit -m "Master accepts moral equivalent of #2" && + git commit -m "Main accepts moral equivalent of #2" && git checkout side && git checkout -b patchid && @@ -56,39 +59,39 @@ test_expect_success setup ' test_tick && git commit -m "patchid 3" && - git checkout master + git checkout main ' test_expect_success 'format-patch --ignore-if-in-upstream' ' - git format-patch --stdout master..side >patch0 && + git format-patch --stdout main..side >patch0 && grep "^From " patch0 >from0 && test_line_count = 3 from0 ' test_expect_success 'format-patch --ignore-if-in-upstream' ' git format-patch --stdout \ - --ignore-if-in-upstream master..side >patch1 && + --ignore-if-in-upstream main..side >patch1 && grep "^From " patch1 >from1 && test_line_count = 2 from1 ' test_expect_success 'format-patch --ignore-if-in-upstream handles tags' ' git tag -a v1 -m tag side && - git tag -a v2 -m tag master && + git tag -a v2 -m tag main && git format-patch --stdout --ignore-if-in-upstream v2..v1 >patch1 && grep "^From " patch1 >from1 && test_line_count = 2 from1 ' test_expect_success "format-patch doesn't consider merge commits" ' - git checkout -b feature master && + git checkout -b feature main && echo "Another line" >>file && test_tick && git commit -am "Feature branch change #1" && echo "Yet another line" >>file && test_tick && git commit -am "Feature branch change #2" && - git checkout -b merger master && + git checkout -b merger main && test_tick && git merge --no-ff feature && git format-patch -3 --stdout >patch && @@ -97,16 +100,16 @@ test_expect_success "format-patch doesn't consider merge commits" ' ' test_expect_success 'format-patch result applies' ' - git checkout -b rebuild-0 master && + git checkout -b rebuild-0 main && git am -3 patch0 && - git rev-list master.. >list && + git rev-list main.. >list && test_line_count = 2 list ' test_expect_success 'format-patch --ignore-if-in-upstream result applies' ' - git checkout -b rebuild-1 master && + git checkout -b rebuild-1 main && git am -3 patch1 && - git rev-list master.. >list && + git rev-list main.. >list && test_line_count = 2 list ' @@ -130,7 +133,7 @@ test_expect_success 'extra headers' ' " && git config --add format.headers "Cc: S E Cipient <scipient@example.com> " && - git format-patch --stdout master..side >patch2 && + git format-patch --stdout main..side >patch2 && sed -e "/^\$/q" patch2 >hdrs2 && grep "^To: R E Cipient <rcipient@example.com>\$" hdrs2 && grep "^Cc: S E Cipient <scipient@example.com>\$" hdrs2 @@ -139,7 +142,7 @@ test_expect_success 'extra headers' ' test_expect_success 'extra headers without newlines' ' git config --replace-all format.headers "To: R E Cipient <rcipient@example.com>" && git config --add format.headers "Cc: S E Cipient <scipient@example.com>" && - git format-patch --stdout master..side >patch3 && + git format-patch --stdout main..side >patch3 && sed -e "/^\$/q" patch3 >hdrs3 && grep "^To: R E Cipient <rcipient@example.com>\$" hdrs3 && grep "^Cc: S E Cipient <scipient@example.com>\$" hdrs3 @@ -148,7 +151,7 @@ test_expect_success 'extra headers without newlines' ' test_expect_success 'extra headers with multiple To:s' ' git config --replace-all format.headers "To: R E Cipient <rcipient@example.com>" && git config --add format.headers "To: S E Cipient <scipient@example.com>" && - git format-patch --stdout master..side >patch4 && + git format-patch --stdout main..side >patch4 && sed -e "/^\$/q" patch4 >hdrs4 && grep "^To: R E Cipient <rcipient@example.com>,\$" hdrs4 && grep "^ *S E Cipient <scipient@example.com>\$" hdrs4 @@ -156,7 +159,7 @@ test_expect_success 'extra headers with multiple To:s' ' test_expect_success 'additional command line cc (ascii)' ' git config --replace-all format.headers "Cc: R E Cipient <rcipient@example.com>" && - git format-patch --cc="S E Cipient <scipient@example.com>" --stdout master..side >patch5 && + git format-patch --cc="S E Cipient <scipient@example.com>" --stdout main..side >patch5 && sed -e "/^\$/q" patch5 >hdrs5 && grep "^Cc: R E Cipient <rcipient@example.com>,\$" hdrs5 && grep "^ *S E Cipient <scipient@example.com>\$" hdrs5 @@ -164,7 +167,7 @@ test_expect_success 'additional command line cc (ascii)' ' test_expect_failure 'additional command line cc (rfc822)' ' git config --replace-all format.headers "Cc: R E Cipient <rcipient@example.com>" && - git format-patch --cc="S. E. Cipient <scipient@example.com>" --stdout master..side >patch5 && + git format-patch --cc="S. E. Cipient <scipient@example.com>" --stdout main..side >patch5 && sed -e "/^\$/q" patch5 >hdrs5 && grep "^Cc: R E Cipient <rcipient@example.com>,\$" hdrs5 && grep "^ *\"S. E. Cipient\" <scipient@example.com>\$" hdrs5 @@ -172,14 +175,14 @@ test_expect_failure 'additional command line cc (rfc822)' ' test_expect_success 'command line headers' ' git config --unset-all format.headers && - git format-patch --add-header="Cc: R E Cipient <rcipient@example.com>" --stdout master..side >patch6 && + git format-patch --add-header="Cc: R E Cipient <rcipient@example.com>" --stdout main..side >patch6 && sed -e "/^\$/q" patch6 >hdrs6 && grep "^Cc: R E Cipient <rcipient@example.com>\$" hdrs6 ' test_expect_success 'configuration headers and command line headers' ' git config --replace-all format.headers "Cc: R E Cipient <rcipient@example.com>" && - git format-patch --add-header="Cc: S E Cipient <scipient@example.com>" --stdout master..side >patch7 && + git format-patch --add-header="Cc: S E Cipient <scipient@example.com>" --stdout main..side >patch7 && sed -e "/^\$/q" patch7 >hdrs7 && grep "^Cc: R E Cipient <rcipient@example.com>,\$" hdrs7 && grep "^ *S E Cipient <scipient@example.com>\$" hdrs7 @@ -187,40 +190,40 @@ test_expect_success 'configuration headers and command line headers' ' test_expect_success 'command line To: header (ascii)' ' git config --unset-all format.headers && - git format-patch --to="R E Cipient <rcipient@example.com>" --stdout master..side >patch8 && + git format-patch --to="R E Cipient <rcipient@example.com>" --stdout main..side >patch8 && sed -e "/^\$/q" patch8 >hdrs8 && grep "^To: R E Cipient <rcipient@example.com>\$" hdrs8 ' test_expect_failure 'command line To: header (rfc822)' ' - git format-patch --to="R. E. Cipient <rcipient@example.com>" --stdout master..side >patch8 && + git format-patch --to="R. E. Cipient <rcipient@example.com>" --stdout main..side >patch8 && sed -e "/^\$/q" patch8 >hdrs8 && grep "^To: \"R. E. Cipient\" <rcipient@example.com>\$" hdrs8 ' test_expect_failure 'command line To: header (rfc2047)' ' - git format-patch --to="R Ä Cipient <rcipient@example.com>" --stdout master..side >patch8 && + git format-patch --to="R Ä Cipient <rcipient@example.com>" --stdout main..side >patch8 && sed -e "/^\$/q" patch8 >hdrs8 && grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example.com>\$" hdrs8 ' test_expect_success 'configuration To: header (ascii)' ' git config format.to "R E Cipient <rcipient@example.com>" && - git format-patch --stdout master..side >patch9 && + git format-patch --stdout main..side >patch9 && sed -e "/^\$/q" patch9 >hdrs9 && grep "^To: R E Cipient <rcipient@example.com>\$" hdrs9 ' test_expect_failure 'configuration To: header (rfc822)' ' git config format.to "R. E. Cipient <rcipient@example.com>" && - git format-patch --stdout master..side >patch9 && + git format-patch --stdout main..side >patch9 && sed -e "/^\$/q" patch9 >hdrs9 && grep "^To: \"R. E. Cipient\" <rcipient@example.com>\$" hdrs9 ' test_expect_failure 'configuration To: header (rfc2047)' ' git config format.to "R Ä Cipient <rcipient@example.com>" && - git format-patch --stdout master..side >patch9 && + git format-patch --stdout main..side >patch9 && sed -e "/^\$/q" patch9 >hdrs9 && grep "^To: =?UTF-8?q?R=20=C3=84=20Cipient?= <rcipient@example.com>\$" hdrs9 ' @@ -234,35 +237,35 @@ check_patch () { } test_expect_success 'format.from=false' ' - git -c format.from=false format-patch --stdout master..side >patch && + git -c format.from=false format-patch --stdout main..side >patch && sed -e "/^\$/q" patch >hdrs && check_patch patch && ! grep "^From: C O Mitter <committer@example.com>\$" hdrs ' test_expect_success 'format.from=true' ' - git -c format.from=true format-patch --stdout master..side >patch && + git -c format.from=true format-patch --stdout main..side >patch && sed -e "/^\$/q" patch >hdrs && check_patch hdrs && grep "^From: C O Mitter <committer@example.com>\$" hdrs ' test_expect_success 'format.from with address' ' - git -c format.from="F R Om <from@example.com>" format-patch --stdout master..side >patch && + git -c format.from="F R Om <from@example.com>" format-patch --stdout main..side >patch && sed -e "/^\$/q" patch >hdrs && check_patch hdrs && grep "^From: F R Om <from@example.com>\$" hdrs ' test_expect_success '--no-from overrides format.from' ' - git -c format.from="F R Om <from@example.com>" format-patch --no-from --stdout master..side >patch && + git -c format.from="F R Om <from@example.com>" format-patch --no-from --stdout main..side >patch && sed -e "/^\$/q" patch >hdrs && check_patch hdrs && ! grep "^From: F R Om <from@example.com>\$" hdrs ' test_expect_success '--from overrides format.from' ' - git -c format.from="F R Om <from@example.com>" format-patch --from --stdout master..side >patch && + git -c format.from="F R Om <from@example.com>" format-patch --from --stdout main..side >patch && sed -e "/^\$/q" patch >hdrs && check_patch hdrs && ! grep "^From: F R Om <from@example.com>\$" hdrs @@ -271,7 +274,7 @@ test_expect_success '--from overrides format.from' ' test_expect_success '--no-to overrides config.to' ' git config --replace-all format.to \ "R E Cipient <rcipient@example.com>" && - git format-patch --no-to --stdout master..side >patch10 && + git format-patch --no-to --stdout main..side >patch10 && sed -e "/^\$/q" patch10 >hdrs10 && check_patch hdrs10 && ! grep "^To: R E Cipient <rcipient@example.com>\$" hdrs10 @@ -281,7 +284,7 @@ test_expect_success '--no-to and --to replaces config.to' ' git config --replace-all format.to \ "Someone <someone@out.there>" && git format-patch --no-to --to="Someone Else <else@out.there>" \ - --stdout master..side >patch11 && + --stdout main..side >patch11 && sed -e "/^\$/q" patch11 >hdrs11 && check_patch hdrs11 && ! grep "^To: Someone <someone@out.there>\$" hdrs11 && @@ -291,7 +294,7 @@ test_expect_success '--no-to and --to replaces config.to' ' test_expect_success '--no-cc overrides config.cc' ' git config --replace-all format.cc \ "C E Cipient <rcipient@example.com>" && - git format-patch --no-cc --stdout master..side >patch12 && + git format-patch --no-cc --stdout main..side >patch12 && sed -e "/^\$/q" patch12 >hdrs12 && check_patch hdrs12 && ! grep "^Cc: C E Cipient <rcipient@example.com>\$" hdrs12 @@ -300,7 +303,7 @@ test_expect_success '--no-cc overrides config.cc' ' test_expect_success '--no-add-header overrides config.headers' ' git config --replace-all format.headers \ "Header1: B E Cipient <rcipient@example.com>" && - git format-patch --no-add-header --stdout master..side >patch13 && + git format-patch --no-add-header --stdout main..side >patch13 && sed -e "/^\$/q" patch13 >hdrs13 && check_patch hdrs13 && ! grep "^Header1: B E Cipient <rcipient@example.com>\$" hdrs13 @@ -309,7 +312,7 @@ test_expect_success '--no-add-header overrides config.headers' ' test_expect_success 'multiple files' ' rm -rf patches/ && git checkout side && - git format-patch -o patches/ master && + git format-patch -o patches/ main && ls patches/0001-Side-changes-1.patch patches/0002-Side-changes-2.patch patches/0003-Side-changes-3-with-n-backslash-n-in-it.patch ' @@ -369,7 +372,7 @@ test_expect_success 'filename limit applies only to basename' ' test_expect_success 'reroll count' ' rm -fr patches && - git format-patch -o patches --cover-letter --reroll-count 4 master..side >list && + git format-patch -o patches --cover-letter --reroll-count 4 main..side >list && ! grep -v "^patches/v4-000[0-3]-" list && sed -n -e "/^Subject: /p" $(cat list) >subjects && ! grep -v "^Subject: \[PATCH v4 [0-3]/3\] " subjects @@ -377,7 +380,7 @@ test_expect_success 'reroll count' ' test_expect_success 'reroll count (-v)' ' rm -fr patches && - git format-patch -o patches --cover-letter -v4 master..side >list && + git format-patch -o patches --cover-letter -v4 main..side >list && ! grep -v "^patches/v4-000[0-3]-" list && sed -n -e "/^Subject: /p" $(cat list) >subjects && ! grep -v "^Subject: \[PATCH v4 [0-3]/3\] " subjects @@ -413,7 +416,7 @@ EOF test_expect_success 'no threading' ' git checkout side && - check_threading expect.no-threading master + check_threading expect.no-threading main ' cat >expect.thread <<EOF @@ -430,7 +433,7 @@ References: <0> EOF test_expect_success 'thread' ' - check_threading expect.thread --thread master + check_threading expect.thread --thread main ' cat >expect.in-reply-to <<EOF @@ -450,7 +453,7 @@ EOF test_expect_success 'thread in-reply-to' ' check_threading expect.in-reply-to --in-reply-to="<test.message>" \ - --thread master + --thread main ' cat >expect.cover-letter <<EOF @@ -471,7 +474,7 @@ References: <0> EOF test_expect_success 'thread cover-letter' ' - check_threading expect.cover-letter --cover-letter --thread master + check_threading expect.cover-letter --cover-letter --thread main ' cat >expect.cl-irt <<EOF @@ -498,12 +501,12 @@ EOF test_expect_success 'thread cover-letter in-reply-to' ' check_threading expect.cl-irt --cover-letter \ - --in-reply-to="<test.message>" --thread master + --in-reply-to="<test.message>" --thread main ' test_expect_success 'thread explicit shallow' ' check_threading expect.cl-irt --cover-letter \ - --in-reply-to="<test.message>" --thread=shallow master + --in-reply-to="<test.message>" --thread=shallow main ' cat >expect.deep <<EOF @@ -521,7 +524,7 @@ References: <0> EOF test_expect_success 'thread deep' ' - check_threading expect.deep --thread=deep master + check_threading expect.deep --thread=deep main ' cat >expect.deep-irt <<EOF @@ -544,7 +547,7 @@ EOF test_expect_success 'thread deep in-reply-to' ' check_threading expect.deep-irt --thread=deep \ - --in-reply-to="<test.message>" master + --in-reply-to="<test.message>" main ' cat >expect.deep-cl <<EOF @@ -568,7 +571,7 @@ References: <0> EOF test_expect_success 'thread deep cover-letter' ' - check_threading expect.deep-cl --cover-letter --thread=deep master + check_threading expect.deep-cl --cover-letter --thread=deep main ' cat >expect.deep-cl-irt <<EOF @@ -598,27 +601,27 @@ EOF test_expect_success 'thread deep cover-letter in-reply-to' ' check_threading expect.deep-cl-irt --cover-letter \ - --in-reply-to="<test.message>" --thread=deep master + --in-reply-to="<test.message>" --thread=deep main ' test_expect_success 'thread via config' ' test_config format.thread true && - check_threading expect.thread master + check_threading expect.thread main ' test_expect_success 'thread deep via config' ' test_config format.thread deep && - check_threading expect.deep master + check_threading expect.deep main ' test_expect_success 'thread config + override' ' test_config format.thread deep && - check_threading expect.thread --thread master + check_threading expect.thread --thread main ' test_expect_success 'thread config + --no-thread' ' test_config format.thread deep && - check_threading expect.no-threading --no-thread master + check_threading expect.no-threading --no-thread main ' test_expect_success 'excessive subject' ' @@ -631,7 +634,7 @@ test_expect_success 'excessive subject' ' after=$(git rev-parse --short $after) && git update-index file && git commit -m "This is an excessively long subject line for a message due to the habit some projects have of not having a short, one-line subject at the start of the commit message, but rather sticking a whole paragraph right at the start as the only thing in the commit message. It had better not become the filename for the patch." && - git format-patch -o patches/ master..side && + git format-patch -o patches/ main..side && ls patches/0004-This-is-an-excessively-long-subject-line-for-a-messa.patch ' @@ -893,13 +896,13 @@ test_expect_success 'options no longer allowed for format-patch' ' ' test_expect_success 'format-patch --numstat should produce a patch' ' - git format-patch --numstat --stdout master..side >output && + git format-patch --numstat --stdout main..side >output && grep "^diff --git a/" output >diff && test_line_count = 5 diff ' test_expect_success 'format-patch -- <path>' ' - git format-patch master..side -- file 2>error && + git format-patch main..side -- file 2>error && ! grep "Use .--" error ' @@ -1673,9 +1676,9 @@ test_expect_success 'cover letter with invalid --cover-from-description and conf test_config branch.rebuild-1.description "config subject body" && - test_must_fail git format-patch --cover-letter --cover-from-description garbage master && + test_must_fail git format-patch --cover-letter --cover-from-description garbage main && test_config format.coverFromDescription garbage && - test_must_fail git format-patch --cover-letter master + test_must_fail git format-patch --cover-letter main ' test_expect_success 'cover letter with format.coverFromDescription = default' ' @@ -1684,7 +1687,7 @@ test_expect_success 'cover letter with format.coverFromDescription = default' ' body" && test_config format.coverFromDescription default && git checkout rebuild-1 && - git format-patch --stdout --cover-letter master >actual && + git format-patch --stdout --cover-letter main >actual && grep "^Subject: \[PATCH 0/2\] \*\*\* SUBJECT HERE \*\*\*$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && grep "^config subject$" actual && @@ -1696,7 +1699,7 @@ test_expect_success 'cover letter with --cover-from-description default' ' body" && git checkout rebuild-1 && - git format-patch --stdout --cover-letter --cover-from-description default master >actual && + git format-patch --stdout --cover-letter --cover-from-description default main >actual && grep "^Subject: \[PATCH 0/2\] \*\*\* SUBJECT HERE \*\*\*$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && grep "^config subject$" actual && @@ -1709,7 +1712,7 @@ test_expect_success 'cover letter with format.coverFromDescription = none' ' body" && test_config format.coverFromDescription none && git checkout rebuild-1 && - git format-patch --stdout --cover-letter master >actual && + git format-patch --stdout --cover-letter main >actual && grep "^Subject: \[PATCH 0/2\] \*\*\* SUBJECT HERE \*\*\*$" actual && grep "^\*\*\* BLURB HERE \*\*\*$" actual && ! grep "^config subject$" actual && @@ -1721,7 +1724,7 @@ test_expect_success 'cover letter with --cover-from-description none' ' body" && git checkout rebuild-1 && - git format-patch --stdout --cover-letter --cover-from-description none master >actual && + git format-patch --stdout --cover-letter --cover-from-description none main >actual && grep "^Subject: \[PATCH 0/2\] \*\*\* SUBJECT HERE \*\*\*$" actual && grep "^\*\*\* BLURB HERE \*\*\*$" actual && ! grep "^config subject$" actual && @@ -1734,7 +1737,7 @@ test_expect_success 'cover letter with format.coverFromDescription = message' ' body" && test_config format.coverFromDescription message && git checkout rebuild-1 && - git format-patch --stdout --cover-letter master >actual && + git format-patch --stdout --cover-letter main >actual && grep "^Subject: \[PATCH 0/2\] \*\*\* SUBJECT HERE \*\*\*$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && grep "^config subject$" actual && @@ -1746,7 +1749,7 @@ test_expect_success 'cover letter with --cover-from-description message' ' body" && git checkout rebuild-1 && - git format-patch --stdout --cover-letter --cover-from-description message master >actual && + git format-patch --stdout --cover-letter --cover-from-description message main >actual && grep "^Subject: \[PATCH 0/2\] \*\*\* SUBJECT HERE \*\*\*$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && grep "^config subject$" actual && @@ -1759,7 +1762,7 @@ test_expect_success 'cover letter with format.coverFromDescription = subject' ' body" && test_config format.coverFromDescription subject && git checkout rebuild-1 && - git format-patch --stdout --cover-letter master >actual && + git format-patch --stdout --cover-letter main >actual && grep "^Subject: \[PATCH 0/2\] config subject$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && ! grep "^config subject$" actual && @@ -1771,7 +1774,7 @@ test_expect_success 'cover letter with --cover-from-description subject' ' body" && git checkout rebuild-1 && - git format-patch --stdout --cover-letter --cover-from-description subject master >actual && + git format-patch --stdout --cover-letter --cover-from-description subject main >actual && grep "^Subject: \[PATCH 0/2\] config subject$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && ! grep "^config subject$" actual && @@ -1784,7 +1787,7 @@ test_expect_success 'cover letter with format.coverFromDescription = auto (short body" && test_config format.coverFromDescription auto && git checkout rebuild-1 && - git format-patch --stdout --cover-letter master >actual && + git format-patch --stdout --cover-letter main >actual && grep "^Subject: \[PATCH 0/2\] config subject$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && ! grep "^config subject$" actual && @@ -1796,7 +1799,7 @@ test_expect_success 'cover letter with --cover-from-description auto (short subj body" && git checkout rebuild-1 && - git format-patch --stdout --cover-letter --cover-from-description auto master >actual && + git format-patch --stdout --cover-letter --cover-from-description auto main >actual && grep "^Subject: \[PATCH 0/2\] config subject$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && ! grep "^config subject$" actual && @@ -1809,7 +1812,7 @@ test_expect_success 'cover letter with format.coverFromDescription = auto (long body" && test_config format.coverFromDescription auto && git checkout rebuild-1 && - git format-patch --stdout --cover-letter master >actual && + git format-patch --stdout --cover-letter main >actual && grep "^Subject: \[PATCH 0/2\] \*\*\* SUBJECT HERE \*\*\*$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && grep "^this is a really long first line and it is over 100 characters long which is the threshold for long subjects$" actual && @@ -1821,7 +1824,7 @@ test_expect_success 'cover letter with --cover-from-description auto (long subje body" && git checkout rebuild-1 && - git format-patch --stdout --cover-letter --cover-from-description auto master >actual && + git format-patch --stdout --cover-letter --cover-from-description auto main >actual && grep "^Subject: \[PATCH 0/2\] \*\*\* SUBJECT HERE \*\*\*$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && grep "^this is a really long first line and it is over 100 characters long which is the threshold for long subjects$" actual && @@ -1834,7 +1837,7 @@ test_expect_success 'cover letter with command-line --cover-from-description ove body" && test_config format.coverFromDescription none && git checkout rebuild-1 && - git format-patch --stdout --cover-letter --cover-from-description subject master >actual && + git format-patch --stdout --cover-letter --cover-from-description subject main >actual && grep "^Subject: \[PATCH 0/2\] config subject$" actual && ! grep "^\*\*\* BLURB HERE \*\*\*$" actual && ! grep "^config subject$" actual && @@ -1844,7 +1847,7 @@ body" && test_expect_success 'cover letter using branch description (1)' ' git checkout rebuild-1 && test_config branch.rebuild-1.description hello && - git format-patch --stdout --cover-letter master >actual && + git format-patch --stdout --cover-letter main >actual && grep hello actual ' @@ -1858,14 +1861,14 @@ test_expect_success 'cover letter using branch description (2)' ' test_expect_success 'cover letter using branch description (3)' ' git checkout rebuild-1 && test_config branch.rebuild-1.description hello && - git format-patch --stdout --cover-letter ^master rebuild-1 >actual && + git format-patch --stdout --cover-letter ^main rebuild-1 >actual && grep hello actual ' test_expect_success 'cover letter using branch description (4)' ' git checkout rebuild-1 && test_config branch.rebuild-1.description hello && - git format-patch --stdout --cover-letter master.. >actual && + git format-patch --stdout --cover-letter main.. >actual && grep hello actual ' @@ -1932,8 +1935,8 @@ test_expect_success 'From line has expected format' ' test_expect_success 'format-patch -o with no leading directories' ' rm -fr patches && - git format-patch -o patches master..side && - count=$(git rev-list --count master..side) && + git format-patch -o patches main..side && + count=$(git rev-list --count main..side) && ls patches >list && test_line_count = $count list ' @@ -1941,16 +1944,16 @@ test_expect_success 'format-patch -o with no leading directories' ' test_expect_success 'format-patch -o with leading existing directories' ' rm -rf existing-dir && mkdir existing-dir && - git format-patch -o existing-dir/patches master..side && - count=$(git rev-list --count master..side) && + git format-patch -o existing-dir/patches main..side && + count=$(git rev-list --count main..side) && ls existing-dir/patches >list && test_line_count = $count list ' test_expect_success 'format-patch -o with leading non-existing directories' ' rm -rf non-existing-dir && - git format-patch -o non-existing-dir/patches master..side && - count=$(git rev-list --count master..side) && + git format-patch -o non-existing-dir/patches main..side && + count=$(git rev-list --count main..side) && test_path_is_dir non-existing-dir && ls non-existing-dir/patches >list && test_line_count = $count list @@ -1959,8 +1962,8 @@ test_expect_success 'format-patch -o with leading non-existing directories' ' test_expect_success 'format-patch format.outputDirectory option' ' test_config format.outputDirectory patches && rm -fr patches && - git format-patch master..side && - count=$(git rev-list --count master..side) && + git format-patch main..side && + count=$(git rev-list --count main..side) && ls patches >list && test_line_count = $count list ' @@ -1968,7 +1971,7 @@ test_expect_success 'format-patch format.outputDirectory option' ' test_expect_success 'format-patch -o overrides format.outputDirectory' ' test_config format.outputDirectory patches && rm -fr patches patchset && - git format-patch master..side -o patchset && + git format-patch main..side -o patchset && test_path_is_missing patches && test_path_is_dir patchset ' @@ -2065,14 +2068,14 @@ test_expect_success 'format-patch --base errors out when base commit is not ance # ------------W # # If "format-patch Z..X" is given, P and Z can not be specified as the base commit - git checkout -b topic1 master && + git checkout -b topic1 main && git rev-parse HEAD >commit-id-base && test_commit P && git rev-parse HEAD >commit-id-P && test_commit Z && git rev-parse HEAD >commit-id-Z && test_commit Y && - git checkout -b topic2 master && + git checkout -b topic2 main && test_commit W && git merge topic1 && test_commit X && @@ -2085,7 +2088,7 @@ test_expect_success 'format-patch --base errors out when base commit is not ance ' test_expect_success 'format-patch --base=auto' ' - git checkout -b upstream master && + git checkout -b upstream main && git checkout -b local upstream && git branch --set-upstream-to=upstream && test_commit N1 && @@ -2106,11 +2109,11 @@ test_expect_success 'format-patch errors out when history involves criss-cross' # \ / \ # C---M2---E # - git checkout master && + git checkout main && test_commit A && - git checkout -b xb master && + git checkout -b xb main && test_commit B && - git checkout -b xc master && + git checkout -b xc main && test_commit C && git checkout -b xbc xb -- && git merge xc && @@ -2230,7 +2233,7 @@ test_expect_success 'format-patch --pretty=mboxrd' ' ' test_expect_success 'interdiff: setup' ' - git checkout -b boop master && + git checkout -b boop main && test_commit fnorp blorp && test_commit fleep blorp ' diff --git a/t/t4017-diff-retval.sh b/t/t4017-diff-retval.sh index 95a7ca7070..ed461f481e 100755 --- a/t/t4017-diff-retval.sh +++ b/t/t4017-diff-retval.sh @@ -2,6 +2,9 @@ test_description='Return value of diffs' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -111,7 +114,7 @@ test_expect_success 'check detects leftover conflict markers' ' git checkout HEAD^ && echo binary >>b && git commit -m "side" b && - test_must_fail git merge master && + test_must_fail git merge main && git add b && test_expect_code 2 git --no-pager diff --cached --check >test.out && test 3 = $(grep "conflict marker" test.out | wc -l) && diff --git a/t/t4027-diff-submodule.sh b/t/t4027-diff-submodule.sh index d7145ccca4..894a11b224 100755 --- a/t/t4027-diff-submodule.sh +++ b/t/t4027-diff-submodule.sh @@ -93,6 +93,14 @@ test_expect_success 'git diff HEAD with dirty submodule (untracked)' ' ) && git diff HEAD >actual && sed -e "1,/^@@/d" actual >actual.body && + expect_from_to >expect.body $subtip $subprev && + test_cmp expect.body actual.body +' + +test_expect_success 'git diff HEAD with dirty submodule (untracked) (none ignored)' ' + test_config diff.ignoreSubmodules none && + git diff HEAD >actual && + sed -e "1,/^@@/d" actual >actual.body && expect_from_to >expect.body $subtip $subprev-dirty && test_cmp expect.body actual.body ' @@ -168,13 +176,13 @@ test_expect_success 'git diff HEAD with dirty submodule (untracked, refs match)' git clean -qfdx && >cruft ) && - git diff HEAD >actual && + git diff --ignore-submodules=none HEAD >actual && sed -e "1,/^@@/d" actual >actual.body && expect_from_to >expect.body $subprev $subprev-dirty && test_cmp expect.body actual.body && git diff --ignore-submodules=all HEAD >actual2 && test_must_be_empty actual2 && - git diff --ignore-submodules=untracked HEAD >actual3 && + git diff HEAD >actual3 && test_must_be_empty actual3 && git diff --ignore-submodules=dirty HEAD >actual4 && test_must_be_empty actual4 diff --git a/t/t4038-diff-combined.sh b/t/t4038-diff-combined.sh index 94680836ce..09ad491a59 100755 --- a/t/t4038-diff-combined.sh +++ b/t/t4038-diff-combined.sh @@ -2,6 +2,9 @@ test_description='combined diff' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/diff-lib.sh @@ -115,7 +118,7 @@ test_expect_success 'check --cc --raw with forty trees' ' ' test_expect_success 'setup combined ignore spaces' ' - git checkout master && + git checkout main && >test && git add test && git commit -m initial && @@ -143,7 +146,7 @@ test_expect_success 'setup combined ignore spaces' ' EOF git commit -m "test other space changes" -a && - test_must_fail git merge master && + test_must_fail git merge main && tr -d Q <<-\EOF >test && eol spaces Q space change @@ -404,7 +407,7 @@ test_expect_success 'combine diff missing delete bug' ' test_expect_success 'combine diff gets tree sorting right' ' # create a directory and a file that sort differently in trees # versus byte-wise (implied "/" sorts after ".") - git checkout -f master && + git checkout -f main && mkdir foo && echo base >foo/one && echo base >foo/two && @@ -414,9 +417,9 @@ test_expect_success 'combine diff gets tree sorting right' ' # one side modifies a file in the directory, along with the root # file... - echo master >foo/one && - echo master >foo.ext && - git commit -a -m master && + echo main >foo/one && + echo main >foo.ext && + git commit -a -m main && # the other side modifies the other file in the directory git checkout -b other HEAD^ && @@ -426,7 +429,7 @@ test_expect_success 'combine diff gets tree sorting right' ' # And now we merge. The files in the subdirectory will resolve cleanly, # meaning that a combined diff will not find them interesting. But it # will find the tree itself interesting, because it had to be merged. - git checkout master && + git checkout main && git merge other && printf "MM\tfoo\n" >expect && diff --git a/t/t4041-diff-submodule-option.sh b/t/t4041-diff-submodule-option.sh index f852136585..0c1502d4b0 100755 --- a/t/t4041-diff-submodule-option.sh +++ b/t/t4041-diff-submodule-option.sh @@ -9,6 +9,9 @@ test_description='Support for verbose submodule differences in git diff This test tries to verify the sanity of the --submodule option of git diff. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Tested non-UTF-8 encoding @@ -262,7 +265,7 @@ test_expect_success 'submodule is up to date' ' test_expect_success 'submodule contains untracked content' ' echo new > sm1/new-file && - git diff-index -p --submodule=log HEAD >actual && + git diff-index -p --ignore-submodules=none --submodule=log HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains untracked content EOF @@ -270,7 +273,7 @@ test_expect_success 'submodule contains untracked content' ' ' test_expect_success 'submodule contains untracked content (untracked ignored)' ' - git diff-index -p --ignore-submodules=untracked --submodule=log HEAD >actual && + git diff-index -p --submodule=log HEAD >actual && test_must_be_empty actual ' @@ -286,7 +289,7 @@ test_expect_success 'submodule contains untracked content (all ignored)' ' test_expect_success 'submodule contains untracked and modified content' ' echo new > sm1/foo6 && - git diff-index -p --submodule=log HEAD >actual && + git diff-index -p --ignore-submodules=none --submodule=log HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains untracked content Submodule sm1 contains modified content @@ -296,7 +299,7 @@ test_expect_success 'submodule contains untracked and modified content' ' test_expect_success 'submodule contains untracked and modified content (untracked ignored)' ' echo new > sm1/foo6 && - git diff-index -p --ignore-submodules=untracked --submodule=log HEAD >actual && + git diff-index -p --submodule=log HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains modified content EOF @@ -337,7 +340,7 @@ test_expect_success 'submodule is modified' ' test_expect_success 'modified submodule contains untracked content' ' echo new > sm1/new-file && - git diff-index -p --submodule=log HEAD >actual && + git diff-index -p --ignore-submodules=none --submodule=log HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains untracked content Submodule sm1 $head6..$head8: @@ -347,7 +350,7 @@ test_expect_success 'modified submodule contains untracked content' ' ' test_expect_success 'modified submodule contains untracked content (untracked ignored)' ' - git diff-index -p --ignore-submodules=untracked --submodule=log HEAD >actual && + git diff-index -p --submodule=log HEAD >actual && cat >expected <<-EOF && Submodule sm1 $head6..$head8: > change @@ -371,7 +374,7 @@ test_expect_success 'modified submodule contains untracked content (all ignored) test_expect_success 'modified submodule contains untracked and modified content' ' echo modification >> sm1/foo6 && - git diff-index -p --submodule=log HEAD >actual && + git diff-index -p --ignore-submodules=none --submodule=log HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains untracked content Submodule sm1 contains modified content @@ -383,7 +386,7 @@ test_expect_success 'modified submodule contains untracked and modified content' test_expect_success 'modified submodule contains untracked and modified content (untracked ignored)' ' echo modification >> sm1/foo6 && - git diff-index -p --ignore-submodules=untracked --submodule=log HEAD >actual && + git diff-index -p --submodule=log HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains modified content Submodule sm1 $head6..$head8: @@ -538,7 +541,7 @@ test_expect_success 'diff --submodule with objects referenced by alternates' ' (cd super && (cd sub && git fetch && - git checkout origin/master + git checkout origin/main ) && git diff --submodule > ../actual ) && diff --git a/t/t4048-diff-combined-binary.sh b/t/t4048-diff-combined-binary.sh index 7f9ad9fa3d..0260cf64f5 100755 --- a/t/t4048-diff-combined-binary.sh +++ b/t/t4048-diff-combined-binary.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='combined and merge diff handle binary files and textconv' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup binary merge conflict' ' @@ -14,7 +17,7 @@ test_expect_success 'setup binary merge conflict' ' echo threeQ3 | q_to_nul >binary && git commit -a -m three && three=$(git rev-parse --short HEAD:binary) && - test_must_fail git merge master && + test_must_fail git merge main && echo resolvedQhooray | q_to_nul >binary && git commit -a -m resolved && res=$(git rev-parse --short HEAD:binary) @@ -62,14 +65,14 @@ test_expect_success 'diff --cc indicates binary-ness' ' ' test_expect_success 'setup non-binary with binary attribute' ' - git checkout master && + git checkout main && test_commit one text && test_commit two text && two=$(git rev-parse --short HEAD:text) && git checkout -b branch-text HEAD^ && test_commit three text && three=$(git rev-parse --short HEAD:text) && - test_must_fail git merge master && + test_must_fail git merge main && test_commit resolved text && res=$(git rev-parse --short HEAD:text) && echo text -diff >.gitattributes @@ -206,11 +209,11 @@ index $three,$two..0000000 +THREE ++======= + TWO -++>>>>>>> MASTER +++>>>>>>> MAIN EOF test_expect_success 'diff --cc respects textconv on worktree file' ' git reset --hard HEAD^ && - test_must_fail git merge master && + test_must_fail git merge main && git diff >actual && test_cmp expect actual ' diff --git a/t/t4052-stat-output.sh b/t/t4052-stat-output.sh index 28c053849a..9eba436211 100755 --- a/t/t4052-stat-output.sh +++ b/t/t4052-stat-output.sh @@ -5,6 +5,9 @@ test_description='test --stat output of various commands' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-terminal.sh @@ -353,7 +356,7 @@ cat >expect <<'EOF' EOF test_expect_success 'merge --stat respects COLUMNS (big change)' ' git checkout -b branch HEAD^^ && - COLUMNS=100 git merge --stat --no-ff master^ >output && + COLUMNS=100 git merge --stat --no-ff main^ >output && grep " | " output >actual && test_cmp expect actual ' @@ -362,7 +365,7 @@ cat >expect <<'EOF' aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa | 1000 +++++++++++++++++++++++++++++++++++++++ EOF test_expect_success 'merge --stat respects COLUMNS (long filename)' ' - COLUMNS=100 git merge --stat --no-ff master >output && + COLUMNS=100 git merge --stat --no-ff main >output && grep " | " output >actual && test_cmp expect actual ' diff --git a/t/t4056-diff-order.sh b/t/t4056-diff-order.sh index 43dd474a12..63ea7144bb 100755 --- a/t/t4056-diff-order.sh +++ b/t/t4056-diff-order.sh @@ -2,6 +2,9 @@ test_description='diff order' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh create_files () { @@ -106,7 +109,7 @@ done test_expect_success 'setup for testing combine-diff order' ' git checkout -b tmp HEAD~ && create_files 3 && - git checkout master && + git checkout main && git merge --no-commit -s ours tmp && create_files 5 ' diff --git a/t/t4057-diff-combined-paths.sh b/t/t4057-diff-combined-paths.sh index 0b78573733..7e5b74f72e 100755 --- a/t/t4057-diff-combined-paths.sh +++ b/t/t4057-diff-combined-paths.sh @@ -2,6 +2,9 @@ test_description='combined diff show only paths that are different to all parents' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # verify that diffc.expect matches output of @@ -24,9 +27,9 @@ test_expect_success 'trivial merge - combine-diff empty' ' echo $i/2 >>$i.txt done && git commit -a -m "side 2-9" && - git checkout master && + git checkout main && echo 1/2 >1.txt && - git commit -a -m "master 1" && + git commit -a -m "main 1" && git merge side && >diffc.expect && diffc_verify @@ -41,19 +44,19 @@ test_expect_success 'only one truly conflicting path' ' done && echo "4side" >>4.txt && git commit -a -m "side 2-9 +4" && - git checkout master && + git checkout main && for i in $(test_seq 1 9) do echo $i/3 >>$i.txt done && - echo "4master" >>4.txt && - git commit -a -m "master 1-9 +4" && + echo "4main" >>4.txt && + git commit -a -m "main 1-9 +4" && test_must_fail git merge side && cat <<-\EOF >4.txt && 4 4/2 4/3 - 4master + 4main 4side EOF git add 4.txt && @@ -69,12 +72,12 @@ test_expect_success 'merge introduces new file' ' echo $i/4 >>$i.txt done && git commit -a -m "side 5-9" && - git checkout master && + git checkout main && for i in $(test_seq 1 3) do echo $i/4 >>$i.txt done && - git commit -a -m "master 1-3 +4hello" && + git commit -a -m "main 1-3 +4hello" && git merge side && echo "Hello World" >4hello.txt && git add 4hello.txt && @@ -90,12 +93,12 @@ test_expect_success 'merge removed a file' ' echo $i/5 >>$i.txt done && git commit -a -m "side 5-9" && - git checkout master && + git checkout main && for i in $(test_seq 1 3) do echo $i/4 >>$i.txt done && - git commit -a -m "master 1-3" && + git commit -a -m "main 1-3" && git merge side && git rm 4.txt && git commit --amend && diff --git a/t/t4058-diff-duplicates.sh b/t/t4058-diff-duplicates.sh index c24ee175ef..54614b814d 100755 --- a/t/t4058-diff-duplicates.sh +++ b/t/t4058-diff-duplicates.sh @@ -1,5 +1,14 @@ #!/bin/sh +# NOTICE: +# This testsuite does a number of diffs and checks that the output match. +# However, it is a "garbage in, garbage out" situation; the trees have +# duplicate entries for individual paths, and it results in diffs that do +# not make much sense. As such, it is not clear that the diffs are +# "correct". The primary purpose of these tests was to verify that +# diff-tree does not segfault, but there is perhaps some value in ensuring +# that the diff output isn't wildly unreasonable. + test_description='test tree diff when trees have duplicate entries' . ./test-lib.sh @@ -57,7 +66,16 @@ test_expect_success 'create trees with duplicate entries' ' git tag two $outer_two ' -test_expect_success 'diff-tree between trees' ' +test_expect_success 'create tree without duplicate entries' ' + blob_one=$(echo one | git hash-object -w --stdin) && + outer_three=$(make_tree \ + 100644 renamed $blob_one + ) && + git tag three $outer_three +' + +test_expect_success 'diff-tree between duplicate trees' ' + # See NOTICE at top of file { printf ":000000 100644 $ZERO_OID $blob_two A\touter/inner\n" && printf ":000000 100644 $ZERO_OID $blob_two A\touter/inner\n" && @@ -71,9 +89,101 @@ test_expect_success 'diff-tree between trees' ' ' test_expect_success 'diff-tree with renames' ' - # same expectation as above, since we disable rename detection + # See NOTICE at top of file. git diff-tree -M -r --no-abbrev one two >actual && + test_must_be_empty actual +' + +test_expect_success 'diff-tree FROM duplicate tree' ' + # See NOTICE at top of file. + { + printf ":100644 000000 $blob_one $ZERO_OID D\touter/inner\n" && + printf ":100644 000000 $blob_two $ZERO_OID D\touter/inner\n" && + printf ":100644 000000 $blob_two $ZERO_OID D\touter/inner\n" && + printf ":100644 000000 $blob_two $ZERO_OID D\touter/inner\n" && + printf ":000000 100644 $ZERO_OID $blob_one A\trenamed\n" + } >expect && + git diff-tree -r --no-abbrev one three >actual && test_cmp expect actual ' +test_expect_success 'diff-tree FROM duplicate tree, with renames' ' + # See NOTICE at top of file. + { + printf ":100644 000000 $blob_two $ZERO_OID D\touter/inner\n" && + printf ":100644 000000 $blob_two $ZERO_OID D\touter/inner\n" && + printf ":100644 000000 $blob_two $ZERO_OID D\touter/inner\n" && + printf ":100644 100644 $blob_one $blob_one R100\touter/inner\trenamed\n" + } >expect && + git diff-tree -M -r --no-abbrev one three >actual && + test_cmp expect actual +' + +test_expect_success 'create a few commits' ' + git commit-tree -m "Duplicate Entries" two^{tree} >commit_id && + git branch base $(cat commit_id) && + + git commit-tree -p $(cat commit_id) -m "Just one" three^{tree} >up && + git branch update $(cat up) && + + git commit-tree -p $(cat up) -m "Back to weird" two^{tree} >final && + git branch final $(cat final) && + + rm commit_id up final +' + +test_expect_failure 'git read-tree does not segfault' ' + test_when_finished rm .git/index.lock && + test_might_fail git read-tree --reset base +' + +test_expect_failure 'reset --hard does not segfault' ' + test_when_finished rm .git/index.lock && + git checkout base && + test_might_fail git reset --hard +' + +test_expect_failure 'git diff HEAD does not segfault' ' + git checkout base && + GIT_TEST_CHECK_CACHE_TREE=false && + git reset --hard && + test_might_fail git diff HEAD +' + +test_expect_failure 'can switch to another branch when status is empty' ' + git clean -ffdqx && + git status --porcelain -uno >actual && + test_must_be_empty actual && + git checkout update +' + +test_expect_success 'forcibly switch to another branch, verify status empty' ' + git checkout -f update && + git status --porcelain -uno >actual && + test_must_be_empty actual +' + +test_expect_success 'fast-forward from non-duplicate entries to duplicate' ' + git merge final +' + +test_expect_failure 'clean status, switch branches, status still clean' ' + git status --porcelain -uno >actual && + test_must_be_empty actual && + git checkout base && + git status --porcelain -uno >actual && + test_must_be_empty actual +' + +test_expect_success 'switch to base branch and force status to be clean' ' + git checkout base && + GIT_TEST_CHECK_CACHE_TREE=false git reset --hard && + git status --porcelain -uno >actual && + test_must_be_empty actual +' + +test_expect_failure 'fast-forward from duplicate entries to non-duplicate' ' + git merge update +' + test_done diff --git a/t/t4060-diff-submodule-option-diff-format.sh b/t/t4060-diff-submodule-option-diff-format.sh index fc8229c726..dc7b242697 100755 --- a/t/t4060-diff-submodule-option-diff-format.sh +++ b/t/t4060-diff-submodule-option-diff-format.sh @@ -409,7 +409,7 @@ test_expect_success 'submodule is up to date' ' test_expect_success 'submodule contains untracked content' ' echo new > sm1/new-file && - git diff-index -p --submodule=diff HEAD >actual && + git diff-index -p --ignore-submodules=none --submodule=diff HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains untracked content EOF @@ -417,7 +417,7 @@ test_expect_success 'submodule contains untracked content' ' ' test_expect_success 'submodule contains untracked content (untracked ignored)' ' - git diff-index -p --ignore-submodules=untracked --submodule=diff HEAD >actual && + git diff-index -p --submodule=diff HEAD >actual && test_must_be_empty actual ' @@ -433,7 +433,7 @@ test_expect_success 'submodule contains untracked content (all ignored)' ' test_expect_success 'submodule contains untracked and modified content' ' echo new > sm1/foo6 && - git diff-index -p --submodule=diff HEAD >actual && + git diff-index -p --ignore-submodules=none --submodule=diff HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains untracked content Submodule sm1 contains modified content @@ -451,7 +451,7 @@ test_expect_success 'submodule contains untracked and modified content' ' # NOT OK test_expect_success 'submodule contains untracked and modified content (untracked ignored)' ' echo new > sm1/foo6 && - git diff-index -p --ignore-submodules=untracked --submodule=diff HEAD >actual && + git diff-index -p --submodule=diff HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains modified content diff --git a/sm1/foo6 b/sm1/foo6 @@ -512,7 +512,7 @@ test_expect_success 'submodule is modified' ' test_expect_success 'modified submodule contains untracked content' ' echo new > sm1/new-file && - git diff-index -p --submodule=diff HEAD >actual && + git diff-index -p --ignore-submodules=none --submodule=diff HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains untracked content Submodule sm1 $head7..$head8: @@ -528,7 +528,7 @@ test_expect_success 'modified submodule contains untracked content' ' ' test_expect_success 'modified submodule contains untracked content (untracked ignored)' ' - git diff-index -p --ignore-submodules=untracked --submodule=diff HEAD >actual && + git diff-index -p --submodule=diff HEAD >actual && cat >expected <<-EOF && Submodule sm1 $head7..$head8: diff --git a/sm1/foo6 b/sm1/foo6 @@ -564,7 +564,7 @@ test_expect_success 'modified submodule contains untracked content (all ignored) test_expect_success 'modified submodule contains untracked and modified content' ' echo modification >> sm1/foo6 && - git diff-index -p --submodule=diff HEAD >actual && + git diff-index -p --ignore-submodules=none --submodule=diff HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains untracked content Submodule sm1 contains modified content @@ -583,7 +583,7 @@ test_expect_success 'modified submodule contains untracked and modified content' test_expect_success 'modified submodule contains untracked and modified content (untracked ignored)' ' echo modification >> sm1/foo6 && - git diff-index -p --ignore-submodules=untracked --submodule=diff HEAD >actual && + git diff-index -p --submodule=diff HEAD >actual && cat >expected <<-EOF && Submodule sm1 contains modified content Submodule sm1 $head7..$head8: diff --git a/t/t4061-diff-indent.sh b/t/t4061-diff-indent.sh index 0f7a6d97a8..bcf7493740 100755 --- a/t/t4061-diff-indent.sh +++ b/t/t4061-diff-indent.sh @@ -3,6 +3,9 @@ test_description='Test diff indent heuristic. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/diff-lib.sh @@ -266,7 +269,7 @@ test_expect_success 'diff-index: nice spaces with --indent-heuristic' ' git reset --soft HEAD~ && git diff-index --indent-heuristic -p old -- spaces.txt >out-diff-index-compacted && compare_diff spaces-compacted-expect out-diff-index-compacted && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-index: nice spaces with diff.indentHeuristic=true' ' @@ -274,7 +277,7 @@ test_expect_success 'diff-index: nice spaces with diff.indentHeuristic=true' ' git reset --soft HEAD~ && git -c diff.indentHeuristic=true diff-index -p old -- spaces.txt >out-diff-index-compacted2 && compare_diff spaces-compacted-expect out-diff-index-compacted2 && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-index: ugly spaces with --no-indent-heuristic' ' @@ -282,7 +285,7 @@ test_expect_success 'diff-index: ugly spaces with --no-indent-heuristic' ' git reset --soft HEAD~ && git diff-index --no-indent-heuristic -p old -- spaces.txt >out-diff-index && compare_diff spaces-expect out-diff-index && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-index: ugly spaces with diff.indentHeuristic=false' ' @@ -290,7 +293,7 @@ test_expect_success 'diff-index: ugly spaces with diff.indentHeuristic=false' ' git reset --soft HEAD~ && git -c diff.indentHeuristic=false diff-index -p old -- spaces.txt >out-diff-index2 && compare_diff spaces-expect out-diff-index2 && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-index: --indent-heuristic overrides config' ' @@ -298,7 +301,7 @@ test_expect_success 'diff-index: --indent-heuristic overrides config' ' git reset --soft HEAD~ && git -c diff.indentHeuristic=false diff-index --indent-heuristic -p old -- spaces.txt >out-diff-index-compacted3 && compare_diff spaces-compacted-expect out-diff-index-compacted3 && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-index: --no-indent-heuristic overrides config' ' @@ -306,7 +309,7 @@ test_expect_success 'diff-index: --no-indent-heuristic overrides config' ' git reset --soft HEAD~ && git -c diff.indentHeuristic=true diff-index --no-indent-heuristic -p old -- spaces.txt >out-diff-index3 && compare_diff spaces-expect out-diff-index3 && - git checkout -f master + git checkout -f main ' # --- diff-files tests ---------------------------------------------------- @@ -317,7 +320,7 @@ test_expect_success 'diff-files: nice spaces with --indent-heuristic' ' git diff-files --indent-heuristic -p spaces.txt >out-diff-files-raw && grep -v index out-diff-files-raw >out-diff-files-compacted && compare_diff spaces-compacted-expect out-diff-files-compacted && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-files: nice spaces with diff.indentHeuristic=true' ' @@ -326,7 +329,7 @@ test_expect_success 'diff-files: nice spaces with diff.indentHeuristic=true' ' git -c diff.indentHeuristic=true diff-files -p spaces.txt >out-diff-files-raw2 && grep -v index out-diff-files-raw2 >out-diff-files-compacted2 && compare_diff spaces-compacted-expect out-diff-files-compacted2 && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-files: ugly spaces with --no-indent-heuristic' ' @@ -335,7 +338,7 @@ test_expect_success 'diff-files: ugly spaces with --no-indent-heuristic' ' git diff-files --no-indent-heuristic -p spaces.txt >out-diff-files-raw && grep -v index out-diff-files-raw >out-diff-files && compare_diff spaces-expect out-diff-files && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-files: ugly spaces with diff.indentHeuristic=false' ' @@ -344,7 +347,7 @@ test_expect_success 'diff-files: ugly spaces with diff.indentHeuristic=false' ' git -c diff.indentHeuristic=false diff-files -p spaces.txt >out-diff-files-raw2 && grep -v index out-diff-files-raw2 >out-diff-files && compare_diff spaces-expect out-diff-files && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-files: --indent-heuristic overrides config' ' @@ -353,7 +356,7 @@ test_expect_success 'diff-files: --indent-heuristic overrides config' ' git -c diff.indentHeuristic=false diff-files --indent-heuristic -p spaces.txt >out-diff-files-raw3 && grep -v index out-diff-files-raw3 >out-diff-files-compacted && compare_diff spaces-compacted-expect out-diff-files-compacted && - git checkout -f master + git checkout -f main ' test_expect_success 'diff-files: --no-indent-heuristic overrides config' ' @@ -362,7 +365,7 @@ test_expect_success 'diff-files: --no-indent-heuristic overrides config' ' git -c diff.indentHeuristic=true diff-files --no-indent-heuristic -p spaces.txt >out-diff-files-raw4 && grep -v index out-diff-files-raw4 >out-diff-files && compare_diff spaces-expect out-diff-files && - git checkout -f master + git checkout -f main ' test_done diff --git a/t/t4066-diff-emit-delay.sh b/t/t4066-diff-emit-delay.sh index 6331f63b12..a1de63b77f 100755 --- a/t/t4066-diff-emit-delay.sh +++ b/t/t4066-diff-emit-delay.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test combined/stat/moved interaction' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # This test covers a weird 3-way interaction between "--cc -p", which will run @@ -13,7 +16,7 @@ test_expect_success 'set up history with a merge' ' test_commit B && git checkout -b side HEAD^ && test_commit C && - git merge -m M master && + git merge -m M main && test_commit D ' diff --git a/t/t4068-diff-symmetric-merge-base.sh b/t/t4068-diff-symmetric-merge-base.sh index 03487cc945..2d650d8f10 100755 --- a/t/t4068-diff-symmetric-merge-base.sh +++ b/t/t4068-diff-symmetric-merge-base.sh @@ -2,14 +2,17 @@ test_description='behavior of diff with symmetric-diff setups and --merge-base' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # build these situations: # - normal merge with one merge base (br1...b2r); -# - criss-cross merge ie 2 merge bases (br1...master); -# - disjoint subgraph (orphan branch, br3...master). +# - criss-cross merge ie 2 merge bases (br1...main); +# - disjoint subgraph (orphan branch, br3...main). # -# B---E <-- master +# B---E <-- main # / \ / # A X # \ / \ @@ -32,9 +35,9 @@ test_expect_success setup ' git add c && git commit -m C && git tag commit-C && - git merge -m D master && + git merge -m D main && git tag commit-D && - git checkout master && + git checkout main && git merge -m E commit-C && git checkout -b br2 commit-C && echo f >f && @@ -58,7 +61,7 @@ test_expect_success 'diff with one merge base' ' # It should have one of those two, which comes out # to seven lines. test_expect_success 'diff with two merge bases' ' - git diff br1...master >tmp 2>err && + git diff br1...main >tmp 2>err && test_line_count = 7 tmp && test_line_count = 1 err ' @@ -69,22 +72,22 @@ test_expect_success 'diff with no merge bases' ' ' test_expect_success 'diff with too many symmetric differences' ' - test_must_fail git diff br1...master br2...br3 2>err && + test_must_fail git diff br1...main br2...br3 2>err && test_i18ngrep "usage" err ' test_expect_success 'diff with symmetric difference and extraneous arg' ' - test_must_fail git diff master br1...master 2>err && + test_must_fail git diff main br1...main 2>err && test_i18ngrep "usage" err ' test_expect_success 'diff with two ranges' ' - test_must_fail git diff master br1..master br2..br3 2>err && + test_must_fail git diff main br1..main br2..br3 2>err && test_i18ngrep "usage" err ' test_expect_success 'diff with ranges and extra arg' ' - test_must_fail git diff master br1..master commit-D 2>err && + test_must_fail git diff main br1..main commit-D 2>err && test_i18ngrep "usage" err ' @@ -93,21 +96,21 @@ test_expect_success 'diff --merge-base with no commits' ' ' test_expect_success 'diff --merge-base with three commits' ' - test_must_fail git diff --merge-base br1 br2 master 2>err && + test_must_fail git diff --merge-base br1 br2 main 2>err && test_i18ngrep "usage" err ' for cmd in diff-index diff do test_expect_success "$cmd --merge-base with one commit" ' - git checkout master && + git checkout main && git $cmd commit-C >expect && git $cmd --merge-base br2 >actual && test_cmp expect actual ' test_expect_success "$cmd --merge-base with one commit and unstaged changes" ' - git checkout master && + git checkout main && test_when_finished git reset --hard && echo unstaged >>c && git $cmd commit-C >expect && @@ -116,7 +119,7 @@ do ' test_expect_success "$cmd --merge-base with one commit and staged and unstaged changes" ' - git checkout master && + git checkout main && test_when_finished git reset --hard && echo staged >>c && git add c && @@ -127,7 +130,7 @@ do ' test_expect_success "$cmd --merge-base --cached with one commit and staged and unstaged changes" ' - git checkout master && + git checkout main && test_when_finished git reset --hard && echo staged >>c && git add c && @@ -138,19 +141,19 @@ do ' test_expect_success "$cmd --merge-base with non-commit" ' - git checkout master && - test_must_fail git $cmd --merge-base master^{tree} 2>err && + git checkout main && + test_must_fail git $cmd --merge-base main^{tree} 2>err && test_i18ngrep "fatal: --merge-base only works with commits" err ' test_expect_success "$cmd --merge-base with no merge bases and one commit" ' - git checkout master && + git checkout main && test_must_fail git $cmd --merge-base br3 2>err && test_i18ngrep "fatal: no merge base found" err ' test_expect_success "$cmd --merge-base with multiple merge bases and one commit" ' - git checkout master && + git checkout main && test_must_fail git $cmd --merge-base br1 2>err && test_i18ngrep "fatal: multiple merge bases found" err ' @@ -159,13 +162,13 @@ done for cmd in diff-tree diff do test_expect_success "$cmd --merge-base with two commits" ' - git $cmd commit-C master >expect && - git $cmd --merge-base br2 master >actual && + git $cmd commit-C main >expect && + git $cmd --merge-base br2 main >actual && test_cmp expect actual ' test_expect_success "$cmd --merge-base commit and non-commit" ' - test_must_fail git $cmd --merge-base br2 master^{tree} 2>err && + test_must_fail git $cmd --merge-base br2 main^{tree} 2>err && test_i18ngrep "fatal: --merge-base only works with commits" err ' @@ -175,13 +178,13 @@ do ' test_expect_success "$cmd --merge-base with multiple merge bases and two commits" ' - test_must_fail git $cmd --merge-base master br1 2>err && + test_must_fail git $cmd --merge-base main br1 2>err && test_i18ngrep "fatal: multiple merge bases found" err ' done test_expect_success 'diff-tree --merge-base with one commit' ' - test_must_fail git diff-tree --merge-base master 2>err && + test_must_fail git diff-tree --merge-base main 2>err && test_i18ngrep "fatal: --merge-base only works with two commits" err ' diff --git a/t/t4103-apply-binary.sh b/t/t4103-apply-binary.sh index 1b420e3b5f..fad6d3f542 100755 --- a/t/t4103-apply-binary.sh +++ b/t/t4103-apply-binary.sh @@ -6,6 +6,9 @@ test_description='git apply handling binary patches ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -31,64 +34,64 @@ test_expect_success 'setup' ' git update-index --add --remove file1 file2 file3 file4 && git commit -m "Second Version" && - git diff-tree -p master binary >B.diff && - git diff-tree -p -C master binary >C.diff && + git diff-tree -p main binary >B.diff && + git diff-tree -p -C main binary >C.diff && - git diff-tree -p --binary master binary >BF.diff && - git diff-tree -p --binary -C master binary >CF.diff && + git diff-tree -p --binary main binary >BF.diff && + git diff-tree -p --binary -C main binary >CF.diff && - git diff-tree -p --full-index master binary >B-index.diff && - git diff-tree -p -C --full-index master binary >C-index.diff && + git diff-tree -p --full-index main binary >B-index.diff && + git diff-tree -p -C --full-index main binary >C-index.diff && - git diff-tree -p --binary --no-prefix master binary -- file3 >B0.diff && + git diff-tree -p --binary --no-prefix main binary -- file3 >B0.diff && git init other-repo && ( cd other-repo && - git fetch .. master && + git fetch .. main && git reset --hard FETCH_HEAD ) ' test_expect_success 'stat binary diff -- should not fail.' \ - 'git checkout master && + 'git checkout main && git apply --stat --summary B.diff' test_expect_success 'stat binary -p0 diff -- should not fail.' ' - git checkout master && + git checkout main && git apply --stat -p0 B0.diff ' test_expect_success 'stat binary diff (copy) -- should not fail.' \ - 'git checkout master && + 'git checkout main && git apply --stat --summary C.diff' test_expect_success 'check binary diff -- should fail.' \ - 'git checkout master && + 'git checkout main && test_must_fail git apply --check B.diff' test_expect_success 'check binary diff (copy) -- should fail.' \ - 'git checkout master && + 'git checkout main && test_must_fail git apply --check C.diff' test_expect_success \ 'check incomplete binary diff with replacement -- should fail.' ' - git checkout master && + git checkout main && test_must_fail git apply --check --allow-binary-replacement B.diff ' test_expect_success \ 'check incomplete binary diff with replacement (copy) -- should fail.' ' - git checkout master && + git checkout main && test_must_fail git apply --check --allow-binary-replacement C.diff ' test_expect_success 'check binary diff with replacement.' \ - 'git checkout master && + 'git checkout main && git apply --check --allow-binary-replacement BF.diff' test_expect_success 'check binary diff with replacement (copy).' \ - 'git checkout master && + 'git checkout main && git apply --check --allow-binary-replacement CF.diff' # Now we start applying them. @@ -96,7 +99,7 @@ test_expect_success 'check binary diff with replacement (copy).' \ do_reset () { rm -f file? && git reset --hard && - git checkout -f master + git checkout -f main } test_expect_success 'apply binary diff -- should fail.' \ diff --git a/t/t4108-apply-threeway.sh b/t/t4108-apply-threeway.sh index d7349ced6b..d62db3fbe1 100755 --- a/t/t4108-apply-threeway.sh +++ b/t/t4108-apply-threeway.sh @@ -2,6 +2,9 @@ test_description='git apply --3way' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh print_sanitized_conflicted_diff () { @@ -24,14 +27,14 @@ test_expect_success setup ' test_tick && test_write_lines 1 two 3 4 5 six 7 >one && test_write_lines 1 two 3 4 5 6 7 >two && - git commit -a -m master && + git commit -a -m main && git checkout side && test_write_lines 1 2 3 4 five 6 7 >one && test_write_lines 1 2 3 4 five 6 7 >two && git commit -a -m side && - git checkout master + git checkout main ' test_expect_success 'apply without --3way' ' @@ -39,7 +42,7 @@ test_expect_success 'apply without --3way' ' # should fail to apply git reset --hard && - git checkout master^0 && + git checkout main^0 && test_must_fail git apply --index P.diff && # should leave things intact git diff-files --exit-code && @@ -52,14 +55,14 @@ test_apply_with_3way () { # The corresponding conflicted merge git reset --hard && - git checkout master^0 && + git checkout main^0 && test_must_fail git merge --no-commit side && git ls-files -s >expect.ls && print_sanitized_conflicted_diff >expect.diff && # should fail to apply git reset --hard && - git checkout master^0 && + git checkout main^0 && test_must_fail git apply --index --3way P.diff && git ls-files -s >actual.ls && print_sanitized_conflicted_diff >actual.diff && @@ -86,7 +89,7 @@ test_expect_success 'apply with --3way with rerere enabled' ' # The corresponding conflicted merge git reset --hard && - git checkout master^0 && + git checkout main^0 && test_must_fail git merge --no-commit side && # Manually resolve and record the resolution @@ -96,7 +99,7 @@ test_expect_success 'apply with --3way with rerere enabled' ' # should fail to apply git reset --hard && - git checkout master^0 && + git checkout main^0 && test_must_fail git apply --index --3way P.diff && # but rerere should have replayed the recorded resolution diff --git a/t/t4121-apply-diffs.sh b/t/t4121-apply-diffs.sh index 66368effd5..b45454aaf4 100755 --- a/t/t4121-apply-diffs.sh +++ b/t/t4121-apply-diffs.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git apply for contextually independent diffs' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh echo '1 @@ -23,7 +26,7 @@ test_expect_success 'setup' \ git commit -a -q -m 2 && echo 9 >>file && git commit -a -q -m 3 && - git checkout master' + git checkout main' test_expect_success \ 'check if contextually independent diffs for the same file apply' \ diff --git a/t/t4122-apply-symlink-inside.sh b/t/t4122-apply-symlink-inside.sh index 4acb3f336e..aa52de401b 100755 --- a/t/t4122-apply-symlink-inside.sh +++ b/t/t4122-apply-symlink-inside.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='apply to deeper directory without getting fooled with symlink' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -35,11 +38,11 @@ test_expect_success apply ' test_expect_success 'check result' ' - git diff --exit-code master && - git diff --exit-code --cached master && + git diff --exit-code main && + git diff --exit-code --cached main && test_tick && git commit -m replay && - T1=$(git rev-parse "master^{tree}") && + T1=$(git rev-parse "main^{tree}") && T2=$(git rev-parse "HEAD^{tree}") && test "z$T1" = "z$T2" diff --git a/t/t4129-apply-samemode.sh b/t/t4129-apply-samemode.sh index 41818d8315..576632f868 100755 --- a/t/t4129-apply-samemode.sh +++ b/t/t4129-apply-samemode.sh @@ -78,7 +78,7 @@ test_expect_success POSIXPERM 'do not use core.sharedRepository for working tree test_config core.sharedRepository 0666 && ( # Remove a default ACL if possible. - (setfacl -k newdir 2>/dev/null || true) && + (setfacl -k . 2>/dev/null || true) && umask 0077 && # Test both files (f1) and leading dirs (d) diff --git a/t/t4150-am.sh b/t/t4150-am.sh index 3ecbef6f8e..99987515dc 100755 --- a/t/t4150-am.sh +++ b/t/t4150-am.sh @@ -2,6 +2,9 @@ test_description='git am running' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup: messages' ' @@ -179,8 +182,8 @@ test_expect_success setup ' test_tick && git commit -m "added another file" && - git format-patch --stdout master >lorem-move.patch && - git format-patch --no-prefix --stdout master >lorem-zero.patch && + git format-patch --stdout main >lorem-move.patch && + git format-patch --no-prefix --stdout main >lorem-zero.patch && git checkout -b rename && git mv file renamed && @@ -453,11 +456,11 @@ test_expect_success 'am changes committer and keeps author' ' git checkout first && git am patch2 && test_path_is_missing .git/rebase-apply && - test "$(git rev-parse master^^)" = "$(git rev-parse HEAD^^)" && - git diff --exit-code master..HEAD && - git diff --exit-code master^..HEAD^ && - compare author master HEAD && - compare author master^ HEAD^ && + test "$(git rev-parse main^^)" = "$(git rev-parse HEAD^^)" && + git diff --exit-code main..HEAD && + git diff --exit-code main^..HEAD^ && + compare author main HEAD && + compare author main^ HEAD^ && test "$GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL>" = \ "$(git log -1 --pretty=format:"%cn <%ce>" HEAD)" ' @@ -759,7 +762,7 @@ test_expect_success 'am takes patches from a Pine mailbox' ' git checkout first && cat pine patch1 | git am && test_path_is_missing .git/rebase-apply && - git diff --exit-code master^..HEAD + git diff --exit-code main^..HEAD ' test_expect_success 'am fails on mail without patch' ' @@ -1112,21 +1115,21 @@ test_expect_success 'am and .gitattibutes' ' test_commit sixth && git checkout test && - git format-patch --stdout master..HEAD >patches && - git reset --hard master && + git format-patch --stdout main..HEAD >patches && + git reset --hard main && git am patches && grep "smudged" a.txt && git checkout removal && git reset --hard && - git format-patch --stdout master..HEAD >patches && - git reset --hard master && + git format-patch --stdout main..HEAD >patches && + git reset --hard main && git am patches && grep "clean" a.txt && git checkout conflict && git reset --hard && - git format-patch --stdout master..HEAD >patches && + git format-patch --stdout main..HEAD >patches && git reset --hard fourth && test_must_fail git am -3 patches && grep "<<<<<<<<<<" a.txt diff --git a/t/t4200-rerere.sh b/t/t4200-rerere.sh index b12b43e9e9..9f8c76dffb 100755 --- a/t/t4200-rerere.sh +++ b/t/t4200-rerere.sh @@ -8,7 +8,7 @@ test_description='git rerere ! [fifth] version1 ! [first] first ! [fourth] version1 - ! [master] initial + ! [main] initial ! [second] prefer first over second ! [third] version2 ------ @@ -19,9 +19,12 @@ test_description='git rerere - [second] prefer first over second + + [first] first + [second^] second -++++++ [master] initial +++++++ [main] initial ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -57,7 +60,7 @@ test_expect_success 'setup' ' test_tick && git commit -q -a -m first && - git checkout -b second master && + git checkout -b second main && git show first:a1 | sed -e "s/To die, t/To die! T/" -e "s/Some title/Some Title/" >a1 && echo "* END *" >>a1 && @@ -168,7 +171,7 @@ test_expect_success 'first postimage wins' ' oldmtimepost=$(test-tool chmtime --get -60 $rr/postimage) && - git checkout -b third master && + git checkout -b third main && git show second^:a1 | sed "s/To die: t/To die! T/" >a1 && git commit -q -a -m third && @@ -580,13 +583,13 @@ test_expect_success 'multiple identical conflicts' ' test_expect_success 'rerere with unexpected conflict markers does not crash' ' git reset --hard && - git checkout -b branch-1 master && + git checkout -b branch-1 main && echo "bar" >test && git add test && git commit -q -m two && git reset --hard && - git checkout -b branch-2 master && + git checkout -b branch-2 main && echo "foo" >test && git add test && git commit -q -a -m one && @@ -601,7 +604,7 @@ test_expect_success 'rerere with unexpected conflict markers does not crash' ' test_expect_success 'rerere with inner conflict markers' ' git reset --hard && - git checkout -b A master && + git checkout -b A main && echo "bar" >test && git add test && git commit -q -m two && @@ -610,7 +613,7 @@ test_expect_success 'rerere with inner conflict markers' ' git commit -q -m three && git reset --hard && - git checkout -b B master && + git checkout -b B main && echo "foo" >test && git add test && git commit -q -a -m one && @@ -651,11 +654,11 @@ test_expect_success 'setup simple stage 1 handling' ' git add original && git commit -m original && - git checkout -b A master && + git checkout -b A main && git mv original A && git commit -m "rename to A" && - git checkout -b B master && + git checkout -b B main && git mv original B && git commit -m "rename to B" ) diff --git a/t/t4201-shortlog.sh b/t/t4201-shortlog.sh index 3d5c4a2086..3095b1b2ff 100755 --- a/t/t4201-shortlog.sh +++ b/t/t4201-shortlog.sh @@ -6,6 +6,9 @@ test_description='git shortlog ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -191,7 +194,7 @@ test_expect_success 'shortlog with revision pseudo options' ' ' test_expect_success 'shortlog with --output=<file>' ' - git shortlog --output=shortlog -1 master >output && + git shortlog --output=shortlog -1 main >output && test_must_be_empty output && test_line_count = 3 shortlog ' diff --git a/t/t4202-log.sh b/t/t4202-log.sh index 56d34ed465..350cfa3593 100755 --- a/t/t4202-log.sh +++ b/t/t4202-log.sh @@ -2,6 +2,9 @@ test_description='git log' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY/lib-gpg.sh" . "$TEST_DIRECTORY/lib-terminal.sh" @@ -478,7 +481,7 @@ test_expect_success 'set up merge history' ' git checkout -b side HEAD~4 && test_commit side-1 1 1 && test_commit side-2 2 2 && - git checkout master && + git checkout main && git merge side ' @@ -541,17 +544,17 @@ test_expect_success 'log --graph with merge with log.graphColors' ' ' test_expect_success 'log --raw --graph -m with merge' ' - git log --raw --graph --oneline -m master | head -n 500 >actual && + git log --raw --graph --oneline -m main | head -n 500 >actual && grep "initial" actual ' test_expect_success 'diff-tree --graph' ' - git diff-tree --graph master^ | head -n 500 >actual && + git diff-tree --graph main^ | head -n 500 >actual && grep "one" actual ' cat > expect <<\EOF -* commit master +* commit main |\ Merge: A B | | Author: A U Thor <author@example.com> | | @@ -567,22 +570,22 @@ cat > expect <<\EOF | | | | side-1 | | -* | commit master~1 +* | commit main~1 | | Author: A U Thor <author@example.com> | | | | Second | | -* | commit master~2 +* | commit main~2 | | Author: A U Thor <author@example.com> | | | | sixth | | -* | commit master~3 +* | commit main~3 | | Author: A U Thor <author@example.com> | | | | fifth | | -* | commit master~4 +* | commit main~4 |/ Author: A U Thor <author@example.com> | | fourth @@ -613,19 +616,19 @@ test_expect_success 'log --graph with full output' ' test_expect_success 'set up more tangled history' ' git checkout -b tangle HEAD~6 && test_commit tangle-a tangle-a a && - git merge master~3 && + git merge main~3 && git merge side~1 && - git checkout master && + git checkout main && git merge tangle && git checkout -b reach && test_commit reach && - git checkout master && + git checkout main && git checkout -b octopus-a && test_commit octopus-a && - git checkout master && + git checkout main && git checkout -b octopus-b && test_commit octopus-b && - git checkout master && + git checkout main && test_commit seventh && git merge octopus-a octopus-b && git merge reach @@ -650,7 +653,7 @@ cat > expect <<\EOF |\ | * Merge branch 'side' (early part) into tangle | |\ -| * \ Merge branch 'master' (early part) into tangle +| * \ Merge branch 'main' (early part) into tangle | |\ \ | * | | tangle-a * | | | Merge branch 'side' @@ -794,7 +797,7 @@ test_expect_success 'multiple decorate-refs' ' test_expect_success 'decorate-refs-exclude with glob' ' cat >expect.decorate <<-\EOF && - Merge-tag-reach (HEAD -> master) + Merge-tag-reach (HEAD -> main) Merge-tags-octopus-a-and-octopus-b seventh (tag: seventh) octopus-b (tag: octopus-b) @@ -811,7 +814,7 @@ test_expect_success 'decorate-refs-exclude with glob' ' test_expect_success 'decorate-refs-exclude without globs' ' cat >expect.decorate <<-\EOF && - Merge-tag-reach (HEAD -> master) + Merge-tag-reach (HEAD -> main) Merge-tags-octopus-a-and-octopus-b seventh (tag: seventh) octopus-b (tag: octopus-b, octopus-b) @@ -828,7 +831,7 @@ test_expect_success 'decorate-refs-exclude without globs' ' test_expect_success 'multiple decorate-refs-exclude' ' cat >expect.decorate <<-\EOF && - Merge-tag-reach (HEAD -> master) + Merge-tag-reach (HEAD -> main) Merge-tags-octopus-a-and-octopus-b seventh (tag: seventh) octopus-b (tag: octopus-b) @@ -851,7 +854,7 @@ test_expect_success 'multiple decorate-refs-exclude' ' test_expect_success 'decorate-refs and decorate-refs-exclude' ' cat >expect.no-decorate <<-\EOF && - Merge-tag-reach (master) + Merge-tag-reach (main) Merge-tags-octopus-a-and-octopus-b seventh octopus-b @@ -866,7 +869,7 @@ test_expect_success 'decorate-refs and decorate-refs-exclude' ' test_expect_success 'deocrate-refs and log.excludeDecoration' ' cat >expect.decorate <<-\EOF && - Merge-tag-reach (master) + Merge-tag-reach (main) Merge-tags-octopus-a-and-octopus-b seventh octopus-b (octopus-b) @@ -881,7 +884,7 @@ test_expect_success 'deocrate-refs and log.excludeDecoration' ' test_expect_success 'decorate-refs-exclude and simplify-by-decoration' ' cat >expect.decorate <<-\EOF && - Merge-tag-reach (HEAD -> master) + Merge-tag-reach (HEAD -> main) reach (tag: reach, reach) seventh (tag: seventh) Merge-branch-tangle @@ -1080,7 +1083,7 @@ cat >expect <<\EOF | |\ \ Merge: MERGE_PARENTS | | | | Author: A U Thor <author@example.com> | | | | -| | | | Merge branch 'master' (early part) into tangle +| | | | Merge branch 'main' (early part) into tangle | | | | | * | | commit COMMIT_OBJECT_NAME | | | | Author: A U Thor <author@example.com> @@ -1355,7 +1358,7 @@ cat >expect <<\EOF *** | |\ \ Merge: MERGE_PARENTS *** | | | | Author: A U Thor <author@example.com> *** | | | | -*** | | | | Merge branch 'master' (early part) into tangle +*** | | | | Merge branch 'main' (early part) into tangle *** | | | | *** | * | | commit COMMIT_OBJECT_NAME *** | | | | Author: A U Thor <author@example.com> @@ -1588,24 +1591,24 @@ test_expect_success 'dotdot is a parent directory' ' ' test_expect_success GPG 'setup signed branch' ' - test_when_finished "git reset --hard && git checkout master" && - git checkout -b signed master && + test_when_finished "git reset --hard && git checkout main" && + git checkout -b signed main && echo foo >foo && git add foo && git commit -S -m signed_commit ' test_expect_success GPG 'setup signed branch with subkey' ' - test_when_finished "git reset --hard && git checkout master" && - git checkout -b signed-subkey master && + test_when_finished "git reset --hard && git checkout main" && + git checkout -b signed-subkey main && echo foo >foo && git add foo && git commit -SB7227189 -m signed_commit ' test_expect_success GPGSM 'setup signed branch x509' ' - test_when_finished "git reset --hard && git checkout master" && - git checkout -b signed-x509 master && + test_when_finished "git reset --hard && git checkout main" && + git checkout -b signed-x509 main && echo foo >foo && git add foo && test_config gpg.format x509 && @@ -1638,12 +1641,12 @@ test_expect_success GPGSM 'log --graph --show-signature x509' ' ' test_expect_success GPG 'log --graph --show-signature for merged tag' ' - test_when_finished "git reset --hard && git checkout master" && - git checkout -b plain master && + test_when_finished "git reset --hard && git checkout main" && + git checkout -b plain main && echo aaa >bar && git add bar && git commit -m bar_commit && - git checkout -b tagged master && + git checkout -b tagged main && echo bbb >baz && git add baz && git commit -m baz_commit && @@ -1657,12 +1660,12 @@ test_expect_success GPG 'log --graph --show-signature for merged tag' ' ' test_expect_success GPG 'log --graph --show-signature for merged tag in shallow clone' ' - test_when_finished "git reset --hard && git checkout master" && - git checkout -b plain-shallow master && + test_when_finished "git reset --hard && git checkout main" && + git checkout -b plain-shallow main && echo aaa >bar && git add bar && git commit -m bar_commit && - git checkout --detach master && + git checkout --detach main && echo bbb >baz && git add baz && git commit -m baz_commit && @@ -1677,12 +1680,12 @@ test_expect_success GPG 'log --graph --show-signature for merged tag in shallow ' test_expect_success GPG 'log --graph --show-signature for merged tag with missing key' ' - test_when_finished "git reset --hard && git checkout master" && - git checkout -b plain-nokey master && + test_when_finished "git reset --hard && git checkout main" && + git checkout -b plain-nokey main && echo aaa >bar && git add bar && git commit -m bar_commit && - git checkout -b tagged-nokey master && + git checkout -b tagged-nokey main && echo bbb >baz && git add baz && git commit -m baz_commit && @@ -1696,12 +1699,12 @@ test_expect_success GPG 'log --graph --show-signature for merged tag with missin ' test_expect_success GPG 'log --graph --show-signature for merged tag with bad signature' ' - test_when_finished "git reset --hard && git checkout master" && - git checkout -b plain-bad master && + test_when_finished "git reset --hard && git checkout main" && + git checkout -b plain-bad main && echo aaa >bar && git add bar && git commit -m bar_commit && - git checkout -b tagged-bad master && + git checkout -b tagged-bad main && echo bbb >baz && git add baz && git commit -m baz_commit && @@ -1718,12 +1721,12 @@ test_expect_success GPG 'log --graph --show-signature for merged tag with bad si ' test_expect_success GPG 'log --show-signature for merged tag with GPG failure' ' - test_when_finished "git reset --hard && git checkout master" && - git checkout -b plain-fail master && + test_when_finished "git reset --hard && git checkout main" && + git checkout -b plain-fail main && echo aaa >bar && git add bar && git commit -m bar_commit && - git checkout -b tagged-fail master && + git checkout -b tagged-fail main && echo bbb >baz && git add baz && git commit -m baz_commit && @@ -1737,14 +1740,14 @@ test_expect_success GPG 'log --show-signature for merged tag with GPG failure' ' ' test_expect_success GPGSM 'log --graph --show-signature for merged tag x509' ' - test_when_finished "git reset --hard && git checkout master" && + test_when_finished "git reset --hard && git checkout main" && test_config gpg.format x509 && test_config user.signingkey $GIT_COMMITTER_EMAIL && - git checkout -b plain-x509 master && + git checkout -b plain-x509 main && echo aaa >bar && git add bar && git commit -m bar_commit && - git checkout -b tagged-x509 master && + git checkout -b tagged-x509 main && echo bbb >baz && git add baz && git commit -m baz_commit && @@ -1758,14 +1761,14 @@ test_expect_success GPGSM 'log --graph --show-signature for merged tag x509' ' ' test_expect_success GPGSM 'log --graph --show-signature for merged tag x509 missing key' ' - test_when_finished "git reset --hard && git checkout master" && + test_when_finished "git reset --hard && git checkout main" && test_config gpg.format x509 && test_config user.signingkey $GIT_COMMITTER_EMAIL && - git checkout -b plain-x509-nokey master && + git checkout -b plain-x509-nokey main && echo aaa >bar && git add bar && git commit -m bar_commit && - git checkout -b tagged-x509-nokey master && + git checkout -b tagged-x509-nokey main && echo bbb >baz && git add baz && git commit -m baz_commit && @@ -1778,14 +1781,14 @@ test_expect_success GPGSM 'log --graph --show-signature for merged tag x509 miss ' test_expect_success GPGSM 'log --graph --show-signature for merged tag x509 bad signature' ' - test_when_finished "git reset --hard && git checkout master" && + test_when_finished "git reset --hard && git checkout main" && test_config gpg.format x509 && test_config user.signingkey $GIT_COMMITTER_EMAIL && - git checkout -b plain-x509-bad master && + git checkout -b plain-x509-bad main && echo aaa >bar && git add bar && git commit -m bar_commit && - git checkout -b tagged-x509-bad master && + git checkout -b tagged-x509-bad main && echo bbb >baz && git add baz && git commit -m baz_commit && @@ -1835,7 +1838,7 @@ test_expect_success 'log diagnoses bogus HEAD' ' git init empty && test_must_fail git -C empty log 2>stderr && test_i18ngrep does.not.have.any.commits stderr && - echo 1234abcd >empty/.git/refs/heads/master && + echo 1234abcd >empty/.git/refs/heads/main && test_must_fail git -C empty log 2>stderr && test_i18ngrep broken stderr && echo "ref: refs/heads/invalid.lock" >empty/.git/HEAD && diff --git a/t/t4203-mailmap.sh b/t/t4203-mailmap.sh index 586c3a86b1..621f9962d5 100755 --- a/t/t4203-mailmap.sh +++ b/t/t4203-mailmap.sh @@ -2,30 +2,14 @@ test_description='.mailmap configurations' -. ./test-lib.sh - -fuzz_blame () { - sed " - s/$_x05[0-9a-f][0-9a-f][0-9a-f]/OBJID/g - s/$_x05[0-9a-f][0-9a-f]/OBJI/g - s/[-0-9]\{10\} [:0-9]\{8\} [-+][0-9]\{4\}/DATE/g - " "$@" -} +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME -test_expect_success setup ' - cat >contacts <<- EOF && - $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> - nick1 <bugs@company.xx> - EOF +. ./test-lib.sh - echo one >one && - git add one && - test_tick && - git commit -m initial && - echo two >>one && - git add one && - test_tick && - git commit --author "nick1 <bugs@company.xx>" -m second +test_expect_success 'setup commits and contacts file' ' + test_commit initial one one && + test_commit --author "nick1 <bugs@company.xx>" --append second one two ' test_expect_success 'check-mailmap no arguments' ' @@ -33,7 +17,7 @@ test_expect_success 'check-mailmap no arguments' ' ' test_expect_success 'check-mailmap arguments' ' - cat >expect <<- EOF && + cat >expect <<-EOF && $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> nick1 <bugs@company.xx> EOF @@ -44,172 +28,256 @@ test_expect_success 'check-mailmap arguments' ' ' test_expect_success 'check-mailmap --stdin' ' - cat >expect <<- EOF && + cat >expect <<-EOF && $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> nick1 <bugs@company.xx> EOF - git check-mailmap --stdin <contacts >actual && + git check-mailmap --stdin <expect >actual && test_cmp expect actual ' -test_expect_success 'check-mailmap --stdin arguments' ' +test_expect_success 'check-mailmap --stdin arguments: no mapping' ' + test_when_finished "rm contacts" && + cat >contacts <<-EOF && + $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> + nick1 <bugs@company.xx> + EOF cat >expect <<-\EOF && Internal Guy <bugs@company.xy> EOF - cat <contacts >>expect && + cat contacts >>expect && + git check-mailmap --stdin "Internal Guy <bugs@company.xy>" \ <contacts >actual && test_cmp expect actual ' +test_expect_success 'check-mailmap --stdin arguments: mapping' ' + test_when_finished "rm .mailmap" && + cat >.mailmap <<-EOF && + New Name <$GIT_AUTHOR_EMAIL> + EOF + cat >stdin <<-EOF && + Old Name <$GIT_AUTHOR_EMAIL> + EOF + + cp .mailmap expect && + git check-mailmap --stdin <stdin >actual && + test_cmp expect actual && + + cat .mailmap >>expect && + git check-mailmap --stdin "Another Old Name <$GIT_AUTHOR_EMAIL>" \ + <stdin >actual && + test_cmp expect actual +' + test_expect_success 'check-mailmap bogus contact' ' test_must_fail git check-mailmap bogus ' -cat >expect << EOF -$GIT_AUTHOR_NAME (1): - initial +test_expect_success 'check-mailmap bogus contact --stdin' ' + test_must_fail git check-mailmap --stdin bogus </dev/null +' -nick1 (1): - second +test_expect_success 'No mailmap' ' + cat >expect <<-EOF && + $GIT_AUTHOR_NAME (1): + initial -EOF + nick1 (1): + second -test_expect_success 'No mailmap' ' + EOF git shortlog HEAD >actual && test_cmp expect actual ' -cat >expect <<\EOF -Repo Guy (1): - initial +test_expect_success 'setup default .mailmap' ' + cat >default.map <<-EOF + Repo Guy <$GIT_AUTHOR_EMAIL> + EOF +' -nick1 (1): - second +test_expect_success 'test default .mailmap' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && -EOF + cat >expect <<-\EOF && + Repo Guy (1): + initial -test_expect_success 'default .mailmap' ' - echo "Repo Guy <$GIT_AUTHOR_EMAIL>" > .mailmap && + nick1 (1): + second + + EOF git shortlog HEAD >actual && test_cmp expect actual ' -# Using a mailmap file in a subdirectory of the repo here, but -# could just as well have been a file outside of the repository -cat >expect <<\EOF -Internal Guy (1): - second +test_expect_success 'mailmap.file set' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && -Repo Guy (1): - initial + test_config mailmap.file internal.map && + cat >internal.map <<-\EOF && + Internal Guy <bugs@company.xx> + EOF -EOF -test_expect_success 'mailmap.file set' ' - mkdir -p internal_mailmap && - echo "Internal Guy <bugs@company.xx>" > internal_mailmap/.mailmap && - git config mailmap.file internal_mailmap/.mailmap && + cat >expect <<-\EOF && + Internal Guy (1): + second + + Repo Guy (1): + initial + + EOF git shortlog HEAD >actual && - test_cmp expect actual + test_cmp expect actual && + + # The internal_mailmap/.mailmap file is an a subdirectory, but + # as shown here it can also be outside the repository + test_when_finished "rm -rf sub-repo" && + git clone . sub-repo && + ( + cd sub-repo && + cp ../.mailmap . && + git config mailmap.file ../internal.map && + git shortlog HEAD >actual && + test_cmp ../expect actual + ) ' -cat >expect <<\EOF -External Guy (1): - initial +test_expect_success 'mailmap.file override' ' + test_config mailmap.file internal.map && + cat >internal.map <<-EOF && + Internal Guy <bugs@company.xx> + External Guy <$GIT_AUTHOR_EMAIL> + EOF -Internal Guy (1): - second + cat >expect <<-\EOF && + External Guy (1): + initial -EOF -test_expect_success 'mailmap.file override' ' - echo "External Guy <$GIT_AUTHOR_EMAIL>" >> internal_mailmap/.mailmap && - git config mailmap.file internal_mailmap/.mailmap && + Internal Guy (1): + second + + EOF git shortlog HEAD >actual && test_cmp expect actual ' -cat >expect <<\EOF -Repo Guy (1): - initial +test_expect_success 'mailmap.file non-existent' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && -nick1 (1): - second + cat >expect <<-\EOF && + Repo Guy (1): + initial -EOF + nick1 (1): + second -test_expect_success 'mailmap.file non-existent' ' - rm internal_mailmap/.mailmap && - rmdir internal_mailmap && + EOF git shortlog HEAD >actual && test_cmp expect actual ' -cat >expect <<\EOF -Internal Guy (1): - second +test_expect_success 'name entry after email entry' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && + + test_config mailmap.file internal.map && + cat >internal.map <<-\EOF && + <bugs@company.xy> <bugs@company.xx> + Internal Guy <bugs@company.xx> + EOF -Repo Guy (1): - initial + cat >expect <<-\EOF && + Internal Guy (1): + second -EOF + Repo Guy (1): + initial + + EOF -test_expect_success 'name entry after email entry' ' - mkdir -p internal_mailmap && - echo "<bugs@company.xy> <bugs@company.xx>" >internal_mailmap/.mailmap && - echo "Internal Guy <bugs@company.xx>" >>internal_mailmap/.mailmap && git shortlog HEAD >actual && test_cmp expect actual ' -cat >expect <<\EOF -Internal Guy (1): - second +test_expect_success 'name entry after email entry, case-insensitive' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && + + test_config mailmap.file internal.map && + cat >internal.map <<-\EOF && + <bugs@company.xy> <bugs@company.xx> + Internal Guy <BUGS@Company.xx> + EOF -Repo Guy (1): - initial + cat >expect <<-\EOF && + Internal Guy (1): + second -EOF + Repo Guy (1): + initial -test_expect_success 'name entry after email entry, case-insensitive' ' - mkdir -p internal_mailmap && - echo "<bugs@company.xy> <bugs@company.xx>" >internal_mailmap/.mailmap && - echo "Internal Guy <BUGS@Company.xx>" >>internal_mailmap/.mailmap && + EOF + git shortlog HEAD >actual && + test_cmp expect actual && + + cat >internal.map <<-\EOF && + NiCk <BuGs@CoMpAnY.Xy> NICK1 <BUGS@COMPANY.XX> + EOF + + cat >expect <<-\EOF && + NiCk (1): + second + + Repo Guy (1): + initial + + EOF git shortlog HEAD >actual && test_cmp expect actual ' -cat >expect << EOF -$GIT_AUTHOR_NAME (1): - initial +test_expect_success 'No mailmap files, but configured' ' + cat >expect <<-EOF && + $GIT_AUTHOR_NAME (1): + initial -nick1 (1): - second + nick1 (1): + second -EOF -test_expect_success 'No mailmap files, but configured' ' - rm -f .mailmap internal_mailmap/.mailmap && + EOF git shortlog HEAD >actual && test_cmp expect actual ' test_expect_success 'setup mailmap blob tests' ' git checkout -b map && - test_when_finished "git checkout master" && - cat >just-bugs <<- EOF && + test_when_finished "git checkout main" && + cat >just-bugs <<-\EOF && Blob Guy <bugs@company.xx> EOF - cat >both <<- EOF && + cat >both <<-EOF && Blob Guy <$GIT_AUTHOR_EMAIL> Blob Guy <bugs@company.xx> EOF printf "Tricky Guy <$GIT_AUTHOR_EMAIL>" >no-newline && git add just-bugs both no-newline && git commit -m "my mailmaps" && - echo "Repo Guy <$GIT_AUTHOR_EMAIL>" >.mailmap && - echo "Internal Guy <$GIT_AUTHOR_EMAIL>" >internal.map + + cat >internal.map <<-EOF + Internal Guy <$GIT_AUTHOR_EMAIL> + EOF ' test_expect_success 'mailmap.blob set' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && + cat >expect <<-\EOF && Blob Guy (1): second @@ -223,6 +291,9 @@ test_expect_success 'mailmap.blob set' ' ' test_expect_success 'mailmap.blob overrides .mailmap' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && + cat >expect <<-\EOF && Blob Guy (2): initial @@ -249,7 +320,28 @@ test_expect_success 'mailmap.file overrides mailmap.blob' ' test_cmp expect actual ' +test_expect_success 'mailmap.file can be missing' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && + + test_config mailmap.file nonexistent && + cat >expect <<-\EOF && + Repo Guy (1): + initial + + nick1 (1): + second + + EOF + git shortlog HEAD >actual 2>err && + test_must_be_empty err && + test_cmp expect actual +' + test_expect_success 'mailmap.blob can be missing' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && + cat >expect <<-\EOF && Repo Guy (1): initial @@ -258,7 +350,17 @@ test_expect_success 'mailmap.blob can be missing' ' second EOF - git -c mailmap.blob=map:nonexistent shortlog HEAD >actual && + git -c mailmap.blob=map:nonexistent shortlog HEAD >actual 2>err && + test_must_be_empty err && + test_cmp expect actual +' + +test_expect_success 'mailmap.blob might be the wrong type' ' + test_when_finished "rm .mailmap" && + cp default.map .mailmap && + + git -c mailmap.blob=HEAD: shortlog HEAD >actual 2>err && + test_i18ngrep "mailmap is not a blob" err && test_cmp expect actual ' @@ -267,11 +369,15 @@ test_expect_success 'mailmap.blob defaults to off in non-bare repo' ' ( cd non-bare && test_commit one .mailmap "Fake Name <$GIT_AUTHOR_EMAIL>" && - echo " 1 Fake Name" >expect && + cat >expect <<-\EOF && + 1 Fake Name + EOF git shortlog -ns HEAD >actual && test_cmp expect actual && rm .mailmap && - echo " 1 $GIT_AUTHOR_NAME" >expect && + cat >expect <<-EOF && + 1 $GIT_AUTHOR_NAME + EOF git shortlog -ns HEAD >actual && test_cmp expect actual ) @@ -281,7 +387,9 @@ test_expect_success 'mailmap.blob defaults to HEAD:.mailmap in bare repo' ' git clone --bare non-bare bare && ( cd bare && - echo " 1 Fake Name" >expect && + cat >expect <<-\EOF && + 1 Fake Name + EOF git shortlog -ns HEAD >actual && test_cmp expect actual ) @@ -300,178 +408,260 @@ test_expect_success 'mailmap.blob can handle blobs without trailing newline' ' test_cmp expect actual ' -test_expect_success 'cleanup after mailmap.blob tests' ' - rm -f .mailmap -' - test_expect_success 'single-character name' ' - echo " 1 A <$GIT_AUTHOR_EMAIL>" >expect && - echo " 1 nick1 <bugs@company.xx>" >>expect && - echo "A <$GIT_AUTHOR_EMAIL>" >.mailmap && test_when_finished "rm .mailmap" && + cat >.mailmap <<-EOF && + A <$GIT_AUTHOR_EMAIL> + EOF + + cat >expect <<-EOF && + 1 A <$GIT_AUTHOR_EMAIL> + 1 nick1 <bugs@company.xx> + EOF git shortlog -es HEAD >actual && test_cmp expect actual ' test_expect_success 'preserve canonical email case' ' - echo " 1 $GIT_AUTHOR_NAME <AUTHOR@example.com>" >expect && - echo " 1 nick1 <bugs@company.xx>" >>expect && - echo "<AUTHOR@example.com> <$GIT_AUTHOR_EMAIL>" >.mailmap && test_when_finished "rm .mailmap" && + cat >.mailmap <<-EOF && + <AUTHOR@example.com> <$GIT_AUTHOR_EMAIL> + EOF + + cat >expect <<-EOF && + 1 $GIT_AUTHOR_NAME <AUTHOR@example.com> + 1 nick1 <bugs@company.xx> + EOF git shortlog -es HEAD >actual && test_cmp expect actual ' -# Extended mailmap configurations should give us the following output for shortlog -cat >expect << EOF -$GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> (1): - initial +test_expect_success 'gitmailmap(5) example output: setup' ' + test_create_repo doc && + test_commit -C doc --author "Joe Developer <joe@example.com>" A && + test_commit -C doc --author "Joe R. Developer <joe@example.com>" B && + test_commit -C doc --author "Jane Doe <jane@example.com>" C && + test_commit -C doc --author "Jane Doe <jane@laptop.(none)>" D && + test_commit -C doc --author "Jane D. <jane@desktop.(none)>" E +' + +test_expect_success 'gitmailmap(5) example output: example #1' ' + test_config -C doc mailmap.file ../doc.map && + cat >doc.map <<-\EOF && + Joe R. Developer <joe@example.com> + Jane Doe <jane@example.com> + Jane Doe <jane@desktop.(none)> + EOF + + cat >expect <<-\EOF && + Author Joe Developer <joe@example.com> maps to Joe R. Developer <joe@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author Joe R. Developer <joe@example.com> maps to Joe R. Developer <joe@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author Jane Doe <jane@example.com> maps to Jane Doe <jane@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> -CTO <cto@company.xx> (1): - seventh + Author Jane Doe <jane@laptop.(none)> maps to Jane Doe <jane@laptop.(none)> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> -Other Author <other@author.xx> (2): - third - fourth + Author Jane D <jane@desktop.(none)> maps to Jane Doe <jane@desktop.(none)> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + EOF + git -C doc log --reverse --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual && + test_cmp expect actual +' + +test_expect_success 'gitmailmap(5) example output: example #2' ' + test_config -C doc mailmap.file ../doc.map && + cat >doc.map <<-\EOF && + Joe R. Developer <joe@example.com> + Jane Doe <jane@example.com> <jane@laptop.(none)> + Jane Doe <jane@example.com> <jane@desktop.(none)> + EOF + + cat >expect <<-\EOF && + Author Joe Developer <joe@example.com> maps to Joe R. Developer <joe@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> -Santa Claus <santa.claus@northpole.xx> (2): - fifth - sixth + Author Joe R. Developer <joe@example.com> maps to Joe R. Developer <joe@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> -Some Dude <some@dude.xx> (1): - second + Author Jane Doe <jane@example.com> maps to Jane Doe <jane@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author Jane Doe <jane@laptop.(none)> maps to Jane Doe <jane@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author Jane D <jane@desktop.(none)> maps to Jane Doe <jane@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + EOF + git -C doc log --reverse --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual && + test_cmp expect actual +' + +test_expect_success 'gitmailmap(5) example output: example #3' ' + test_config -C doc mailmap.file ../doc.map && + cat >>doc.map <<-\EOF && + Joe R. Developer <joe@example.com> Joe <bugs@example.com> + Jane Doe <jane@example.com> Jane <bugs@example.com> + EOF + + test_commit -C doc --author "Joe <bugs@example.com>" F && + test_commit -C doc --author "Jane <bugs@example.com>" G && + + cat >>expect <<-\EOF && + + Author Joe <bugs@example.com> maps to Joe R. Developer <joe@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author Jane <bugs@example.com> maps to Jane Doe <jane@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + EOF + git -C doc log --reverse --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual && + test_cmp expect actual +' -EOF test_expect_success 'Shortlog output (complex mapping)' ' - echo three >>one && - git add one && - test_tick && - git commit --author "nick2 <bugs@company.xx>" -m third && - - echo four >>one && - git add one && - test_tick && - git commit --author "nick2 <nick2@company.xx>" -m fourth && - - echo five >>one && - git add one && - test_tick && - git commit --author "santa <me@company.xx>" -m fifth && - - echo six >>one && - git add one && - test_tick && - git commit --author "claus <me@company.xx>" -m sixth && - - echo seven >>one && - git add one && - test_tick && - git commit --author "CTO <cto@coompany.xx>" -m seventh && - - mkdir -p internal_mailmap && - echo "Committed <$GIT_COMMITTER_EMAIL>" > internal_mailmap/.mailmap && - echo "<cto@company.xx> <cto@coompany.xx>" >> internal_mailmap/.mailmap && - echo "Some Dude <some@dude.xx> nick1 <bugs@company.xx>" >> internal_mailmap/.mailmap && - echo "Other Author <other@author.xx> nick2 <bugs@company.xx>" >> internal_mailmap/.mailmap && - echo "Other Author <other@author.xx> <nick2@company.xx>" >> internal_mailmap/.mailmap && - echo "Santa Claus <santa.claus@northpole.xx> <me@company.xx>" >> internal_mailmap/.mailmap && - echo "Santa Claus <santa.claus@northpole.xx> <me@company.xx>" >> internal_mailmap/.mailmap && + test_config mailmap.file complex.map && + cat >complex.map <<-EOF && + Committed <$GIT_COMMITTER_EMAIL> + <cto@company.xx> <cto@coompany.xx> + Some Dude <some@dude.xx> nick1 <bugs@company.xx> + Other Author <other@author.xx> nick2 <bugs@company.xx> + Other Author <other@author.xx> <nick2@company.xx> + Santa Claus <santa.claus@northpole.xx> <me@company.xx> + EOF + + test_commit --author "nick2 <bugs@company.xx>" --append third one three && + test_commit --author "nick2 <nick2@company.xx>" --append fourth one four && + test_commit --author "santa <me@company.xx>" --append fifth one five && + test_commit --author "claus <me@company.xx>" --append sixth one six && + test_commit --author "CTO <cto@coompany.xx>" --append seventh one seven && + + cat >expect <<-EOF && + $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> (1): + initial + + CTO <cto@company.xx> (1): + seventh + + Other Author <other@author.xx> (2): + third + fourth + + Santa Claus <santa.claus@northpole.xx> (2): + fifth + sixth + + Some Dude <some@dude.xx> (1): + second + + EOF git shortlog -e HEAD >actual && test_cmp expect actual ' -# git log with --pretty format which uses the name and email mailmap placemarkers -cat >expect << EOF -Author CTO <cto@coompany.xx> maps to CTO <cto@company.xx> -Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> +test_expect_success 'Log output (complex mapping)' ' + test_config mailmap.file complex.map && -Author claus <me@company.xx> maps to Santa Claus <santa.claus@northpole.xx> -Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> + cat >expect <<-EOF && + Author CTO <cto@coompany.xx> maps to CTO <cto@company.xx> + Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> -Author santa <me@company.xx> maps to Santa Claus <santa.claus@northpole.xx> -Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> + Author claus <me@company.xx> maps to Santa Claus <santa.claus@northpole.xx> + Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> -Author nick2 <nick2@company.xx> maps to Other Author <other@author.xx> -Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> + Author santa <me@company.xx> maps to Santa Claus <santa.claus@northpole.xx> + Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> -Author nick2 <bugs@company.xx> maps to Other Author <other@author.xx> -Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> + Author nick2 <nick2@company.xx> maps to Other Author <other@author.xx> + Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> -Author nick1 <bugs@company.xx> maps to Some Dude <some@dude.xx> -Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> + Author nick2 <bugs@company.xx> maps to Other Author <other@author.xx> + Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> -Author $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> maps to $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> -Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> -EOF + Author nick1 <bugs@company.xx> maps to Some Dude <some@dude.xx> + Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> + + Author $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> maps to $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> + Committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> maps to Committed <$GIT_COMMITTER_EMAIL> + EOF -test_expect_success 'Log output (complex mapping)' ' git log --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual && test_cmp expect actual ' -cat >expect << EOF -Author email cto@coompany.xx has local-part cto -Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME +test_expect_success 'Log output (local-part email address)' ' + cat >expect <<-EOF && + Author email cto@coompany.xx has local-part cto + Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME -Author email me@company.xx has local-part me -Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME + Author email me@company.xx has local-part me + Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME -Author email me@company.xx has local-part me -Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME + Author email me@company.xx has local-part me + Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME -Author email nick2@company.xx has local-part nick2 -Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME + Author email nick2@company.xx has local-part nick2 + Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME -Author email bugs@company.xx has local-part bugs -Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME + Author email bugs@company.xx has local-part bugs + Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME -Author email bugs@company.xx has local-part bugs -Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME + Author email bugs@company.xx has local-part bugs + Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME -Author email author@example.com has local-part author -Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME -EOF + Author email author@example.com has local-part author + Committer email $GIT_COMMITTER_EMAIL has local-part $TEST_COMMITTER_LOCALNAME + EOF -test_expect_success 'Log output (local-part email address)' ' git log --pretty=format:"Author email %ae has local-part %al%nCommitter email %ce has local-part %cl%n" >actual && test_cmp expect actual ' -cat >expect << EOF -Author: CTO <cto@company.xx> -Author: Santa Claus <santa.claus@northpole.xx> -Author: Santa Claus <santa.claus@northpole.xx> -Author: Other Author <other@author.xx> -Author: Other Author <other@author.xx> -Author: Some Dude <some@dude.xx> -Author: $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> -EOF - test_expect_success 'Log output with --use-mailmap' ' - git log --use-mailmap | grep Author >actual && + test_config mailmap.file complex.map && + + cat >expect <<-EOF && + Author: CTO <cto@company.xx> + Author: Santa Claus <santa.claus@northpole.xx> + Author: Santa Claus <santa.claus@northpole.xx> + Author: Other Author <other@author.xx> + Author: Other Author <other@author.xx> + Author: Some Dude <some@dude.xx> + Author: $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> + EOF + + git log --use-mailmap >log && + grep Author log >actual && test_cmp expect actual ' -cat >expect << EOF -Author: CTO <cto@company.xx> -Author: Santa Claus <santa.claus@northpole.xx> -Author: Santa Claus <santa.claus@northpole.xx> -Author: Other Author <other@author.xx> -Author: Other Author <other@author.xx> -Author: Some Dude <some@dude.xx> -Author: $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> -EOF - test_expect_success 'Log output with log.mailmap' ' - git -c log.mailmap=True log | grep Author >actual && + test_config mailmap.file complex.map && + + cat >expect <<-EOF && + Author: CTO <cto@company.xx> + Author: Santa Claus <santa.claus@northpole.xx> + Author: Santa Claus <santa.claus@northpole.xx> + Author: Other Author <other@author.xx> + Author: Other Author <other@author.xx> + Author: Some Dude <some@dude.xx> + Author: $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> + EOF + + git -c log.mailmap=True log >log && + grep Author log >actual && test_cmp expect actual ' test_expect_success 'log.mailmap=false disables mailmap' ' - cat >expect <<- EOF && + cat >expect <<-EOF && Author: CTO <cto@coompany.xx> Author: claus <me@company.xx> Author: santa <me@company.xx> @@ -480,12 +670,13 @@ test_expect_success 'log.mailmap=false disables mailmap' ' Author: nick1 <bugs@company.xx> Author: $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> EOF - git -c log.mailmap=False log | grep Author > actual && + git -c log.mailmap=false log >log && + grep Author log >actual && test_cmp expect actual ' test_expect_success '--no-use-mailmap disables mailmap' ' - cat >expect <<- EOF && + cat >expect <<-EOF && Author: CTO <cto@coompany.xx> Author: claus <me@company.xx> Author: santa <me@company.xx> @@ -494,64 +685,208 @@ test_expect_success '--no-use-mailmap disables mailmap' ' Author: nick1 <bugs@company.xx> Author: $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> EOF - git log --no-use-mailmap | grep Author > actual && + git log --no-use-mailmap >log && + grep Author log >actual && test_cmp expect actual ' -cat >expect <<\EOF -Author: Santa Claus <santa.claus@northpole.xx> -Author: Santa Claus <santa.claus@northpole.xx> -EOF - test_expect_success 'Grep author with --use-mailmap' ' - git log --use-mailmap --author Santa | grep Author >actual && + test_config mailmap.file complex.map && + + cat >expect <<-\EOF && + Author: Santa Claus <santa.claus@northpole.xx> + Author: Santa Claus <santa.claus@northpole.xx> + EOF + git log --use-mailmap --author Santa >log && + grep Author log >actual && test_cmp expect actual ' -cat >expect <<\EOF -Author: Santa Claus <santa.claus@northpole.xx> -Author: Santa Claus <santa.claus@northpole.xx> -EOF test_expect_success 'Grep author with log.mailmap' ' - git -c log.mailmap=True log --author Santa | grep Author >actual && + test_config mailmap.file complex.map && + + cat >expect <<-\EOF && + Author: Santa Claus <santa.claus@northpole.xx> + Author: Santa Claus <santa.claus@northpole.xx> + EOF + + git -c log.mailmap=True log --author Santa >log && + grep Author log >actual && test_cmp expect actual ' test_expect_success 'log.mailmap is true by default these days' ' - git log --author Santa | grep Author >actual && + test_config mailmap.file complex.map && + git log --author Santa >log && + grep Author log >actual && test_cmp expect actual ' test_expect_success 'Only grep replaced author with --use-mailmap' ' + test_config mailmap.file complex.map && git log --use-mailmap --author "<cto@coompany.xx>" >actual && test_must_be_empty actual ' -# git blame -cat >expect <<EOF -^OBJI ($GIT_AUTHOR_NAME DATE 1) one -OBJID (Some Dude DATE 2) two -OBJID (Other Author DATE 3) three -OBJID (Other Author DATE 4) four -OBJID (Santa Claus DATE 5) five -OBJID (Santa Claus DATE 6) six -OBJID (CTO DATE 7) seven -EOF -test_expect_success 'Blame output (complex mapping)' ' - git blame one >actual && - fuzz_blame actual >actual.fuzz && +test_expect_success 'Blame --porcelain output (complex mapping)' ' + test_config mailmap.file complex.map && + + cat >expect <<-EOF && + 1 1 1 + A U Thor + 2 2 1 + Some Dude + 3 3 1 + Other Author + 4 4 1 + Other Author + 5 5 1 + Santa Claus + 6 6 1 + Santa Claus + 7 7 1 + CTO + EOF + + git blame --porcelain one >actual.blame && + + NUM="[0-9][0-9]*" && + sed -n <actual.blame >actual.fuzz \ + -e "s/^author //p" \ + -e "s/^$OID_REGEX \\($NUM $NUM $NUM\\)$/\\1/p" && test_cmp expect actual.fuzz ' -cat >expect <<\EOF -Some Dude <some@dude.xx> -EOF +test_expect_success 'Blame output (complex mapping)' ' + git -c mailmap.file=complex.map blame one >a && + git blame one >b && + test_file_not_empty a && + ! cmp a b +' test_expect_success 'commit --author honors mailmap' ' + test_config mailmap.file complex.map && + + cat >expect <<-\EOF && + Some Dude <some@dude.xx> + EOF + test_must_fail git commit --author "nick" --allow-empty -meight && git commit --author "Some Dude" --allow-empty -meight && git show --pretty=format:"%an <%ae>%n" >actual && test_cmp expect actual ' +test_expect_success 'comment syntax: setup' ' + test_create_repo comm && + test_commit -C comm --author "A <a@example.com>" A && + test_commit -C comm --author "B <b@example.com>" B && + test_commit -C comm --author "C <#@example.com>" C && + test_commit -C comm --author "D <d@e#ample.com>" D && + + test_config -C comm mailmap.file ../doc.map && + cat >>doc.map <<-\EOF && + # Ah <a@example.com> + + ; Bee <b@example.com> + Cee <cee@example.com> <#@example.com> + Dee <dee@example.com> <d@e#ample.com> + EOF + + cat >expect <<-\EOF && + Author A <a@example.com> maps to A <a@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author B <b@example.com> maps to ; Bee <b@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author C <#@example.com> maps to Cee <cee@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author D <d@e#ample.com> maps to Dee <dee@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + EOF + git -C comm log --reverse --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual && + test_cmp expect actual +' + +test_expect_success 'whitespace syntax: setup' ' + test_create_repo space && + test_commit -C space --author "A <a@example.com>" A && + test_commit -C space --author "B <b@example.com>" B && + test_commit -C space --author " C <c@example.com>" C && + test_commit -C space --author " D <d@example.com>" D && + test_commit -C space --author "E E <e@example.com>" E && + test_commit -C space --author "F F <f@example.com>" F && + test_commit -C space --author "G G <g@example.com>" G && + test_commit -C space --author "H H <h@example.com>" H && + + test_config -C space mailmap.file ../space.map && + cat >>space.map <<-\EOF && + Ah <ah@example.com> < a@example.com > + Bee <bee@example.com > < b@example.com > + Cee <cee@example.com> C <c@example.com> + dee <dee@example.com> D <d@example.com> + eee <eee@example.com> E E <e@example.com> + eff <eff@example.com> F F <f@example.com> + gee <gee@example.com> G G <g@example.com> + aitch <aitch@example.com> H H <h@example.com> + EOF + + cat >expect <<-\EOF && + Author A <a@example.com> maps to A <a@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author B <b@example.com> maps to B <b@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author C <c@example.com> maps to Cee <cee@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author D <d@example.com> maps to dee <dee@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author E E <e@example.com> maps to eee <eee@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author F F <f@example.com> maps to eff <eff@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author G G <g@example.com> maps to gee <gee@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author H H <h@example.com> maps to H H <h@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + EOF + git -C space log --reverse --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual && + test_cmp expect actual +' + +test_expect_success 'empty syntax: setup' ' + test_create_repo empty && + test_commit -C empty --author "A <>" A && + test_commit -C empty --author "B <b@example.com>" B && + test_commit -C empty --author "C <c@example.com>" C && + + test_config -C empty mailmap.file ../empty.map && + cat >>empty.map <<-\EOF && + Ah <ah@example.com> <> + Bee <bee@example.com> <> + Cee <> <c@example.com> + EOF + + cat >expect <<-\EOF && + Author A <> maps to Bee <bee@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author B <b@example.com> maps to B <b@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + + Author C <c@example.com> maps to C <c@example.com> + Committer C O Mitter <committer@example.com> maps to C O Mitter <committer@example.com> + EOF + git -C empty log --reverse --pretty=format:"Author %an <%ae> maps to %aN <%aE>%nCommitter %cn <%ce> maps to %cN <%cE>%n" >actual && + test_cmp expect actual +' + test_done diff --git a/t/t4204-patch-id.sh b/t/t4204-patch-id.sh index 8ff8bd84c7..f120857c20 100755 --- a/t/t4204-patch-id.sh +++ b/t/t4204-patch-id.sh @@ -2,6 +2,9 @@ test_description='git patch-id' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -13,9 +16,9 @@ test_expect_success 'setup' ' test_write_lines $as b >foo && test_write_lines $as b >bar && git commit -a -m first && - git checkout -b same master && + git checkout -b same main && git commit --amend -m same-msg && - git checkout -b notsame master && + git checkout -b notsame main && echo c >foo && echo c >bar && git commit --amend -a -m notsame-msg && @@ -46,31 +49,31 @@ get_patch_id () { } test_expect_success 'patch-id detects equality' ' - get_patch_id master && + get_patch_id main && get_patch_id same && - test_cmp patch-id_master patch-id_same + test_cmp patch-id_main patch-id_same ' test_expect_success 'patch-id detects inequality' ' - get_patch_id master && + get_patch_id main && get_patch_id notsame && - ! test_cmp patch-id_master patch-id_notsame + ! test_cmp patch-id_main patch-id_notsame ' test_expect_success 'patch-id supports git-format-patch output' ' - get_patch_id master && + get_patch_id main && git checkout same && git format-patch -1 --stdout | calc_patch_id same && - test_cmp patch-id_master patch-id_same && + test_cmp patch-id_main patch-id_same && set $(git format-patch -1 --stdout | git patch-id) && test "$2" = $(git rev-parse HEAD) ' test_expect_success 'whitespace is irrelevant in footer' ' - get_patch_id master && + get_patch_id main && git checkout same && git format-patch -1 --stdout | sed "s/ \$//" | calc_patch_id same && - test_cmp patch-id_master patch-id_same + test_cmp patch-id_main patch-id_same ' cmp_patch_id () { @@ -88,7 +91,7 @@ test_patch_id_file_order () { shift name="order-${1}-$relevant" shift - get_top_diff "master" | calc_patch_id "$name" "$@" && + get_top_diff "main" | calc_patch_id "$name" "$@" && git checkout same && git format-patch -1 --stdout -O foo-then-bar | calc_patch_id "ordered-$name" "$@" && @@ -137,10 +140,10 @@ test_expect_success '--stable overrides patchid.stable = false' ' ' test_expect_success 'patch-id supports git-format-patch MIME output' ' - get_patch_id master && + get_patch_id main && git checkout same && git format-patch -1 --attach --stdout | calc_patch_id same && - test_cmp patch-id_master patch-id_same + test_cmp patch-id_main patch-id_same ' test_expect_success 'patch-id respects config from subdir' ' diff --git a/t/t4205-log-pretty-formats.sh b/t/t4205-log-pretty-formats.sh index 204c149d5a..749bc1431a 100755 --- a/t/t4205-log-pretty-formats.sh +++ b/t/t4205-log-pretty-formats.sh @@ -605,6 +605,12 @@ test_expect_success 'pretty format %(trailers) shows trailers' ' test_cmp expect actual ' +test_expect_success 'pretty format %(trailers:) enables no options' ' + git log --no-walk --pretty="%(trailers:)" >actual && + # "expect" the same as the test above + test_cmp expect actual +' + test_expect_success '%(trailers:only) shows only "key: value" trailers' ' git log --no-walk --pretty="%(trailers:only)" >actual && { @@ -709,19 +715,101 @@ test_expect_success '%(trailers:key) without value is error' ' test_cmp expect actual ' +test_expect_success '%(trailers:keyonly) shows only keys' ' + git log --no-walk --pretty="format:%(trailers:keyonly)" >actual && + test_write_lines \ + "Signed-off-by" \ + "Acked-by" \ + "[ v2 updated patch description ]" \ + "Signed-off-by" >expect && + test_cmp expect actual +' + +test_expect_success '%(trailers:key=foo,keyonly) shows only key' ' + git log --no-walk --pretty="format:%(trailers:key=Acked-by,keyonly)" >actual && + echo "Acked-by" >expect && + test_cmp expect actual +' + test_expect_success '%(trailers:key=foo,valueonly) shows only value' ' git log --no-walk --pretty="format:%(trailers:key=Acked-by,valueonly)" >actual && echo "A U Thor <author@example.com>" >expect && test_cmp expect actual ' +test_expect_success '%(trailers:valueonly) shows only values' ' + git log --no-walk --pretty="format:%(trailers:valueonly)" >actual && + test_write_lines \ + "A U Thor <author@example.com>" \ + "A U Thor <author@example.com>" \ + "[ v2 updated patch description ]" \ + "A U Thor" \ + " <author@example.com>" >expect && + test_cmp expect actual +' + +test_expect_success '%(trailers:key=foo,keyonly,valueonly) shows nothing' ' + git log --no-walk --pretty="format:%(trailers:key=Acked-by,keyonly,valueonly)" >actual && + echo >expect && + test_cmp expect actual +' + test_expect_success 'pretty format %(trailers:separator) changes separator' ' + git log --no-walk --pretty=format:"X%(trailers:separator=%x00)X" >actual && + ( + printf "XSigned-off-by: A U Thor <author@example.com>\0" && + printf "Acked-by: A U Thor <author@example.com>\0" && + printf "[ v2 updated patch description ]\0" && + printf "Signed-off-by: A U Thor\n <author@example.com>X" + ) >expect && + test_cmp expect actual +' + +test_expect_success 'pretty format %(trailers:separator=X,unfold) changes separator' ' git log --no-walk --pretty=format:"X%(trailers:separator=%x00,unfold)X" >actual && - printf "XSigned-off-by: A U Thor <author@example.com>\0Acked-by: A U Thor <author@example.com>\0[ v2 updated patch description ]\0Signed-off-by: A U Thor <author@example.com>X" >expect && + ( + printf "XSigned-off-by: A U Thor <author@example.com>\0" && + printf "Acked-by: A U Thor <author@example.com>\0" && + printf "[ v2 updated patch description ]\0" && + printf "Signed-off-by: A U Thor <author@example.com>X" + ) >expect && + test_cmp expect actual +' + +test_expect_success 'pretty format %(trailers:key_value_separator) changes key-value separator' ' + git log --no-walk --pretty=format:"X%(trailers:key_value_separator=%x00)X" >actual && + ( + printf "XSigned-off-by\0A U Thor <author@example.com>\n" && + printf "Acked-by\0A U Thor <author@example.com>\n" && + printf "[ v2 updated patch description ]\n" && + printf "Signed-off-by\0A U Thor\n <author@example.com>\nX" + ) >expect && + test_cmp expect actual +' + +test_expect_success 'pretty format %(trailers:key_value_separator,unfold) changes key-value separator' ' + git log --no-walk --pretty=format:"X%(trailers:key_value_separator=%x00,unfold)X" >actual && + ( + printf "XSigned-off-by\0A U Thor <author@example.com>\n" && + printf "Acked-by\0A U Thor <author@example.com>\n" && + printf "[ v2 updated patch description ]\n" && + printf "Signed-off-by\0A U Thor <author@example.com>\nX" + ) >expect && + test_cmp expect actual +' + +test_expect_success 'pretty format %(trailers:separator,key_value_separator) changes both separators' ' + git log --no-walk --pretty=format:"%(trailers:separator=%x00,key_value_separator=%x00%x00,unfold)" >actual && + ( + printf "Signed-off-by\0\0A U Thor <author@example.com>\0" && + printf "Acked-by\0\0A U Thor <author@example.com>\0" && + printf "[ v2 updated patch description ]\0" && + printf "Signed-off-by\0\0A U Thor <author@example.com>" + ) >expect && test_cmp expect actual ' -test_expect_success 'pretty format %(trailers) combining separator/key/valueonly' ' +test_expect_success 'pretty format %(trailers) combining separator/key/keyonly/valueonly' ' git commit --allow-empty -F - <<-\EOF && Important fix @@ -748,6 +836,13 @@ test_expect_success 'pretty format %(trailers) combining separator/key/valueonly "Does not close any tickets" \ "Another fix #567, #890" \ "Important fix #1234" >expect && + test_cmp expect actual && + + git log --pretty="%s% (trailers:separator=%x2c%x20,key=Closes,keyonly)" HEAD~3.. >actual && + test_write_lines \ + "Does not close any tickets" \ + "Another fix Closes, Closes" \ + "Important fix Closes" >expect && test_cmp expect actual ' diff --git a/t/t4207-log-decoration-colors.sh b/t/t4207-log-decoration-colors.sh index 60f040cab8..b870942498 100755 --- a/t/t4207-log-decoration-colors.sh +++ b/t/t4207-log-decoration-colors.sh @@ -5,6 +5,9 @@ test_description='Test for "git log --decorate" colors' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -40,13 +43,13 @@ test_expect_success setup ' cat >expected <<EOF ${c_commit}COMMIT_ID${c_reset}${c_commit} (${c_reset}${c_HEAD}HEAD ->\ - ${c_reset}${c_branch}master${c_reset}${c_commit},\ + ${c_reset}${c_branch}main${c_reset}${c_commit},\ ${c_reset}${c_tag}tag: v1.0${c_reset}${c_commit},\ ${c_reset}${c_tag}tag: B${c_reset}${c_commit})${c_reset} B ${c_commit}COMMIT_ID${c_reset}${c_commit} (${c_reset}${c_tag}tag: A1${c_reset}${c_commit},\ - ${c_reset}${c_remoteBranch}other/master${c_reset}${c_commit})${c_reset} A1 + ${c_reset}${c_remoteBranch}other/main${c_reset}${c_commit})${c_reset} A1 ${c_commit}COMMIT_ID${c_reset}${c_commit} (${c_reset}${c_stash}refs/stash${c_reset}${c_commit})${c_reset}\ - On master: Changes to A.t + On main: Changes to A.t ${c_commit}COMMIT_ID${c_reset}${c_commit} (${c_reset}${c_tag}tag: A${c_reset}${c_commit})${c_reset} A EOF diff --git a/t/t4208-log-magic-pathspec.sh b/t/t4208-log-magic-pathspec.sh index 6cdbe4747a..5e10136e9a 100755 --- a/t/t4208-log-magic-pathspec.sh +++ b/t/t4208-log-magic-pathspec.sh @@ -2,6 +2,9 @@ test_description='magic pathspec tests using git-log' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -26,7 +29,7 @@ test_expect_success '"git log :/a -- " should not be ambiguous' ' ' test_expect_success '"git log :/detached -- " should find a commit only in HEAD' ' - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && git checkout --detach && # Must manually call `test_tick` instead of using `test_commit`, # because the latter additionally creates a tag, which would make @@ -119,7 +122,7 @@ test_expect_success 'command line pathspec parsing for "git log"' ' git checkout HEAD^ && echo 2 >a && git commit -a -m "update a to 2" && - test_must_fail git merge master && + test_must_fail git merge main && git add a && git log --merge -- a ' diff --git a/t/t4211-line-log.sh b/t/t4211-line-log.sh index 85d151423d..560127cc07 100755 --- a/t/t4211-line-log.sh +++ b/t/t4211-line-log.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test log -L' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup (import history)' ' diff --git a/t/t4211/history.export b/t/t4211/history.export index f9f41e211e..006972a1f2 100644 --- a/t/t4211/history.export +++ b/t/t4211/history.export @@ -316,7 +316,7 @@ long f(long x) return s; } -commit refs/heads/master +commit refs/heads/main mark :19 author Thomas Rast <trast@student.ethz.ch> 1362045024 +0100 committer Thomas Rast <trast@student.ethz.ch> 1362045024 +0100 diff --git a/t/t4214-log-graph-octopus.sh b/t/t4214-log-graph-octopus.sh index a080325098..f70c46bbbf 100755 --- a/t/t4214-log-graph-octopus.sh +++ b/t/t4214-log-graph-octopus.sh @@ -2,6 +2,9 @@ test_description='git log --graph of skewed left octopus merge.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-log-graph.sh @@ -17,7 +20,7 @@ test_cmp_colored_graph () { test_expect_success 'set up merge history' ' test_commit initial && for i in 1 2 3 4 ; do - git checkout master -b $i || return $? + git checkout main -b $i || return $? # Make tag name different from branch name, to avoid # ambiguity error when calling checkout. test_commit $i $i $i tag$i || return $? diff --git a/t/t4216-log-bloom.sh b/t/t4216-log-bloom.sh index d11040ce41..0f16c4b9d5 100755 --- a/t/t4216-log-bloom.sh +++ b/t/t4216-log-bloom.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git log for a path with Bloom filters' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh GIT_TEST_COMMIT_GRAPH=0 @@ -21,7 +24,7 @@ test_expect_success 'setup test - repo, commits, commit graph, log outputs' ' test_commit c10 file_to_be_deleted && git checkout -b side HEAD~4 && test_commit side-1 file4 && - git checkout master && + git checkout main && git merge side && test_commit c11 file5 && mv file5 file5_renamed && @@ -94,7 +97,7 @@ do "--topo-order" \ "--date-order" \ "--author-date-order" \ - "--ancestry-path side..master" + "--ancestry-path side..main" do test_expect_success "git log option: $option for path: $path" ' test_bloom_filters_used "$option -- $path" && diff --git a/t/t4253-am-keep-cr-dos.sh b/t/t4253-am-keep-cr-dos.sh index 6e1b73ec3a..0ee69d2a0c 100755 --- a/t/t4253-am-keep-cr-dos.sh +++ b/t/t4253-am-keep-cr-dos.sh @@ -6,6 +6,9 @@ test_description='git-am mbox with dos line ending. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Three patches which will be added as files with dos line ending. @@ -43,7 +46,7 @@ test_expect_success 'setup repository with dos files' ' test_expect_success 'am with dos files without --keep-cr' ' git checkout -b dosfiles initial && - git format-patch -k initial..master && + git format-patch -k initial..main && test_must_fail git am -k -3 000*.patch && git am --abort && rm -rf .git/rebase-apply 000*.patch @@ -51,23 +54,23 @@ test_expect_success 'am with dos files without --keep-cr' ' test_expect_success 'am with dos files with --keep-cr' ' git checkout -b dosfiles-keep-cr initial && - git format-patch -k --stdout initial..master >output && + git format-patch -k --stdout initial..main >output && git am --keep-cr -k -3 output && - git diff --exit-code master + git diff --exit-code main ' test_expect_success 'am with dos files config am.keepcr' ' git config am.keepcr 1 && git checkout -b dosfiles-conf-keepcr initial && - git format-patch -k --stdout initial..master >output && + git format-patch -k --stdout initial..main >output && git am -k -3 output && - git diff --exit-code master + git diff --exit-code main ' test_expect_success 'am with dos files config am.keepcr overridden by --no-keep-cr' ' git config am.keepcr 1 && git checkout -b dosfiles-conf-keepcr-override initial && - git format-patch -k initial..master && + git format-patch -k initial..main && test_must_fail git am -k -3 --no-keep-cr 000*.patch && git am --abort && rm -rf .git/rebase-apply 000*.patch @@ -75,14 +78,14 @@ test_expect_success 'am with dos files config am.keepcr overridden by --no-keep- test_expect_success 'am with dos files with --keep-cr continue' ' git checkout -b dosfiles-keep-cr-continue initial && - git format-patch -k initial..master && + git format-patch -k initial..main && append_cr <file1a >file && git commit -m "different patch" file && test_must_fail git am --keep-cr -k -3 000*.patch && append_cr <file2 >file && git add file && git am -3 --resolved && - git diff --exit-code master + git diff --exit-code main ' test_expect_success 'am with unix files config am.keepcr overridden by --no-keep-cr' ' @@ -90,9 +93,9 @@ test_expect_success 'am with unix files config am.keepcr overridden by --no-keep git checkout -b unixfiles-conf-keepcr-override initial && cp -f file1 file && git commit -m "line ending to unix" file && - git format-patch -k initial..master && + git format-patch -k initial..main && git am -k -3 --no-keep-cr 000*.patch && - git diff --exit-code -w master + git diff --exit-code -w main ' test_done diff --git a/t/t4257-am-interactive.sh b/t/t4257-am-interactive.sh index 5344bd248a..aed8f4de3d 100755 --- a/t/t4257-am-interactive.sh +++ b/t/t4257-am-interactive.sh @@ -10,7 +10,7 @@ test_expect_success 'set up patches to apply' ' git format-patch --stdout -2 >mbox && git reset --hard unrelated && - test_commit conflict-master file master base + test_commit conflict-main file main base ' # Sanity check our setup. diff --git a/t/t5150-request-pull.sh b/t/t5150-request-pull.sh index c1811ea0f4..db4e15fd59 100755 --- a/t/t5150-request-pull.sh +++ b/t/t5150-request-pull.sh @@ -2,6 +2,9 @@ test_description='Test workflows involving pull request.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh if ! test_have_prereq PERL @@ -31,13 +34,13 @@ test_expect_success 'setup' ' test_tick && git commit -m "\"Thirty days\", a reminder of month lengths" && git tag -m "version 1" -a initial && - git push --tags origin master + git push --tags origin main ) && ( cd local && git remote add upstream "$trash_url/upstream.git" && git fetch upstream && - git pull upstream master && + git pull upstream main && cat <<-\EOT >>mnemonic.txt && Of twyecescore-eightt is but eine, And all the remnante be thrycescore-eine. @@ -59,7 +62,7 @@ test_expect_success 'setup' ' git commit -a -m "Adapt to use modern, simpler English But keep the old version, too, in case some people prefer it." && - git checkout master + git checkout main ) ' @@ -129,7 +132,7 @@ test_expect_success 'pull request when forgot to push' ' ( cd local && git checkout initial && - git merge --ff-only master && + git merge --ff-only main && test_must_fail git request-pull initial "$downstream_url" \ 2>../err ) && @@ -145,9 +148,9 @@ test_expect_success 'pull request after push' ' ( cd local && git checkout initial && - git merge --ff-only master && - git push origin master:for-upstream && - git request-pull initial origin master:for-upstream >../request + git merge --ff-only main && + git push origin main:for-upstream && + git request-pull initial origin main:for-upstream >../request ) && sed -nf read-request.sed <request >digest && { @@ -172,9 +175,9 @@ test_expect_success 'request asks HEAD to be pulled' ' ( cd local && git checkout initial && - git merge --ff-only master && - git push --tags origin master simplify && - git push origin master:for-upstream && + git merge --ff-only main && + git push --tags origin main simplify && + git push origin main:for-upstream && git request-pull initial "$downstream_url" >../request ) && sed -nf read-request.sed <request >digest && @@ -215,7 +218,7 @@ test_expect_success 'pull request format' ' ( cd local && git checkout initial && - git merge --ff-only master && + git merge --ff-only main && git push origin tags/full && git request-pull initial "$downstream_url" tags/full >../request ) && @@ -243,9 +246,9 @@ test_expect_success 'request-pull ignores OPTIONS_KEEPDASHDASH poison' ' OPTIONS_KEEPDASHDASH=Yes && export OPTIONS_KEEPDASHDASH && git checkout initial && - git merge --ff-only master && - git push origin master:for-upstream && - git request-pull -- initial "$downstream_url" master:for-upstream >../request + git merge --ff-only main && + git push origin main:for-upstream && + git request-pull -- initial "$downstream_url" main:for-upstream >../request ) ' @@ -257,7 +260,7 @@ test_expect_success 'request-pull quotes regex metacharacters properly' ' ( cd local && git checkout initial && - git merge --ff-only master && + git merge --ff-only main && git tag -mrelease v2.0 && git push origin refs/tags/v2.0:refs/tags/v2-0 && test_must_fail git request-pull initial "$downstream_url" tags/v2.0 \ @@ -275,7 +278,7 @@ test_expect_success 'pull request with mismatched object' ' ( cd local && git checkout initial && - git merge --ff-only master && + git merge --ff-only main && git push origin HEAD:refs/tags/full && test_must_fail git request-pull initial "$downstream_url" tags/full \ 2>../err @@ -292,7 +295,7 @@ test_expect_success 'pull request with stale object' ' ( cd local && git checkout initial && - git merge --ff-only master && + git merge --ff-only main && git push origin refs/tags/full && git tag -f -m"Thirty-one days" full && test_must_fail git request-pull initial "$downstream_url" tags/full \ diff --git a/t/t5304-prune.sh b/t/t5304-prune.sh index df60f18fb8..b447ce56a9 100755 --- a/t/t5304-prune.sh +++ b/t/t5304-prune.sh @@ -4,6 +4,9 @@ # test_description='prune' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh day=$((60*60*24)) @@ -119,7 +122,7 @@ test_expect_success 'prune: do not prune detached HEAD with no reflog' ' test_expect_success 'prune: prune former HEAD after checking out branch' ' head_oid=$(git rev-parse HEAD) && - git checkout --quiet master && + git checkout --quiet main && git prune -v >prune_actual && grep "$head_oid" prune_actual diff --git a/t/t5305-include-tag.sh b/t/t5305-include-tag.sh index a5eca210b8..44bd9ef45f 100755 --- a/t/t5305-include-tag.sh +++ b/t/t5305-include-tag.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git pack-object --include-tag' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh TRASH=$(pwd) @@ -111,7 +114,7 @@ test_expect_success 'check unpacked result (have all objects)' ' test_expect_success 'single-branch clone can transfer tag' ' rm -rf clone.git && - git clone --no-local --single-branch -b master . clone.git && + git clone --no-local --single-branch -b main . clone.git && git -C clone.git fsck ' diff --git a/t/t5310-pack-bitmaps.sh b/t/t5310-pack-bitmaps.sh index 1d40fcad39..5ba7603109 100755 --- a/t/t5310-pack-bitmaps.sh +++ b/t/t5310-pack-bitmaps.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='exercise basic bitmap functionality' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=master +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh objpath () { @@ -20,84 +23,172 @@ has_any () { grep -Ff "$1" "$2" } +# To ensure the logic for "maximal commits" is exercised, make +# the repository a bit more complicated. +# +# other second +# * * +# (99 commits) (99 commits) +# * * +# |\ /| +# | * octo-other octo-second * | +# |/|\_________ ____________/|\| +# | \ \/ __________/ | +# | | ________/\ / | +# * |/ * merge-right * +# | _|__________/ \____________ | +# |/ | \| +# (l1) * * merge-left * (r1) +# | / \________________________ | +# |/ \| +# (l2) * * (r2) +# \___________________________ | +# \| +# * (base) +# +# We only push bits down the first-parent history, which +# makes some of these commits unimportant! +# +# The important part for the maximal commit algorithm is how +# the bitmasks are extended. Assuming starting bit positions +# for second (bit 0) and other (bit 1), the bitmasks at the +# end should be: +# +# second: 1 (maximal, selected) +# other: 01 (maximal, selected) +# (base): 11 (maximal) +# +# This complicated history was important for a previous +# version of the walk that guarantees never walking a +# commit multiple times. That goal might be important +# again, so preserve this complicated case. For now, this +# test will guarantee that the bitmaps are computed +# correctly, even with the repeat calculations. + test_expect_success 'setup repo with moderate-sized history' ' - test_commit_bulk --id=file 100 && + test_commit_bulk --id=file 10 && + git branch -M second && git checkout -b other HEAD~5 && test_commit_bulk --id=side 10 && - git checkout master && - bitmaptip=$(git rev-parse master) && + + # add complicated history setup, including merges and + # ambiguous merge-bases + + git checkout -b merge-left other~2 && + git merge second~2 -m "merge-left" && + + git checkout -b merge-right second~1 && + git merge other~1 -m "merge-right" && + + git checkout -b octo-second second && + git merge merge-left merge-right -m "octopus-second" && + + git checkout -b octo-other other && + git merge merge-left merge-right -m "octopus-other" && + + git checkout other && + git merge octo-other -m "pull octopus" && + + git checkout second && + git merge octo-second -m "pull octopus" && + + # Remove these branches so they are not selected + # as bitmap tips + git branch -D merge-left && + git branch -D merge-right && + git branch -D octo-other && + git branch -D octo-second && + + # add padding to make these merges less interesting + # and avoid having them selected for bitmaps + test_commit_bulk --id=file 100 && + git checkout other && + test_commit_bulk --id=side 100 && + git checkout second && + + bitmaptip=$(git rev-parse second) && blob=$(echo tagged-blob | git hash-object -w --stdin) && git tag tagged-blob $blob && git config repack.writebitmaps true ' test_expect_success 'full repack creates bitmaps' ' - git repack -ad && + GIT_TRACE2_EVENT_NESTING=4 GIT_TRACE2_EVENT="$(pwd)/trace" \ + git repack -ad && ls .git/objects/pack/ | grep bitmap >output && - test_line_count = 1 output + test_line_count = 1 output && + grep "\"key\":\"num_selected_commits\",\"value\":\"106\"" trace && + grep "\"key\":\"num_maximal_commits\",\"value\":\"107\"" trace ' test_expect_success 'rev-list --test-bitmap verifies bitmaps' ' git rev-list --test-bitmap HEAD ' -rev_list_tests() { - state=$1 - - test_expect_success "counting commits via bitmap ($state)" ' - git rev-list --count HEAD >expect && - git rev-list --use-bitmap-index --count HEAD >actual && +rev_list_tests_head () { + test_expect_success "counting commits via bitmap ($state, $branch)" ' + git rev-list --count $branch >expect && + git rev-list --use-bitmap-index --count $branch >actual && test_cmp expect actual ' - test_expect_success "counting partial commits via bitmap ($state)" ' - git rev-list --count HEAD~5..HEAD >expect && - git rev-list --use-bitmap-index --count HEAD~5..HEAD >actual && + test_expect_success "counting partial commits via bitmap ($state, $branch)" ' + git rev-list --count $branch~5..$branch >expect && + git rev-list --use-bitmap-index --count $branch~5..$branch >actual && test_cmp expect actual ' - test_expect_success "counting commits with limit ($state)" ' - git rev-list --count -n 1 HEAD >expect && - git rev-list --use-bitmap-index --count -n 1 HEAD >actual && + test_expect_success "counting commits with limit ($state, $branch)" ' + git rev-list --count -n 1 $branch >expect && + git rev-list --use-bitmap-index --count -n 1 $branch >actual && test_cmp expect actual ' - test_expect_success "counting non-linear history ($state)" ' - git rev-list --count other...master >expect && - git rev-list --use-bitmap-index --count other...master >actual && + test_expect_success "counting non-linear history ($state, $branch)" ' + git rev-list --count other...second >expect && + git rev-list --use-bitmap-index --count other...second >actual && test_cmp expect actual ' - test_expect_success "counting commits with limiting ($state)" ' - git rev-list --count HEAD -- 1.t >expect && - git rev-list --use-bitmap-index --count HEAD -- 1.t >actual && + test_expect_success "counting commits with limiting ($state, $branch)" ' + git rev-list --count $branch -- 1.t >expect && + git rev-list --use-bitmap-index --count $branch -- 1.t >actual && test_cmp expect actual ' - test_expect_success "counting objects via bitmap ($state)" ' - git rev-list --count --objects HEAD >expect && - git rev-list --use-bitmap-index --count --objects HEAD >actual && + test_expect_success "counting objects via bitmap ($state, $branch)" ' + git rev-list --count --objects $branch >expect && + git rev-list --use-bitmap-index --count --objects $branch >actual && test_cmp expect actual ' - test_expect_success "enumerate commits ($state)" ' - git rev-list --use-bitmap-index HEAD >actual && - git rev-list HEAD >expect && + test_expect_success "enumerate commits ($state, $branch)" ' + git rev-list --use-bitmap-index $branch >actual && + git rev-list $branch >expect && test_bitmap_traversal --no-confirm-bitmaps expect actual ' - test_expect_success "enumerate --objects ($state)" ' - git rev-list --objects --use-bitmap-index HEAD >actual && - git rev-list --objects HEAD >expect && + test_expect_success "enumerate --objects ($state, $branch)" ' + git rev-list --objects --use-bitmap-index $branch >actual && + git rev-list --objects $branch >expect && test_bitmap_traversal expect actual ' - test_expect_success "bitmap --objects handles non-commit objects ($state)" ' - git rev-list --objects --use-bitmap-index HEAD tagged-blob >actual && + test_expect_success "bitmap --objects handles non-commit objects ($state, $branch)" ' + git rev-list --objects --use-bitmap-index $branch tagged-blob >actual && grep $blob actual ' } +rev_list_tests () { + state=$1 + + for branch in "second" "other" + do + rev_list_tests_head + done +} + rev_list_tests 'full bitmap' test_expect_success 'clone from bitmapped repository' ' @@ -128,7 +219,7 @@ test_expect_success 'setup further non-bitmapped commits' ' rev_list_tests 'partial bitmap' test_expect_success 'fetch (partial bitmap)' ' - git --git-dir=clone.git fetch origin master:master && + git --git-dir=clone.git fetch origin second:second && git rev-parse HEAD >expect && git --git-dir=clone.git rev-parse HEAD >actual && test_cmp expect actual @@ -230,7 +321,7 @@ test_expect_success 'full repack, reusing previous bitmaps' ' ' test_expect_success 'fetch (full bitmap)' ' - git --git-dir=clone.git fetch origin master:master && + git --git-dir=clone.git fetch origin second:second && git rev-parse HEAD >expect && git --git-dir=clone.git rev-parse HEAD >actual && test_cmp expect actual @@ -343,7 +434,20 @@ test_expect_success 'pack reuse respects --incremental' ' test_must_be_empty actual ' -test_expect_success 'truncated bitmap fails gracefully' ' +test_expect_success 'truncated bitmap fails gracefully (ewah)' ' + test_config pack.writebitmaphashcache false && + git repack -ad && + git rev-list --use-bitmap-index --count --all >expect && + bitmap=$(ls .git/objects/pack/*.bitmap) && + test_when_finished "rm -f $bitmap" && + test_copy_bytes 256 <$bitmap >$bitmap.tmp && + mv -f $bitmap.tmp $bitmap && + git rev-list --use-bitmap-index --count --all >actual 2>stderr && + test_cmp expect actual && + test_i18ngrep corrupt.ewah.bitmap stderr +' + +test_expect_success 'truncated bitmap fails gracefully (cache)' ' git repack -ad && git rev-list --use-bitmap-index --count --all >expect && bitmap=$(ls .git/objects/pack/*.bitmap) && @@ -352,7 +456,7 @@ test_expect_success 'truncated bitmap fails gracefully' ' mv -f $bitmap.tmp $bitmap && git rev-list --use-bitmap-index --count --all >actual 2>stderr && test_cmp expect actual && - test_i18ngrep corrupt stderr + test_i18ngrep corrupted.bitmap.index stderr ' # have_delta <obj> <expected_base> diff --git a/t/t5312-prune-corruption.sh b/t/t5312-prune-corruption.sh index da9d59940d..11423b3cb2 100755 --- a/t/t5312-prune-corruption.sh +++ b/t/t5312-prune-corruption.sh @@ -8,6 +8,9 @@ bail out or to proceed using it as a reachable tip, but it is _not_ OK to proceed as if it did not exist. Otherwise we might silently delete objects that cannot be recovered. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'disable reflogs' ' @@ -16,7 +19,7 @@ test_expect_success 'disable reflogs' ' ' test_expect_success 'create history reachable only from a bogus-named ref' ' - test_tick && git commit --allow-empty -m master && + test_tick && git commit --allow-empty -m main && base=$(git rev-parse HEAD) && test_tick && git commit --allow-empty -m bogus && bogus=$(git rev-parse HEAD) && @@ -51,7 +54,7 @@ test_expect_success 'clean up bogus ref' ' ' # We create two new objects here, "one" and "two". Our -# master branch points to "two", which is deleted, +# main branch points to "two", which is deleted, # corrupting the repository. But we'd like to make sure # that the otherwise unreachable "one" is not pruned # (since it is the user's best bet for recovering @@ -81,7 +84,7 @@ test_expect_success 'pruning with a corrupted tip does not drop history' ' test_expect_success 'pack-refs does not silently delete broken loose ref' ' git pack-refs --all --prune && echo $missing >expect && - git rev-parse refs/heads/master >actual && + git rev-parse refs/heads/main >actual && test_cmp expect actual ' @@ -89,25 +92,25 @@ test_expect_success 'pack-refs does not silently delete broken loose ref' ' # actually pack it, as it is perfectly reasonable to # skip processing a broken ref test_expect_success 'create packed-refs file with broken ref' ' - rm -f .git/refs/heads/master && + rm -f .git/refs/heads/main && cat >.git/packed-refs <<-EOF && - $missing refs/heads/master + $missing refs/heads/main $recoverable refs/heads/other EOF echo $missing >expect && - git rev-parse refs/heads/master >actual && + git rev-parse refs/heads/main >actual && test_cmp expect actual ' test_expect_success 'pack-refs does not silently delete broken packed ref' ' git pack-refs --all --prune && - git rev-parse refs/heads/master >actual && + git rev-parse refs/heads/main >actual && test_cmp expect actual ' test_expect_success 'pack-refs does not drop broken refs during deletion' ' git update-ref -d refs/heads/other && - git rev-parse refs/heads/master >actual && + git rev-parse refs/heads/main >actual && test_cmp expect actual ' diff --git a/t/t5317-pack-objects-filter-objects.sh b/t/t5317-pack-objects-filter-objects.sh index dc0446574b..13ed3eb136 100755 --- a/t/t5317-pack-objects-filter-objects.sh +++ b/t/t5317-pack-objects-filter-objects.sh @@ -2,6 +2,9 @@ test_description='git pack-objects using object filtering' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Test blob:none filter. @@ -382,7 +385,7 @@ test_expect_success 'verify sparse:oid=oid-ish' ' awk -f print_2.awk ls_files_result | sort >expected && - git -C r4 pack-objects --revs --stdout --filter=sparse:oid=master:pattern >filter.pack <<-EOF && + git -C r4 pack-objects --revs --stdout --filter=sparse:oid=main:pattern >filter.pack <<-EOF && HEAD EOF git -C r4 index-pack ../filter.pack && diff --git a/t/t5322-pack-objects-sparse.sh b/t/t5322-pack-objects-sparse.sh index a581eaf529..61cb907a90 100755 --- a/t/t5322-pack-objects-sparse.sh +++ b/t/t5322-pack-objects-sparse.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='pack-objects object selection using sparse algorithm' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup repo' ' @@ -18,7 +21,7 @@ test_expect_success 'setup repo' ' git commit -m "Initialized trees" && for i in $(test_seq 1 3) do - git checkout -b topic$i master && + git checkout -b topic$i main && echo change-$i >f$i/f$i/data.txt && git commit -a -m "Changed f$i/f$i/data.txt" done && diff --git a/t/t5323-pack-redundant.sh b/t/t5323-pack-redundant.sh index 7e3340843f..8b01793845 100755 --- a/t/t5323-pack-redundant.sh +++ b/t/t5323-pack-redundant.sh @@ -6,7 +6,7 @@ test_description='Test git pack-redundant In order to test git-pack-redundant, we will create a number of objects and -packs in the repository `master.git`. The relationship between packs (P1-P8) +packs in the repository `main.git`. The relationship between packs (P1-P8) and objects (T, A-R) is showed in the following chart. Objects of a pack will be marked with letter x, while objects of redundant packs will be marked with exclamation point, and redundant pack itself will be marked with asterisk. @@ -25,7 +25,7 @@ exclamation point, and redundant pack itself will be marked with asterisk. ALL | x x x x x x x x x x x x x x x x x x x Another repository `shared.git` has unique objects (X-Z), while other objects -(marked with letter s) are shared through alt-odb (of `master.git`). The +(marked with letter s) are shared through alt-odb (of `main.git`). The relationship between packs and objects is as follows: | T A B C D E F G H I J K L M N O P Q R X Y Z @@ -36,9 +36,11 @@ relationship between packs and objects is as follows: . ./test-lib.sh -master_repo=master.git +main_repo=main.git shared_repo=shared.git +git_pack_redundant='git pack-redundant --i-still-use-this' + # Create commits in <repo> and assign each commit's oid to shell variables # given in the arguments (A, B, and C). E.g.: # @@ -69,7 +71,7 @@ create_commits_in () { shift || return 1 done && - git -C "$repo" update-ref refs/heads/master $oid + git -C "$repo" update-ref refs/heads/main $oid } # Create pack in <repo> and assign pack id to variable given in the 2nd argument @@ -107,9 +109,9 @@ format_packfiles () { sort } -test_expect_success 'setup master repo' ' - git init --bare "$master_repo" && - create_commits_in "$master_repo" A B C D E F G H I J K L M N O P Q R +test_expect_success 'setup main repo' ' + git init --bare "$main_repo" && + create_commits_in "$main_repo" A B C D E F G H I J K L M N O P Q R ' test_expect_success 'master: pack-redundant works with no packfile' ' @@ -118,7 +120,7 @@ test_expect_success 'master: pack-redundant works with no packfile' ' cat >expect <<-EOF && fatal: Zero packs found! EOF - test_must_fail git pack-redundant --all >actual 2>&1 && + test_must_fail $git_pack_redundant --all >actual 2>&1 && test_cmp expect actual ) ' @@ -133,8 +135,8 @@ test_expect_success 'master: pack-redundant works with no packfile' ' # ALL | x x x x x x x x # ############################################################################# -test_expect_success 'master: pack-redundant works with one packfile' ' - create_pack_in "$master_repo" P1 <<-EOF && +test_expect_success 'main: pack-redundant works with one packfile' ' + create_pack_in "$main_repo" P1 <<-EOF && $T $A $B @@ -145,8 +147,8 @@ test_expect_success 'master: pack-redundant works with one packfile' ' $R EOF ( - cd "$master_repo" && - git pack-redundant --all >out && + cd "$main_repo" && + $git_pack_redundant --all >out && test_must_be_empty out ) ' @@ -163,8 +165,8 @@ test_expect_success 'master: pack-redundant works with one packfile' ' # ALL | x x x x x x x x x x x x x x x # ############################################################################# -test_expect_success 'master: no redundant for pack 1, 2, 3' ' - create_pack_in "$master_repo" P2 <<-EOF && +test_expect_success 'main: no redundant for pack 1, 2, 3' ' + create_pack_in "$main_repo" P2 <<-EOF && $B $C $D @@ -173,7 +175,7 @@ test_expect_success 'master: no redundant for pack 1, 2, 3' ' $H $I EOF - create_pack_in "$master_repo" P3 <<-EOF && + create_pack_in "$main_repo" P3 <<-EOF && $F $I $J @@ -182,8 +184,8 @@ test_expect_success 'master: no redundant for pack 1, 2, 3' ' $M EOF ( - cd "$master_repo" && - git pack-redundant --all >out && + cd "$main_repo" && + $git_pack_redundant --all >out && test_must_be_empty out ) ' @@ -202,26 +204,26 @@ test_expect_success 'master: no redundant for pack 1, 2, 3' ' # ALL | x x x x x x x x x x x x x x x x x x # ############################################################################# -test_expect_success 'master: one of pack-2/pack-3 is redundant' ' - create_pack_in "$master_repo" P4 <<-EOF && +test_expect_success 'main: one of pack-2/pack-3 is redundant' ' + create_pack_in "$main_repo" P4 <<-EOF && $J $K $L $M $P EOF - create_pack_in "$master_repo" P5 <<-EOF && + create_pack_in "$main_repo" P5 <<-EOF && $G $H $N $O EOF ( - cd "$master_repo" && + cd "$main_repo" && cat >expect <<-EOF && P3:$P3 EOF - git pack-redundant --all >out && + $git_pack_redundant --all >out && format_packfiles <out >actual && test_cmp expect actual ) @@ -243,24 +245,24 @@ test_expect_success 'master: one of pack-2/pack-3 is redundant' ' # ALL | x x x x x x x x x x x x x x x x x x x # ############################################################################# -test_expect_success 'master: pack 2, 4, and 6 are redundant' ' - create_pack_in "$master_repo" P6 <<-EOF && +test_expect_success 'main: pack 2, 4, and 6 are redundant' ' + create_pack_in "$main_repo" P6 <<-EOF && $N $O $Q EOF - create_pack_in "$master_repo" P7 <<-EOF && + create_pack_in "$main_repo" P7 <<-EOF && $P $Q EOF ( - cd "$master_repo" && + cd "$main_repo" && cat >expect <<-EOF && P2:$P2 P4:$P4 P6:$P6 EOF - git pack-redundant --all >out && + $git_pack_redundant --all >out && format_packfiles <out >actual && test_cmp expect actual ) @@ -283,57 +285,57 @@ test_expect_success 'master: pack 2, 4, and 6 are redundant' ' # ALL | x x x x x x x x x x x x x x x x x x x # ############################################################################# -test_expect_success 'master: pack-8 (subset of pack-1) is also redundant' ' - create_pack_in "$master_repo" P8 <<-EOF && +test_expect_success 'main: pack-8 (subset of pack-1) is also redundant' ' + create_pack_in "$main_repo" P8 <<-EOF && $A EOF ( - cd "$master_repo" && + cd "$main_repo" && cat >expect <<-EOF && P2:$P2 P4:$P4 P6:$P6 P8:$P8 EOF - git pack-redundant --all >out && + $git_pack_redundant --all >out && format_packfiles <out >actual && test_cmp expect actual ) ' -test_expect_success 'master: clean loose objects' ' +test_expect_success 'main: clean loose objects' ' ( - cd "$master_repo" && + cd "$main_repo" && git prune-packed && find objects -type f | sed -e "/objects\/pack\//d" >out && test_must_be_empty out ) ' -test_expect_success 'master: remove redundant packs and pass fsck' ' +test_expect_success 'main: remove redundant packs and pass fsck' ' ( - cd "$master_repo" && - git pack-redundant --all | xargs rm && + cd "$main_repo" && + $git_pack_redundant --all | xargs rm && git fsck && - git pack-redundant --all >out && + $git_pack_redundant --all >out && test_must_be_empty out ) ' # The following test cases will execute inside `shared.git`, instead of -# inside `master.git`. +# inside `main.git`. test_expect_success 'setup shared.git' ' - git clone --mirror "$master_repo" "$shared_repo" && + git clone --mirror "$main_repo" "$shared_repo" && ( cd "$shared_repo" && - printf "../../$master_repo/objects\n" >objects/info/alternates + printf "../../$main_repo/objects\n" >objects/info/alternates ) ' test_expect_success 'shared: all packs are redundant, but no output without --alt-odb' ' ( cd "$shared_repo" && - git pack-redundant --all >out && + $git_pack_redundant --all >out && test_must_be_empty out ) ' @@ -341,7 +343,7 @@ test_expect_success 'shared: all packs are redundant, but no output without --al ############################################################################# # Chart of packs and objects for this test case # -# ================ master.git =============== +# ================= main.git ================ # | T A B C D E F G H I J K L M N O P Q R <----------+ # ----+-------------------------------------- | # P1 | x x x x x x x x | @@ -372,7 +374,7 @@ test_expect_success 'shared: show redundant packs in stderr for verbose mode' ' P5:$P5 P7:$P7 EOF - git pack-redundant --all --verbose >out 2>out.err && + $git_pack_redundant --all --verbose >out 2>out.err && test_must_be_empty out && grep "pack$" out.err | format_packfiles >actual && test_cmp expect actual @@ -385,9 +387,9 @@ test_expect_success 'shared: remove redundant packs, no packs left' ' cat >expect <<-EOF && fatal: Zero packs found! EOF - git pack-redundant --all --alt-odb | xargs rm && + $git_pack_redundant --all --alt-odb | xargs rm && git fsck && - test_must_fail git pack-redundant --all --alt-odb >actual 2>&1 && + test_must_fail $git_pack_redundant --all --alt-odb >actual 2>&1 && test_cmp expect actual ) ' @@ -415,7 +417,7 @@ test_expect_success 'shared: create new objects and packs' ' test_expect_success 'shared: no redundant without --alt-odb' ' ( cd "$shared_repo" && - git pack-redundant --all >out && + $git_pack_redundant --all >out && test_must_be_empty out ) ' @@ -423,7 +425,7 @@ test_expect_success 'shared: no redundant without --alt-odb' ' ############################################################################# # Chart of packs and objects for this test case # -# ================ master.git =============== +# ================= main.git ================ # | T A B C D E F G H I J K L M N O P Q R <----------------+ # ----+-------------------------------------- | # P1 | x x x x x x x x | @@ -446,7 +448,7 @@ test_expect_success 'shared: no redundant without --alt-odb' ' test_expect_success 'shared: one pack is redundant with --alt-odb' ' ( cd "$shared_repo" && - git pack-redundant --all --alt-odb >out && + $git_pack_redundant --all --alt-odb >out && format_packfiles <out >actual && test_line_count = 1 actual ) @@ -455,7 +457,7 @@ test_expect_success 'shared: one pack is redundant with --alt-odb' ' ############################################################################# # Chart of packs and objects for this test case # -# ================ master.git =============== +# ================= main.git ================ # | T A B C D E F G H I J K L M N O P Q R <----------------+ # ----+-------------------------------------- | # P1 | x x x x x x x x | @@ -483,7 +485,7 @@ test_expect_success 'shared: ignore unique objects and all two packs are redunda Px1:$Px1 Px2:$Px2 EOF - git pack-redundant --all --alt-odb >out <<-EOF && + $git_pack_redundant --all --alt-odb >out <<-EOF && $X $Y $Z diff --git a/t/t5400-send-pack.sh b/t/t5400-send-pack.sh index cc86ef213e..3f81f16e13 100755 --- a/t/t5400-send-pack.sh +++ b/t/t5400-send-pack.sh @@ -6,6 +6,9 @@ test_description='See why rewinding head breaks send-pack ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh cnt=64 @@ -66,20 +69,20 @@ test_expect_success 'pack the destination repository' ' ' test_expect_success 'refuse pushing rewound head without --force' ' - pushed_head=$(git rev-parse --verify master) && - victim_orig=$(cd victim && git rev-parse --verify master) && - test_must_fail git send-pack ./victim master && - victim_head=$(cd victim && git rev-parse --verify master) && + pushed_head=$(git rev-parse --verify main) && + victim_orig=$(cd victim && git rev-parse --verify main) && + test_must_fail git send-pack ./victim main && + victim_head=$(cd victim && git rev-parse --verify main) && test "$victim_head" = "$victim_orig" && # this should update - git send-pack --force ./victim master && - victim_head=$(cd victim && git rev-parse --verify master) && + git send-pack --force ./victim main && + victim_head=$(cd victim && git rev-parse --verify main) && test "$victim_head" = "$pushed_head" ' test_expect_success 'push can be used to delete a ref' ' - ( cd victim && git branch extra master ) && - git send-pack ./victim :extra master && + ( cd victim && git branch extra main ) && + git send-pack ./victim :extra main && ( cd victim && test_must_fail git rev-parse --verify extra ) ' @@ -89,9 +92,9 @@ test_expect_success 'refuse deleting push with denyDeletes' ' cd victim && test_might_fail git branch -D extra && git config receive.denyDeletes true && - git branch extra master + git branch extra main ) && - test_must_fail git send-pack ./victim :extra master + test_must_fail git send-pack ./victim :extra main ' test_expect_success 'cannot override denyDeletes with git -c send-pack' ' @@ -99,10 +102,10 @@ test_expect_success 'cannot override denyDeletes with git -c send-pack' ' cd victim && test_might_fail git branch -D extra && git config receive.denyDeletes true && - git branch extra master + git branch extra main ) && test_must_fail git -c receive.denyDeletes=false \ - send-pack ./victim :extra master + send-pack ./victim :extra main ' test_expect_success 'override denyDeletes with git -c receive-pack' ' @@ -110,11 +113,11 @@ test_expect_success 'override denyDeletes with git -c receive-pack' ' cd victim && test_might_fail git branch -D extra && git config receive.denyDeletes true && - git branch extra master + git branch extra main ) && git send-pack \ --receive-pack="git -c receive.denyDeletes=false receive-pack" \ - ./victim :extra master + ./victim :extra main ' test_expect_success 'denyNonFastforwards trumps --force' ' @@ -123,9 +126,9 @@ test_expect_success 'denyNonFastforwards trumps --force' ' test_might_fail git branch -D extra && git config receive.denyNonFastforwards true ) && - victim_orig=$(cd victim && git rev-parse --verify master) && - test_must_fail git send-pack --force ./victim master^:master && - victim_head=$(cd victim && git rev-parse --verify master) && + victim_orig=$(cd victim && git rev-parse --verify main) && + test_must_fail git send-pack --force ./victim main^:main && + victim_head=$(cd victim && git rev-parse --verify main) && test "$victim_orig" = "$victim_head" ' @@ -210,41 +213,41 @@ rewound_push_setup() { test_expect_success 'pushing explicit refspecs respects forcing' ' rewound_push_setup && - parent_orig=$(cd parent && git rev-parse --verify master) && + parent_orig=$(cd parent && git rev-parse --verify main) && ( cd child && test_must_fail git send-pack ../parent \ - refs/heads/master:refs/heads/master + refs/heads/main:refs/heads/main ) && - parent_head=$(cd parent && git rev-parse --verify master) && + parent_head=$(cd parent && git rev-parse --verify main) && test "$parent_orig" = "$parent_head" && ( cd child && git send-pack ../parent \ - +refs/heads/master:refs/heads/master + +refs/heads/main:refs/heads/main ) && - parent_head=$(cd parent && git rev-parse --verify master) && - child_head=$(cd child && git rev-parse --verify master) && + parent_head=$(cd parent && git rev-parse --verify main) && + child_head=$(cd child && git rev-parse --verify main) && test "$parent_head" = "$child_head" ' test_expect_success 'pushing wildcard refspecs respects forcing' ' rewound_push_setup && - parent_orig=$(cd parent && git rev-parse --verify master) && + parent_orig=$(cd parent && git rev-parse --verify main) && ( cd child && test_must_fail git send-pack ../parent \ "refs/heads/*:refs/heads/*" ) && - parent_head=$(cd parent && git rev-parse --verify master) && + parent_head=$(cd parent && git rev-parse --verify main) && test "$parent_orig" = "$parent_head" && ( cd child && git send-pack ../parent \ "+refs/heads/*:refs/heads/*" ) && - parent_head=$(cd parent && git rev-parse --verify master) && - child_head=$(cd child && git rev-parse --verify master) && + parent_head=$(cd parent && git rev-parse --verify main) && + child_head=$(cd child && git rev-parse --verify main) && test "$parent_head" = "$child_head" ' @@ -252,7 +255,7 @@ test_expect_success 'deny pushing to delete current branch' ' rewound_push_setup && ( cd child && - test_must_fail git send-pack ../parent :refs/heads/master 2>errs + test_must_fail git send-pack ../parent :refs/heads/main 2>errs ) ' @@ -283,9 +286,9 @@ test_expect_success 'receive-pack de-dupes .have lines' ' local=$(git -C fork rev-parse HEAD) && shared=$(git -C shared rev-parse only-shared) && cat >expect <<-EOF && - $local refs/heads/master + $local refs/heads/main $local refs/remotes/origin/HEAD - $local refs/remotes/origin/master + $local refs/remotes/origin/main $shared .have EOF diff --git a/t/t5401-update-hooks.sh b/t/t5401-update-hooks.sh index 956d69f5b1..6012cc8172 100755 --- a/t/t5401-update-hooks.sh +++ b/t/t5401-update-hooks.sh @@ -15,11 +15,11 @@ test_expect_success setup ' git update-index a && tree1=$(git write-tree) && commit1=$(echo modify | git commit-tree $tree1 -p $commit0) && - git update-ref refs/heads/master $commit0 && + git update-ref refs/heads/main $commit0 && git update-ref refs/heads/tofail $commit1 && git clone --bare ./. victim.git && GIT_DIR=victim.git git update-ref refs/heads/tofail $commit1 && - git update-ref refs/heads/master $commit1 && + git update-ref refs/heads/main $commit1 && git update-ref refs/heads/tofail $commit0 ' @@ -38,7 +38,7 @@ echo "$@" >>$GIT_DIR/update.args read x; printf %s "$x" >$GIT_DIR/update.stdin echo STDOUT update $1 echo STDERR update $1 >&2 -test "$1" = refs/heads/master || exit +test "$1" = refs/heads/main || exit EOF chmod u+x victim.git/hooks/update @@ -62,11 +62,11 @@ chmod u+x victim.git/hooks/post-update test_expect_success push ' test_must_fail git send-pack --force ./victim.git \ - master tofail >send.out 2>send.err + main tofail >send.out 2>send.err ' test_expect_success 'updated as expected' ' - test $(GIT_DIR=victim.git git rev-parse master) = $commit1 && + test $(GIT_DIR=victim.git git rev-parse main) = $commit1 && test $(GIT_DIR=victim.git git rev-parse tofail) = $commit1 ' @@ -82,24 +82,24 @@ test_expect_success 'hooks ran' ' ' test_expect_success 'pre-receive hook input' ' - (echo $commit0 $commit1 refs/heads/master && + (echo $commit0 $commit1 refs/heads/main && echo $commit1 $commit0 refs/heads/tofail ) | test_cmp - victim.git/pre-receive.stdin ' test_expect_success 'update hook arguments' ' - (echo refs/heads/master $commit0 $commit1 && + (echo refs/heads/main $commit0 $commit1 && echo refs/heads/tofail $commit1 $commit0 ) | test_cmp - victim.git/update.args ' test_expect_success 'post-receive hook input' ' - echo $commit0 $commit1 refs/heads/master | + echo $commit0 $commit1 refs/heads/main | test_cmp - victim.git/post-receive.stdin ' test_expect_success 'post-update hook arguments' ' - echo refs/heads/master | + echo refs/heads/main | test_cmp - victim.git/post-update.args ' @@ -120,8 +120,8 @@ test_expect_success 'send-pack produced no output' ' cat <<EOF >expect remote: STDOUT pre-receive remote: STDERR pre-receive -remote: STDOUT update refs/heads/master -remote: STDERR update refs/heads/master +remote: STDOUT update refs/heads/main +remote: STDERR update refs/heads/main remote: STDOUT update refs/heads/tofail remote: STDERR update refs/heads/tofail remote: error: hook declined to update refs/heads/tofail @@ -143,7 +143,7 @@ test_expect_success 'pre-receive hook that forgets to read its input' ' for v in $(test_seq 100 999) do - git branch branch_$v master || return + git branch branch_$v main || return done && git push ./victim.git "+refs/heads/*:refs/heads/*" ' diff --git a/t/t5402-post-merge-hook.sh b/t/t5402-post-merge-hook.sh index 4aeea8f5b7..3e5e19c719 100755 --- a/t/t5402-post-merge-hook.sh +++ b/t/t5402-post-merge-hook.sh @@ -4,6 +4,9 @@ # test_description='Test the post-merge hook.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -15,7 +18,7 @@ test_expect_success setup ' git update-index a && tree1=$(git write-tree) && commit1=$(echo modify | git commit-tree $tree1 -p $commit0) && - git update-ref refs/heads/master $commit0 && + git update-ref refs/heads/main $commit0 && git clone ./. clone1 && GIT_DIR=clone1/.git git update-index --add a && git clone ./. clone2 && diff --git a/t/t5403-post-checkout-hook.sh b/t/t5403-post-checkout-hook.sh index a39b3b5c78..1ec9e23be7 100755 --- a/t/t5403-post-checkout-hook.sh +++ b/t/t5403-post-checkout-hook.sh @@ -4,6 +4,9 @@ # test_description='Test the post-checkout hook.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -20,7 +23,7 @@ test_expect_success setup ' test_expect_success 'post-checkout receives the right arguments with HEAD unchanged ' ' test_when_finished "rm -f .git/post-checkout.args" && - git checkout master && + git checkout main && read old new flag <.git/post-checkout.args && test $old = $new && test $flag = 1 ' @@ -41,14 +44,14 @@ test_expect_success 'post-checkout receives the right args with HEAD changed ' ' test_expect_success 'post-checkout receives the right args when not switching branches ' ' test_when_finished "rm -f .git/post-checkout.args" && - git checkout master -- three.t && + git checkout main -- three.t && read old new flag <.git/post-checkout.args && test $old = $new && test $flag = 0 ' test_expect_success 'post-checkout is triggered on rebase' ' test_when_finished "rm -f .git/post-checkout.args" && - git checkout -b rebase-test master && + git checkout -b rebase-test main && rm -f .git/post-checkout.args && git rebase rebase-on-me && read old new flag <.git/post-checkout.args && diff --git a/t/t5404-tracking-branches.sh b/t/t5404-tracking-branches.sh index 2762f420bc..cc07889667 100755 --- a/t/t5404-tracking-branches.sh +++ b/t/t5404-tracking-branches.sh @@ -2,6 +2,9 @@ test_description='tracking branch update checks for git push' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -30,9 +33,9 @@ test_expect_success 'prepare pushable branches' ' git checkout -b b2 origin/b2 && echo aa-b2 >>file && git commit -a -m aa-b2 && - git checkout master && - echo aa-master >>file && - git commit -a -m aa-master + git checkout main && + echo aa-main >>file && + git commit -a -m aa-main ' test_expect_success 'mixed-success push returns error' ' @@ -40,7 +43,7 @@ test_expect_success 'mixed-success push returns error' ' ' test_expect_success 'check tracking branches updated correctly after push' ' - test "$(git rev-parse origin/master)" = "$(git rev-parse master)" + test "$(git rev-parse origin/main)" = "$(git rev-parse main)" ' test_expect_success 'check tracking branches not updated for failed refs' ' diff --git a/t/t5405-send-pack-rewind.sh b/t/t5405-send-pack-rewind.sh index 235fb7686a..11f03239a0 100755 --- a/t/t5405-send-pack-rewind.sh +++ b/t/t5405-send-pack-rewind.sh @@ -2,6 +2,9 @@ test_description='forced push to replace commit we do not have' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -13,7 +16,7 @@ test_expect_success setup ' mkdir another && ( cd another && git init && - git fetch --update-head-ok .. master:master + git fetch --update-head-ok .. main:main ) && >file2 && git add file2 && test_tick && @@ -25,7 +28,7 @@ test_expect_success 'non forced push should die not segfault' ' ( cd another && - test_must_fail git push .. master:master + test_must_fail git push .. main:main ) ' @@ -34,7 +37,7 @@ test_expect_success 'forced push should succeed' ' ( cd another && - git push .. +master:master + git push .. +main:main ) ' diff --git a/t/t5407-post-rewrite-hook.sh b/t/t5407-post-rewrite-hook.sh index 80750a817e..5bb23cc3a4 100755 --- a/t/t5407-post-rewrite-hook.sh +++ b/t/t5407-post-rewrite-hook.sh @@ -4,6 +4,9 @@ # test_description='Test the post-rewrite hook.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -14,7 +17,7 @@ test_expect_success 'setup' ' git checkout A^0 && test_commit E bar E && test_commit F foo F && - git checkout master + git checkout main ' mkdir .git/hooks diff --git a/t/t5410-receive-pack-alternates.sh b/t/t5410-receive-pack-alternates.sh index f00d0da860..0b28e4e452 100755 --- a/t/t5410-receive-pack-alternates.sh +++ b/t/t5410-receive-pack-alternates.sh @@ -2,14 +2,17 @@ test_description='git receive-pack with alternate ref filtering' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' test_commit base && git clone -s --bare . fork && - git checkout -b public/branch master && + git checkout -b public/branch main && test_commit public && - git checkout -b private/branch master && + git checkout -b private/branch main && test_commit private ' diff --git a/t/t5500-fetch-pack.sh b/t/t5500-fetch-pack.sh index 3557374312..1f4cc873a8 100755 --- a/t/t5500-fetch-pack.sh +++ b/t/t5500-fetch-pack.sh @@ -5,6 +5,9 @@ test_description='Testing multi_ack pack fetching' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Test fetch-pack/upload-pack pair. @@ -407,14 +410,14 @@ test_expect_success 'in_vain resetted upon ACK' ' rm -rf myserver myclient && git init myserver && - # Linked list of commits on master. The first is common; the rest are + # Linked list of commits on main. The first is common; the rest are # not. - test_commit -C myserver first_master_commit && + test_commit -C myserver first_main_commit && git clone "file://$(pwd)/myserver" myclient && test_commit_bulk -C myclient 255 && # Another linked list of commits on anotherbranch with no connection to - # master. The first is common; the rest are not. + # main. The first is common; the rest are not. git -C myserver checkout --orphan anotherbranch && test_commit -C myserver first_anotherbranch_commit && git -C myclient fetch origin anotherbranch:refs/heads/anotherbranch && @@ -422,14 +425,14 @@ test_expect_success 'in_vain resetted upon ACK' ' test_commit_bulk -C myclient 255 && # The new commit that the client wants to fetch. - git -C myserver checkout master && + git -C myserver checkout main && test_commit -C myserver to_fetch && # The client will send (as "have"s) all 256 commits in anotherbranch # first. The 256th commit is common between the client and the server, # and should reset in_vain. This allows negotiation to continue until # the client reports that first_anotherbranch_commit is common. - git -C myclient fetch --progress origin master 2>log && + git -C myclient fetch --progress origin main 2>log && test_i18ngrep "Total 3 " log ' @@ -637,7 +640,7 @@ test_expect_success 'shallow fetch with tags does not break the repository' ' mkdir repo2 && cd repo2 && git init && - git fetch --depth=2 ../.git master:branch && + git fetch --depth=2 ../.git main:branch && git fsck ) ' @@ -662,7 +665,7 @@ test_expect_success 'fetch-pack can fetch a raw sha1 that is advertised as a ref git init client && git -C client fetch-pack ../server \ - $(git -C server rev-parse refs/heads/master) + $(git -C server rev-parse refs/heads/main) ' test_expect_success 'fetch-pack can fetch a raw sha1 overlapping a named ref' ' @@ -688,7 +691,7 @@ test_expect_success 'fetch-pack cannot fetch a raw sha1 that is not advertised a # Some protocol versions (e.g. 2) support fetching # unadvertised objects, so restrict this test to v0. test_must_fail env GIT_TEST_PROTOCOL_VERSION=0 git -C client fetch-pack ../server \ - $(git -C server rev-parse refs/heads/master^) 2>err && + $(git -C server rev-parse refs/heads/main^) 2>err && test_i18ngrep "Server does not allow request for unadvertised object" err ' @@ -822,7 +825,7 @@ test_expect_success 'clone shallow since ...' ' test_expect_success 'fetch shallow since ...' ' git -C shallow11 fetch --shallow-since "200000000 +0700" origin && - git -C shallow11 log --pretty=tformat:%s origin/master >actual && + git -C shallow11 log --pretty=tformat:%s origin/main >actual && cat >expected <<-\EOF && three two @@ -863,7 +866,7 @@ test_expect_success 'shallow since with commit graph and already-seen commit' ' ( cd shallow-since-graph && test_commit base && - test_commit master && + test_commit main && git checkout -b other HEAD^ && test_commit other && git commit-graph write --reachable && @@ -874,7 +877,7 @@ test_expect_success 'shallow since with commit graph and already-seen commit' ' $(echo "object-format=$(test_oid algo)" | packetize) 00010013deepen-since 1 $(echo "want $(git rev-parse other)" | packetize) - $(echo "have $(git rev-parse master)" | packetize) + $(echo "have $(git rev-parse main)" | packetize) 0000 EOF ) @@ -896,7 +899,7 @@ test_expect_success 'shallow clone exclude tag two' ' test_expect_success 'fetch exclude tag one' ' git -C shallow12 fetch --shallow-exclude one origin && - git -C shallow12 log --pretty=tformat:%s origin/master >actual && + git -C shallow12 log --pretty=tformat:%s origin/main >actual && test_write_lines three two >expected && test_cmp expected actual ' @@ -910,11 +913,11 @@ test_expect_success 'fetching deepen' ' test_commit three && git clone --depth 1 "file://$(pwd)/." deepen && test_commit four && - git -C deepen log --pretty=tformat:%s master >actual && + git -C deepen log --pretty=tformat:%s main >actual && echo three >expected && test_cmp expected actual && git -C deepen fetch --deepen=1 && - git -C deepen log --pretty=tformat:%s origin/master >actual && + git -C deepen log --pretty=tformat:%s origin/main >actual && cat >expected <<-\EOF && four three diff --git a/t/t5501-fetch-push-alternates.sh b/t/t5501-fetch-push-alternates.sh index 1bc57ac03f..66f19a4ef2 100755 --- a/t/t5501-fetch-push-alternates.sh +++ b/t/t5501-fetch-push-alternates.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='fetch/push involving alternates' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh count_objects () { @@ -45,7 +48,7 @@ test_expect_success setup ' test_expect_success 'pushing into a repository with the same alternate' ' ( cd one && - git push ../receiver master:refs/heads/it + git push ../receiver main:refs/heads/it ) && ( cd receiver && @@ -57,7 +60,7 @@ test_expect_success 'pushing into a repository with the same alternate' ' test_expect_success 'fetching from a repository with the same alternate' ' ( cd fetcher && - git fetch ../one master:refs/heads/it && + git fetch ../one main:refs/heads/it && count_objects >../fetcher.count ) && test_cmp one.count fetcher.count diff --git a/t/t5502-quickfetch.sh b/t/t5502-quickfetch.sh index 7a46cbdbe6..8c05c7715b 100755 --- a/t/t5502-quickfetch.sh +++ b/t/t5502-quickfetch.sh @@ -2,6 +2,9 @@ test_description='test quickfetch from local' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -108,14 +111,14 @@ test_expect_success 'quickfetch should not copy from alternate' ' q }" ) ) && - origin_master=$( ( + origin_main=$( ( cd quickclone && - git rev-parse origin/master + git rev-parse origin/main ) ) && echo "loose objects: $obj_cnt, packfiles: $pck_cnt" && test $obj_cnt -eq 0 && test $pck_cnt -eq 0 && - test z$origin_master = z$(git rev-parse master) + test z$origin_main = z$(git rev-parse main) ' diff --git a/t/t5503-tagfollow.sh b/t/t5503-tagfollow.sh index 6041a4dd32..195fc64dd4 100755 --- a/t/t5503-tagfollow.sh +++ b/t/t5503-tagfollow.sh @@ -2,6 +2,9 @@ test_description='test automatic tag following' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # End state of the repository: @@ -11,7 +14,7 @@ test_description='test automatic tag following' # L - A ------ O ------ B # \ \ \ # \ C - origin/cat \ -# origin/master master +# origin/main main test_expect_success setup ' test_tick && @@ -57,7 +60,7 @@ test_expect_success 'fetch A (new commit : 1 connection)' ' ( cd cloned && GIT_TRACE_PACKET=$UPATH git fetch && - test $A = $(git rev-parse --verify origin/master) + test $A = $(git rev-parse --verify origin/main) ) && get_needs $U >actual && test_cmp expect actual @@ -72,7 +75,7 @@ test_expect_success "create tag T on A, create C on branch cat" ' git add file && git commit -m C && C=$(git rev-parse --verify HEAD) && - git checkout master + git checkout main ' test_expect_success 'setup expect' ' @@ -123,7 +126,7 @@ test_expect_success 'fetch B, S (commit and tag : 1 connection)' ' ( cd cloned && GIT_TRACE_PACKET=$UPATH git fetch && - test $B = $(git rev-parse --verify origin/master) && + test $B = $(git rev-parse --verify origin/main) && test $B = $(git rev-parse --verify tag2^0) && test $S = $(git rev-parse --verify tag2) ) && @@ -138,7 +141,7 @@ want $S EOF ' -test_expect_success 'new clone fetch master and tags' ' +test_expect_success 'new clone fetch main and tags' ' test_might_fail git branch -D cat && rm -f $U && ( @@ -147,7 +150,7 @@ test_expect_success 'new clone fetch master and tags' ' git init && git remote add origin .. && GIT_TRACE_PACKET=$UPATH git fetch && - test $B = $(git rev-parse --verify origin/master) && + test $B = $(git rev-parse --verify origin/main) && test $S = $(git rev-parse --verify tag2) && test $B = $(git rev-parse --verify tag2^0) && test $T = $(git rev-parse --verify tag1) && diff --git a/t/t5504-fetch-receive-strict.sh b/t/t5504-fetch-receive-strict.sh index 1a16ac4c0d..6e5a9c20e7 100755 --- a/t/t5504-fetch-receive-strict.sh +++ b/t/t5504-fetch-receive-strict.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='fetch/receive strict mode' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup and inject "corrupt or missing" object' ' @@ -25,7 +28,7 @@ test_expect_success 'fetch without strict' ' cd dst && git config fetch.fsckobjects false && git config transfer.fsckobjects false && - test_must_fail git fetch ../.git master + test_must_fail git fetch ../.git main ) ' @@ -36,7 +39,7 @@ test_expect_success 'fetch with !fetch.fsckobjects' ' cd dst && git config fetch.fsckobjects false && git config transfer.fsckobjects true && - test_must_fail git fetch ../.git master + test_must_fail git fetch ../.git main ) ' @@ -47,7 +50,7 @@ test_expect_success 'fetch with fetch.fsckobjects' ' cd dst && git config fetch.fsckobjects true && git config transfer.fsckobjects false && - test_must_fail git fetch ../.git master + test_must_fail git fetch ../.git main ) ' @@ -57,13 +60,13 @@ test_expect_success 'fetch with transfer.fsckobjects' ' ( cd dst && git config transfer.fsckobjects true && - test_must_fail git fetch ../.git master + test_must_fail git fetch ../.git main ) ' cat >exp <<EOF To dst -! refs/heads/master:refs/heads/test [remote rejected] (missing necessary objects) +! refs/heads/main:refs/heads/test [remote rejected] (missing necessary objects) Done EOF @@ -75,7 +78,7 @@ test_expect_success 'push without strict' ' git config fetch.fsckobjects false && git config transfer.fsckobjects false ) && - test_must_fail git push --porcelain dst master:refs/heads/test >act && + test_must_fail git push --porcelain dst main:refs/heads/test >act && test_cmp exp act ' @@ -87,13 +90,13 @@ test_expect_success 'push with !receive.fsckobjects' ' git config receive.fsckobjects false && git config transfer.fsckobjects true ) && - test_must_fail git push --porcelain dst master:refs/heads/test >act && + test_must_fail git push --porcelain dst main:refs/heads/test >act && test_cmp exp act ' cat >exp <<EOF To dst -! refs/heads/master:refs/heads/test [remote rejected] (unpacker error) +! refs/heads/main:refs/heads/test [remote rejected] (unpacker error) EOF test_expect_success 'push with receive.fsckobjects' ' @@ -104,7 +107,7 @@ test_expect_success 'push with receive.fsckobjects' ' git config receive.fsckobjects true && git config transfer.fsckobjects false ) && - test_must_fail git push --porcelain dst master:refs/heads/test >act && + test_must_fail git push --porcelain dst main:refs/heads/test >act && test_cmp exp act ' @@ -115,7 +118,7 @@ test_expect_success 'push with transfer.fsckobjects' ' cd dst && git config transfer.fsckobjects true ) && - test_must_fail git push --porcelain dst master:refs/heads/test >act && + test_must_fail git push --porcelain dst main:refs/heads/test >act && test_cmp exp act ' diff --git a/t/t5505-remote.sh b/t/t5505-remote.sh index ecadf02d64..045398b94e 100755 --- a/t/t5505-remote.sh +++ b/t/t5505-remote.sh @@ -2,6 +2,9 @@ test_description='git remote porcelain-ish' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh setup_repository () { diff --git a/t/t5506-remote-groups.sh b/t/t5506-remote-groups.sh index 83d5558c0e..8f150c0793 100755 --- a/t/t5506-remote-groups.sh +++ b/t/t5506-remote-groups.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git remote group handling' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh mark() { @@ -31,8 +34,8 @@ repo_fetched() { test_expect_success 'setup' ' mkdir one && (cd one && git init) && mkdir two && (cd two && git init) && - git remote add -m master one one && - git remote add -m master two two + git remote add -m main one one && + git remote add -m main two two ' test_expect_success 'no group updates all' ' diff --git a/t/t5509-fetch-push-namespaces.sh b/t/t5509-fetch-push-namespaces.sh index a67f792adf..31553b48df 100755 --- a/t/t5509-fetch-push-namespaces.sh +++ b/t/t5509-fetch-push-namespaces.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='fetch/push involving ref namespaces' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -27,9 +30,9 @@ test_expect_success setup ' test_expect_success 'pushing into a repository using a ref namespace' ' ( cd original && - git push pushee-namespaced master && + git push pushee-namespaced main && git ls-remote pushee-namespaced >actual && - printf "$commit1\trefs/heads/master\n" >expected && + printf "$commit1\trefs/heads/main\n" >expected && test_cmp expected actual && git push pushee-namespaced --tags && git ls-remote pushee-namespaced >actual && @@ -56,7 +59,7 @@ test_expect_success 'pulling from a repository using a ref namespace' ' cd puller && git remote add -f pushee-namespaced "ext::git --namespace=namespace %s ../pushee" && git for-each-ref refs/ >actual && - printf "$commit1 commit\trefs/remotes/pushee-namespaced/master\n" >expected && + printf "$commit1 commit\trefs/remotes/pushee-namespaced/main\n" >expected && printf "$commit0 commit\trefs/tags/0\n" >>expected && printf "$commit1 commit\trefs/tags/1\n" >>expected && test_cmp expected actual @@ -76,7 +79,7 @@ test_expect_success 'mirroring a repository using a ref namespace' ' ( cd mirror && git for-each-ref refs/ >actual && - printf "$commit1 commit\trefs/namespaces/namespace/refs/heads/master\n" >expected && + printf "$commit1 commit\trefs/namespaces/namespace/refs/heads/main\n" >expected && printf "$commit0 commit\trefs/namespaces/namespace/refs/tags/0\n" >>expected && printf "$commit1 commit\trefs/namespaces/namespace/refs/tags/1\n" >>expected && test_cmp expected actual @@ -87,7 +90,7 @@ test_expect_success 'hide namespaced refs with transfer.hideRefs' ' GIT_NAMESPACE=namespace \ git -C pushee -c transfer.hideRefs=refs/tags \ ls-remote "ext::git %s ." >actual && - printf "$commit1\trefs/heads/master\n" >expected && + printf "$commit1\trefs/heads/main\n" >expected && test_cmp expected actual ' @@ -95,7 +98,7 @@ test_expect_success 'check that transfer.hideRefs does not match unstripped refs GIT_NAMESPACE=namespace \ git -C pushee -c transfer.hideRefs=refs/namespaces/namespace/refs/tags \ ls-remote "ext::git %s ." >actual && - printf "$commit1\trefs/heads/master\n" >expected && + printf "$commit1\trefs/heads/main\n" >expected && printf "$commit0\trefs/tags/0\n" >>expected && printf "$commit1\trefs/tags/1\n" >>expected && test_cmp expected actual @@ -105,23 +108,23 @@ test_expect_success 'hide full refs with transfer.hideRefs' ' GIT_NAMESPACE=namespace \ git -C pushee -c transfer.hideRefs="^refs/namespaces/namespace/refs/tags" \ ls-remote "ext::git %s ." >actual && - printf "$commit1\trefs/heads/master\n" >expected && + printf "$commit1\trefs/heads/main\n" >expected && test_cmp expected actual ' test_expect_success 'try to update a hidden ref' ' - test_config -C pushee transfer.hideRefs refs/heads/master && - test_must_fail git -C original push pushee-namespaced master + test_config -C pushee transfer.hideRefs refs/heads/main && + test_must_fail git -C original push pushee-namespaced main ' test_expect_success 'try to update a ref that is not hidden' ' - test_config -C pushee transfer.hideRefs refs/namespaces/namespace/refs/heads/master && - git -C original push pushee-namespaced master + test_config -C pushee transfer.hideRefs refs/namespaces/namespace/refs/heads/main && + git -C original push pushee-namespaced main ' test_expect_success 'try to update a hidden full ref' ' - test_config -C pushee transfer.hideRefs "^refs/namespaces/namespace/refs/heads/master" && - test_must_fail git -C original push pushee-namespaced master + test_config -C pushee transfer.hideRefs "^refs/namespaces/namespace/refs/heads/main" && + test_must_fail git -C original push pushee-namespaced main ' test_expect_success 'set up ambiguous HEAD' ' @@ -157,9 +160,9 @@ test_expect_success 'denyCurrentBranch and unborn branch with ref namespace' ' cd original && git init unborn && git remote add unborn-namespaced "ext::git --namespace=namespace %s unborn" && - test_must_fail git push unborn-namespaced HEAD:master && + test_must_fail git push unborn-namespaced HEAD:main && git -C unborn config receive.denyCurrentBranch updateInstead && - git push unborn-namespaced HEAD:master + git push unborn-namespaced HEAD:main ) ' diff --git a/t/t5510-fetch.sh b/t/t5510-fetch.sh index 2013051a64..42f5503004 100755 --- a/t/t5510-fetch.sh +++ b/t/t5510-fetch.sh @@ -5,23 +5,14 @@ test_description='Per branch config variables affects "git fetch". ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh +. "$TEST_DIRECTORY"/test-bundle-functions.sh D=$(pwd) -test_bundle_object_count () { - git verify-pack -v "$1" >verify.out && - test "$2" = $(grep "^$OID_REGEX " verify.out | wc -l) -} - -convert_bundle_to_pack () { - while read x && test -n "$x" - do - :; - done - cat -} - test_expect_success setup ' echo >file original && git add file && @@ -176,6 +167,174 @@ test_expect_success 'fetch --prune --tags with refspec prunes based on refspec' git rev-parse sometag ' +test_expect_success 'fetch --atomic works with a single branch' ' + test_when_finished "rm -rf \"$D\"/atomic" && + + cd "$D" && + git clone . atomic && + git branch atomic-branch && + oid=$(git rev-parse atomic-branch) && + echo "$oid" >expected && + + git -C atomic fetch --atomic origin && + git -C atomic rev-parse origin/atomic-branch >actual && + test_cmp expected actual && + test $oid = "$(git -C atomic rev-parse --verify FETCH_HEAD)" +' + +test_expect_success 'fetch --atomic works with multiple branches' ' + test_when_finished "rm -rf \"$D\"/atomic" && + + cd "$D" && + git clone . atomic && + git branch atomic-branch-1 && + git branch atomic-branch-2 && + git branch atomic-branch-3 && + git rev-parse refs/heads/atomic-branch-1 refs/heads/atomic-branch-2 refs/heads/atomic-branch-3 >actual && + + git -C atomic fetch --atomic origin && + git -C atomic rev-parse refs/remotes/origin/atomic-branch-1 refs/remotes/origin/atomic-branch-2 refs/remotes/origin/atomic-branch-3 >expected && + test_cmp expected actual +' + +test_expect_success 'fetch --atomic works with mixed branches and tags' ' + test_when_finished "rm -rf \"$D\"/atomic" && + + cd "$D" && + git clone . atomic && + git branch atomic-mixed-branch && + git tag atomic-mixed-tag && + git rev-parse refs/heads/atomic-mixed-branch refs/tags/atomic-mixed-tag >actual && + + git -C atomic fetch --tags --atomic origin && + git -C atomic rev-parse refs/remotes/origin/atomic-mixed-branch refs/tags/atomic-mixed-tag >expected && + test_cmp expected actual +' + +test_expect_success 'fetch --atomic prunes references' ' + test_when_finished "rm -rf \"$D\"/atomic" && + + cd "$D" && + git branch atomic-prune-delete && + git clone . atomic && + git branch --delete atomic-prune-delete && + git branch atomic-prune-create && + git rev-parse refs/heads/atomic-prune-create >actual && + + git -C atomic fetch --prune --atomic origin && + test_must_fail git -C atomic rev-parse refs/remotes/origin/atomic-prune-delete && + git -C atomic rev-parse refs/remotes/origin/atomic-prune-create >expected && + test_cmp expected actual +' + +test_expect_success 'fetch --atomic aborts with non-fast-forward update' ' + test_when_finished "rm -rf \"$D\"/atomic" && + + cd "$D" && + git branch atomic-non-ff && + git clone . atomic && + git rev-parse HEAD >actual && + + git branch atomic-new-branch && + parent_commit=$(git rev-parse atomic-non-ff~) && + git update-ref refs/heads/atomic-non-ff $parent_commit && + + test_must_fail git -C atomic fetch --atomic origin refs/heads/*:refs/remotes/origin/* && + test_must_fail git -C atomic rev-parse refs/remotes/origin/atomic-new-branch && + git -C atomic rev-parse refs/remotes/origin/atomic-non-ff >expected && + test_cmp expected actual && + test_must_be_empty atomic/.git/FETCH_HEAD +' + +test_expect_success 'fetch --atomic executes a single reference transaction only' ' + test_when_finished "rm -rf \"$D\"/atomic" && + + cd "$D" && + git clone . atomic && + git branch atomic-hooks-1 && + git branch atomic-hooks-2 && + head_oid=$(git rev-parse HEAD) && + + cat >expected <<-EOF && + prepared + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-1 + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-2 + committed + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-1 + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-2 + EOF + + rm -f atomic/actual && + write_script atomic/.git/hooks/reference-transaction <<-\EOF && + ( echo "$*" && cat ) >>actual + EOF + + git -C atomic fetch --atomic origin && + test_cmp expected atomic/actual +' + +test_expect_success 'fetch --atomic aborts all reference updates if hook aborts' ' + test_when_finished "rm -rf \"$D\"/atomic" && + + cd "$D" && + git clone . atomic && + git branch atomic-hooks-abort-1 && + git branch atomic-hooks-abort-2 && + git branch atomic-hooks-abort-3 && + git tag atomic-hooks-abort && + head_oid=$(git rev-parse HEAD) && + + cat >expected <<-EOF && + prepared + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-abort-1 + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-abort-2 + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-abort-3 + $ZERO_OID $head_oid refs/tags/atomic-hooks-abort + aborted + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-abort-1 + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-abort-2 + $ZERO_OID $head_oid refs/remotes/origin/atomic-hooks-abort-3 + $ZERO_OID $head_oid refs/tags/atomic-hooks-abort + EOF + + rm -f atomic/actual && + write_script atomic/.git/hooks/reference-transaction <<-\EOF && + ( echo "$*" && cat ) >>actual + exit 1 + EOF + + git -C atomic for-each-ref >expected-refs && + test_must_fail git -C atomic fetch --tags --atomic origin && + git -C atomic for-each-ref >actual-refs && + test_cmp expected-refs actual-refs && + test_must_be_empty atomic/.git/FETCH_HEAD +' + +test_expect_success 'fetch --atomic --append appends to FETCH_HEAD' ' + test_when_finished "rm -rf \"$D\"/atomic" && + + cd "$D" && + git clone . atomic && + oid=$(git rev-parse HEAD) && + + git branch atomic-fetch-head-1 && + git -C atomic fetch --atomic origin atomic-fetch-head-1 && + test_line_count = 1 atomic/.git/FETCH_HEAD && + + git branch atomic-fetch-head-2 && + git -C atomic fetch --atomic --append origin atomic-fetch-head-2 && + test_line_count = 2 atomic/.git/FETCH_HEAD && + cp atomic/.git/FETCH_HEAD expected && + + write_script atomic/.git/hooks/reference-transaction <<-\EOF && + exit 1 + EOF + + git branch atomic-fetch-head-3 && + test_must_fail git -C atomic fetch --atomic --append origin atomic-fetch-head-3 && + test_cmp expected atomic/.git/FETCH_HEAD +' + test_expect_success '--refmap="" ignores configured refspec' ' cd "$TRASH_DIRECTORY" && git clone "$D" remote-refs && @@ -312,9 +471,7 @@ test_expect_success 'unbundle 1' ' test_expect_success 'bundle 1 has only 3 files ' ' cd "$D" && - convert_bundle_to_pack <bundle1 >bundle.pack && - git index-pack bundle.pack && - test_bundle_object_count bundle.pack 3 + test_bundle_object_count bundle1 3 ' test_expect_success 'unbundle 2' ' @@ -329,9 +486,7 @@ test_expect_success 'bundle does not prerequisite objects' ' git add file2 && git commit -m add.file2 file2 && git bundle create bundle3 -1 HEAD && - convert_bundle_to_pack <bundle3 >bundle.pack && - git index-pack bundle.pack && - test_bundle_object_count bundle.pack 3 + test_bundle_object_count bundle3 3 ' test_expect_success 'bundle should be able to create a full history' ' @@ -884,9 +1039,7 @@ test_expect_success 'all boundary commits are excluded' ' git merge otherside && ad=$(git log --no-walk --format=%ad HEAD) && git bundle create twoside-boundary.bdl main --since="$ad" && - convert_bundle_to_pack <twoside-boundary.bdl >twoside-boundary.pack && - pack=$(git index-pack --fix-thin --stdin <twoside-boundary.pack) && - test_bundle_object_count .git/objects/pack/pack-${pack##pack }.pack 3 + test_bundle_object_count --thin twoside-boundary.bdl 3 ' test_expect_success 'fetch --prune prints the remotes url' ' diff --git a/t/t5511-refspec.sh b/t/t5511-refspec.sh index f808649de4..be025b90f9 100755 --- a/t/t5511-refspec.sh +++ b/t/t5511-refspec.sh @@ -33,7 +33,7 @@ test_refspec fetch '::' invalid test_refspec push 'refs/heads/*:refs/remotes/frotz/*' test_refspec push 'refs/heads/*:refs/remotes/frotz' invalid test_refspec push 'refs/heads:refs/remotes/frotz/*' invalid -test_refspec push 'refs/heads/master:refs/remotes/frotz/xyzzy' +test_refspec push 'refs/heads/main:refs/remotes/frotz/xyzzy' # These have invalid LHS, but we do not have a formal "valid sha-1 @@ -41,18 +41,18 @@ test_refspec push 'refs/heads/master:refs/remotes/frotz/xyzzy' # code. They will be caught downstream anyway, but we may want to # have tighter check later... -: test_refspec push 'refs/heads/master::refs/remotes/frotz/xyzzy' invalid +: test_refspec push 'refs/heads/main::refs/remotes/frotz/xyzzy' invalid : test_refspec push 'refs/heads/maste :refs/remotes/frotz/xyzzy' invalid test_refspec fetch 'refs/heads/*:refs/remotes/frotz/*' test_refspec fetch 'refs/heads/*:refs/remotes/frotz' invalid test_refspec fetch 'refs/heads:refs/remotes/frotz/*' invalid -test_refspec fetch 'refs/heads/master:refs/remotes/frotz/xyzzy' -test_refspec fetch 'refs/heads/master::refs/remotes/frotz/xyzzy' invalid +test_refspec fetch 'refs/heads/main:refs/remotes/frotz/xyzzy' +test_refspec fetch 'refs/heads/main::refs/remotes/frotz/xyzzy' invalid test_refspec fetch 'refs/heads/maste :refs/remotes/frotz/xyzzy' invalid -test_refspec push 'master~1:refs/remotes/frotz/backup' -test_refspec fetch 'master~1:refs/remotes/frotz/backup' invalid +test_refspec push 'main~1:refs/remotes/frotz/backup' +test_refspec fetch 'main~1:refs/remotes/frotz/backup' invalid test_refspec push 'HEAD~4:refs/remotes/frotz/new' test_refspec fetch 'HEAD~4:refs/remotes/frotz/new' invalid diff --git a/t/t5512-ls-remote.sh b/t/t5512-ls-remote.sh index e98c3a0174..4a568a2398 100755 --- a/t/t5512-ls-remote.sh +++ b/t/t5512-ls-remote.sh @@ -2,6 +2,9 @@ test_description='git ls-remote' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh generate_references () { @@ -118,7 +121,7 @@ test_expect_success 'use branch.<name>.remote if possible' ' echo "From $URL" >exp_err && git remote add other $URL && - git config branch.master.remote other && + git config branch.main.remote other && git ls-remote 2>actual_err >actual && test_cmp exp_err actual_err && @@ -129,9 +132,9 @@ test_expect_success 'confuses pattern as remote when no remote specified' ' if test_have_prereq MINGW then # Windows does not like asterisks in pathname - does_not_exist=master + does_not_exist=main else - does_not_exist="refs*master" + does_not_exist="refs*main" fi && cat >exp <<-EOF && fatal: '\''$does_not_exist'\'' does not appear to be a git repository @@ -144,7 +147,7 @@ test_expect_success 'confuses pattern as remote when no remote specified' ' # Do not expect "git ls-remote <pattern>" to work; ls-remote needs # <remote> if you want to feed <pattern>, just like you cannot say # fetch <branch>. - # We could just as easily have used "master"; the "*" emphasizes its + # We could just as easily have used "main"; the "*" emphasizes its # role as a pattern. test_must_fail git ls-remote "$does_not_exist" >actual 2>&1 && test_i18ncmp exp actual @@ -217,14 +220,14 @@ test_expect_success 'protocol v2 supports hiderefs' ' test_expect_success 'ls-remote --symref' ' git fetch origin && - echo "ref: refs/heads/master HEAD" >expect && + echo "ref: refs/heads/main HEAD" >expect && generate_references \ HEAD \ - refs/heads/master >>expect && + refs/heads/main >>expect && oid=$(git rev-parse HEAD) && echo "$oid refs/remotes/origin/HEAD" >>expect && generate_references \ - refs/remotes/origin/master \ + refs/remotes/origin/main \ refs/tags/mark \ refs/tags/mark1.1 \ refs/tags/mark1.10 \ @@ -238,7 +241,7 @@ test_expect_success 'ls-remote --symref' ' test_expect_success 'ls-remote with filtered symref (refname)' ' rev=$(git rev-parse HEAD) && cat >expect <<-EOF && - ref: refs/heads/master HEAD + ref: refs/heads/main HEAD $rev HEAD EOF # Protocol v2 supports sending symrefs for refs other than HEAD, so use @@ -252,7 +255,7 @@ test_expect_failure 'ls-remote with filtered symref (--heads)' ' cat >expect <<-EOF && ref: refs/tags/mark refs/heads/foo $rev refs/heads/foo - $rev refs/heads/master + $rev refs/heads/main EOF # Protocol v2 supports sending symrefs for refs other than HEAD, so use # protocol v0 here. @@ -263,7 +266,7 @@ test_expect_failure 'ls-remote with filtered symref (--heads)' ' test_expect_success 'ls-remote --symref omits filtered-out matches' ' cat >expect <<-EOF && $rev refs/heads/foo - $rev refs/heads/master + $rev refs/heads/main EOF # Protocol v2 supports sending symrefs for refs other than HEAD, so use # protocol v0 here. @@ -330,10 +333,10 @@ test_expect_success 'ls-remote --sort fails gracefully outside repository' ' test_expect_success 'ls-remote patterns work with all protocol versions' ' git for-each-ref --format="%(objectname) %(refname)" \ - refs/heads/master refs/remotes/origin/master >expect && - git -c protocol.version=1 ls-remote . master >actual.v1 && + refs/heads/main refs/remotes/origin/main >expect && + git -c protocol.version=1 ls-remote . main >actual.v1 && test_cmp expect actual.v1 && - git -c protocol.version=2 ls-remote . master >actual.v2 && + git -c protocol.version=2 ls-remote . main >actual.v2 && test_cmp expect actual.v2 ' diff --git a/t/t5514-fetch-multiple.sh b/t/t5514-fetch-multiple.sh index bd202ec6f3..511ba3bd45 100755 --- a/t/t5514-fetch-multiple.sh +++ b/t/t5514-fetch-multiple.sh @@ -2,6 +2,9 @@ test_description='fetch --all works correctly' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh setup_repository () { @@ -17,7 +20,7 @@ setup_repository () { git add elif && test_tick && git commit -m "Second" && - git checkout master + git checkout main ) } @@ -32,16 +35,16 @@ test_expect_success setup ' ' cat > test/expect << EOF - one/master + one/main one/side - origin/HEAD -> origin/master - origin/master + origin/HEAD -> origin/main + origin/main origin/side three/another - three/master + three/main three/side two/another - two/master + two/main two/side EOF @@ -70,15 +73,15 @@ test_expect_success 'git fetch --all should continue if a remote has errors' ' test_expect_success 'git fetch --all does not allow non-option arguments' ' (cd test && test_must_fail git fetch --all origin && - test_must_fail git fetch --all origin master) + test_must_fail git fetch --all origin main) ' cat > expect << EOF - origin/HEAD -> origin/master - origin/master + origin/HEAD -> origin/main + origin/main origin/side three/another - three/master + three/main three/side EOF @@ -92,10 +95,10 @@ test_expect_success 'git fetch --multiple (but only one remote)' ' ' cat > expect << EOF - one/master + one/main one/side two/another - two/master + two/main two/side EOF @@ -133,13 +136,13 @@ test_expect_success 'git fetch --all (skipFetchAll)' ' ' cat > expect << EOF - one/master + one/main one/side three/another - three/master + three/main three/side two/another - two/master + two/main two/side EOF diff --git a/t/t5516-fetch-push.sh b/t/t5516-fetch-push.sh index 01004ff680..15262b4192 100755 --- a/t/t5516-fetch-push.sh +++ b/t/t5516-fetch-push.sh @@ -14,6 +14,9 @@ This test checks the following functionality: * reflogs ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh D=$(pwd) @@ -120,13 +123,13 @@ test_expect_success setup ' git add path1 && test_tick && git commit -a -m repo && - the_first_commit=$(git show-ref -s --verify refs/heads/master) && + the_first_commit=$(git show-ref -s --verify refs/heads/main) && >path2 && git add path2 && test_tick && git commit -a -m second && - the_commit=$(git show-ref -s --verify refs/heads/master) + the_commit=$(git show-ref -s --verify refs/heads/main) ' @@ -134,9 +137,9 @@ test_expect_success 'fetch without wildcard' ' mk_empty testrepo && ( cd testrepo && - git fetch .. refs/heads/master:refs/remotes/origin/master && + git fetch .. refs/heads/main:refs/remotes/origin/main && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) @@ -150,7 +153,7 @@ test_expect_success 'fetch with wildcard' ' git config remote.up.fetch "refs/heads/*:refs/remotes/origin/*" && git fetch up && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) @@ -166,7 +169,7 @@ test_expect_success 'fetch with insteadOf' ' git config remote.up.fetch "refs/heads/*:refs/remotes/origin/*" && git fetch up && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) @@ -182,7 +185,7 @@ test_expect_success 'fetch with pushInsteadOf (should not rewrite)' ' git config remote.up.fetch "refs/heads/*:refs/remotes/origin/*" && git fetch up && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) @@ -191,10 +194,10 @@ test_expect_success 'fetch with pushInsteadOf (should not rewrite)' ' test_expect_success 'push without wildcard' ' mk_empty testrepo && - git push testrepo refs/heads/master:refs/remotes/origin/master && + git push testrepo refs/heads/main:refs/remotes/origin/main && ( cd testrepo && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) @@ -206,7 +209,7 @@ test_expect_success 'push with wildcard' ' git push testrepo "refs/heads/*:refs/remotes/origin/*" && ( cd testrepo && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) @@ -216,10 +219,10 @@ test_expect_success 'push with insteadOf' ' mk_empty testrepo && TRASH="$(pwd)/" && test_config "url.$TRASH.insteadOf" trash/ && - git push trash/testrepo refs/heads/master:refs/remotes/origin/master && + git push trash/testrepo refs/heads/main:refs/remotes/origin/main && ( cd testrepo && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) @@ -229,10 +232,10 @@ test_expect_success 'push with pushInsteadOf' ' mk_empty testrepo && TRASH="$(pwd)/" && test_config "url.$TRASH.pushInsteadOf" trash/ && - git push trash/testrepo refs/heads/master:refs/remotes/origin/master && + git push trash/testrepo refs/heads/main:refs/remotes/origin/main && ( cd testrepo && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) @@ -244,10 +247,10 @@ test_expect_success 'push with pushInsteadOf and explicit pushurl (pushInsteadOf test_config "url.trash3/.pushInsteadOf" trash/wrong && test_config remote.r.url trash/wrong && test_config remote.r.pushurl "testrepo/" && - git push r refs/heads/master:refs/remotes/origin/master && + git push r refs/heads/main:refs/remotes/origin/main && ( cd testrepo && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) @@ -255,101 +258,101 @@ test_expect_success 'push with pushInsteadOf and explicit pushurl (pushInsteadOf test_expect_success 'push with matching heads' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && git push testrepo : && - check_push_result testrepo $the_commit heads/master + check_push_result testrepo $the_commit heads/main ' test_expect_success 'push with matching heads on the command line' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && git push testrepo : && - check_push_result testrepo $the_commit heads/master + check_push_result testrepo $the_commit heads/main ' test_expect_success 'failed (non-fast-forward) push with matching heads' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && git push testrepo : && git commit --amend -massaged && test_must_fail git push testrepo && - check_push_result testrepo $the_commit heads/master && + check_push_result testrepo $the_commit heads/main && git reset --hard $the_commit ' test_expect_success 'push --force with matching heads' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && git push testrepo : && git commit --amend -massaged && git push --force testrepo : && - ! check_push_result testrepo $the_commit heads/master && + ! check_push_result testrepo $the_commit heads/main && git reset --hard $the_commit ' test_expect_success 'push with matching heads and forced update' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && git push testrepo : && git commit --amend -massaged && git push testrepo +: && - ! check_push_result testrepo $the_commit heads/master && + ! check_push_result testrepo $the_commit heads/main && git reset --hard $the_commit ' test_expect_success 'push with no ambiguity (1)' ' - mk_test testrepo heads/master && - git push testrepo master:master && - check_push_result testrepo $the_commit heads/master + mk_test testrepo heads/main && + git push testrepo main:main && + check_push_result testrepo $the_commit heads/main ' test_expect_success 'push with no ambiguity (2)' ' - mk_test testrepo remotes/origin/master && - git push testrepo master:origin/master && - check_push_result testrepo $the_commit remotes/origin/master + mk_test testrepo remotes/origin/main && + git push testrepo main:origin/main && + check_push_result testrepo $the_commit remotes/origin/main ' test_expect_success 'push with colon-less refspec, no ambiguity' ' - mk_test testrepo heads/master heads/t/master && - git branch -f t/master master && - git push testrepo master && - check_push_result testrepo $the_commit heads/master && - check_push_result testrepo $the_first_commit heads/t/master + mk_test testrepo heads/main heads/t/main && + git branch -f t/main main && + git push testrepo main && + check_push_result testrepo $the_commit heads/main && + check_push_result testrepo $the_first_commit heads/t/main ' test_expect_success 'push with weak ambiguity (1)' ' - mk_test testrepo heads/master remotes/origin/master && - git push testrepo master:master && - check_push_result testrepo $the_commit heads/master && - check_push_result testrepo $the_first_commit remotes/origin/master + mk_test testrepo heads/main remotes/origin/main && + git push testrepo main:main && + check_push_result testrepo $the_commit heads/main && + check_push_result testrepo $the_first_commit remotes/origin/main ' test_expect_success 'push with weak ambiguity (2)' ' - mk_test testrepo heads/master remotes/origin/master remotes/another/master && - git push testrepo master:master && - check_push_result testrepo $the_commit heads/master && - check_push_result testrepo $the_first_commit remotes/origin/master remotes/another/master + mk_test testrepo heads/main remotes/origin/main remotes/another/main && + git push testrepo main:main && + check_push_result testrepo $the_commit heads/main && + check_push_result testrepo $the_first_commit remotes/origin/main remotes/another/main ' test_expect_success 'push with ambiguity' ' mk_test testrepo heads/frotz tags/frotz && - test_must_fail git push testrepo master:frotz && + test_must_fail git push testrepo main:frotz && check_push_result testrepo $the_first_commit heads/frotz tags/frotz ' @@ -357,7 +360,7 @@ test_expect_success 'push with ambiguity' ' test_expect_success 'push with colon-less refspec (1)' ' mk_test testrepo heads/frotz tags/frotz && - git branch -f frotz master && + git branch -f frotz main && git push testrepo frotz && check_push_result testrepo $the_commit heads/frotz && check_push_result testrepo $the_first_commit tags/frotz @@ -385,7 +388,7 @@ test_expect_success 'push with colon-less refspec (3)' ' then git tag -d frotz fi && - git branch -f frotz master && + git branch -f frotz main && git push testrepo frotz && check_push_result testrepo $the_commit heads/frotz && test 1 = $( cd testrepo && git show-ref | wc -l ) @@ -408,7 +411,7 @@ test_expect_success 'push with colon-less refspec (4)' ' test_expect_success 'push head with non-existent, incomplete dest' ' mk_test testrepo && - git push testrepo master:branch && + git push testrepo main:branch && check_push_result testrepo $the_commit heads/branch ' @@ -425,14 +428,14 @@ test_expect_success 'push tag with non-existent, incomplete dest' ' test_expect_success 'push sha1 with non-existent, incomplete dest' ' mk_test testrepo && - test_must_fail git push testrepo $(git rev-parse master):foo + test_must_fail git push testrepo $(git rev-parse main):foo ' test_expect_success 'push ref expression with non-existent, incomplete dest' ' mk_test testrepo && - test_must_fail git push testrepo master^:branch + test_must_fail git push testrepo main^:branch ' @@ -440,30 +443,26 @@ for head in HEAD @ do test_expect_success "push with $head" ' - - mk_test testrepo heads/master && - git checkout master && + mk_test testrepo heads/main && + git checkout main && git push testrepo $head && - check_push_result testrepo $the_commit heads/master - + check_push_result testrepo $the_commit heads/main ' test_expect_success "push with $head nonexisting at remote" ' - - mk_test testrepo heads/master && - git checkout -b local master && - test_when_finished "git checkout master; git branch -D local" && + mk_test testrepo heads/main && + git checkout -b local main && + test_when_finished "git checkout main; git branch -D local" && git push testrepo $head && check_push_result testrepo $the_commit heads/local ' test_expect_success "push with +$head" ' - - mk_test testrepo heads/master && - git checkout -b local master && - test_when_finished "git checkout master; git branch -D local" && - git push testrepo master local && - check_push_result testrepo $the_commit heads/master && + mk_test testrepo heads/main && + git checkout -b local main && + test_when_finished "git checkout main; git branch -D local" && + git push testrepo main local && + check_push_result testrepo $the_commit heads/main && check_push_result testrepo $the_commit heads/local && # Without force rewinding should fail @@ -474,22 +473,19 @@ do # With force rewinding should succeed git push testrepo +$head && check_push_result testrepo $the_first_commit heads/local - ' test_expect_success "push $head with non-existent, incomplete dest" ' - mk_test testrepo && - git checkout master && + git checkout main && git push testrepo $head:branch && check_push_result testrepo $the_commit heads/branch ' test_expect_success "push with config remote.*.push = $head" ' - mk_test testrepo heads/local && - git checkout master && + git checkout main && git branch -f local $the_commit && test_when_finished "git branch -D local" && ( @@ -499,168 +495,168 @@ do ) && test_config remote.there.url testrepo && test_config remote.there.push $head && - test_config branch.master.remote there && + test_config branch.main.remote there && git push && - check_push_result testrepo $the_commit heads/master && + check_push_result testrepo $the_commit heads/main && check_push_result testrepo $the_first_commit heads/local ' done test_expect_success 'push with remote.pushdefault' ' - mk_test up_repo heads/master && - mk_test down_repo heads/master && + mk_test up_repo heads/main && + mk_test down_repo heads/main && test_config remote.up.url up_repo && test_config remote.down.url down_repo && - test_config branch.master.remote up && + test_config branch.main.remote up && test_config remote.pushdefault down && test_config push.default matching && git push && - check_push_result up_repo $the_first_commit heads/master && - check_push_result down_repo $the_commit heads/master + check_push_result up_repo $the_first_commit heads/main && + check_push_result down_repo $the_commit heads/main ' test_expect_success 'push with config remote.*.pushurl' ' - mk_test testrepo heads/master && - git checkout master && + mk_test testrepo heads/main && + git checkout main && test_config remote.there.url test2repo && test_config remote.there.pushurl testrepo && git push there : && - check_push_result testrepo $the_commit heads/master + check_push_result testrepo $the_commit heads/main ' test_expect_success 'push with config branch.*.pushremote' ' - mk_test up_repo heads/master && - mk_test side_repo heads/master && - mk_test down_repo heads/master && + mk_test up_repo heads/main && + mk_test side_repo heads/main && + mk_test down_repo heads/main && test_config remote.up.url up_repo && test_config remote.pushdefault side_repo && test_config remote.down.url down_repo && - test_config branch.master.remote up && - test_config branch.master.pushremote down && + test_config branch.main.remote up && + test_config branch.main.pushremote down && test_config push.default matching && git push && - check_push_result up_repo $the_first_commit heads/master && - check_push_result side_repo $the_first_commit heads/master && - check_push_result down_repo $the_commit heads/master + check_push_result up_repo $the_first_commit heads/main && + check_push_result side_repo $the_first_commit heads/main && + check_push_result down_repo $the_commit heads/main ' test_expect_success 'branch.*.pushremote config order is irrelevant' ' - mk_test one_repo heads/master && - mk_test two_repo heads/master && + mk_test one_repo heads/main && + mk_test two_repo heads/main && test_config remote.one.url one_repo && test_config remote.two.url two_repo && - test_config branch.master.pushremote two_repo && + test_config branch.main.pushremote two_repo && test_config remote.pushdefault one_repo && test_config push.default matching && git push && - check_push_result one_repo $the_first_commit heads/master && - check_push_result two_repo $the_commit heads/master + check_push_result one_repo $the_first_commit heads/main && + check_push_result two_repo $the_commit heads/main ' test_expect_success 'push with dry-run' ' - mk_test testrepo heads/master && - old_commit=$(git -C testrepo show-ref -s --verify refs/heads/master) && + mk_test testrepo heads/main && + old_commit=$(git -C testrepo show-ref -s --verify refs/heads/main) && git push --dry-run testrepo : && - check_push_result testrepo $old_commit heads/master + check_push_result testrepo $old_commit heads/main ' test_expect_success 'push updates local refs' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && mk_child testrepo child && ( cd child && - git pull .. master && + git pull .. main && git push && - test $(git rev-parse master) = \ - $(git rev-parse remotes/origin/master) + test $(git rev-parse main) = \ + $(git rev-parse remotes/origin/main) ) ' test_expect_success 'push updates up-to-date local refs' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && mk_child testrepo child1 && mk_child testrepo child2 && - (cd child1 && git pull .. master && git push) && + (cd child1 && git pull .. main && git push) && ( cd child2 && - git pull ../child1 master && + git pull ../child1 main && git push && - test $(git rev-parse master) = \ - $(git rev-parse remotes/origin/master) + test $(git rev-parse main) = \ + $(git rev-parse remotes/origin/main) ) ' test_expect_success 'push preserves up-to-date packed refs' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && mk_child testrepo child && ( cd child && git push && - ! test -f .git/refs/remotes/origin/master + ! test -f .git/refs/remotes/origin/main ) ' test_expect_success 'push does not update local refs on failure' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && mk_child testrepo child && mkdir testrepo/.git/hooks && echo "#!/no/frobnication/today" >testrepo/.git/hooks/pre-receive && chmod +x testrepo/.git/hooks/pre-receive && ( cd child && - git pull .. master && + git pull .. main && test_must_fail git push && - test $(git rev-parse master) != \ - $(git rev-parse remotes/origin/master) + test $(git rev-parse main) != \ + $(git rev-parse remotes/origin/main) ) ' test_expect_success 'allow deleting an invalid remote ref' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && rm -f testrepo/.git/objects/??/* && - git push testrepo :refs/heads/master && - (cd testrepo && test_must_fail git rev-parse --verify refs/heads/master) + git push testrepo :refs/heads/main && + (cd testrepo && test_must_fail git rev-parse --verify refs/heads/main) ' test_expect_success 'pushing valid refs triggers post-receive and post-update hooks' ' - mk_test_with_hooks testrepo heads/master heads/next && - orgmaster=$(cd testrepo && git show-ref -s --verify refs/heads/master) && - newmaster=$(git show-ref -s --verify refs/heads/master) && + mk_test_with_hooks testrepo heads/main heads/next && + orgmain=$(cd testrepo && git show-ref -s --verify refs/heads/main) && + newmain=$(git show-ref -s --verify refs/heads/main) && orgnext=$(cd testrepo && git show-ref -s --verify refs/heads/next) && newnext=$ZERO_OID && - git push testrepo refs/heads/master:refs/heads/master :refs/heads/next && + git push testrepo refs/heads/main:refs/heads/main :refs/heads/next && ( cd testrepo/.git && cat >pre-receive.expect <<-EOF && - $orgmaster $newmaster refs/heads/master + $orgmain $newmain refs/heads/main $orgnext $newnext refs/heads/next EOF cat >update.expect <<-EOF && - refs/heads/master $orgmaster $newmaster + refs/heads/main $orgmain $newmain refs/heads/next $orgnext $newnext EOF cat >post-receive.expect <<-EOF && - $orgmaster $newmaster refs/heads/master + $orgmain $newmain refs/heads/main $orgnext $newnext refs/heads/next EOF cat >post-update.expect <<-EOF && - refs/heads/master + refs/heads/main refs/heads/next EOF @@ -672,25 +668,25 @@ test_expect_success 'pushing valid refs triggers post-receive and post-update ho ' test_expect_success 'deleting dangling ref triggers hooks with correct args' ' - mk_test_with_hooks testrepo heads/master && + mk_test_with_hooks testrepo heads/main && rm -f testrepo/.git/objects/??/* && - git push testrepo :refs/heads/master && + git push testrepo :refs/heads/main && ( cd testrepo/.git && cat >pre-receive.expect <<-EOF && - $ZERO_OID $ZERO_OID refs/heads/master + $ZERO_OID $ZERO_OID refs/heads/main EOF cat >update.expect <<-EOF && - refs/heads/master $ZERO_OID $ZERO_OID + refs/heads/main $ZERO_OID $ZERO_OID EOF cat >post-receive.expect <<-EOF && - $ZERO_OID $ZERO_OID refs/heads/master + $ZERO_OID $ZERO_OID refs/heads/main EOF cat >post-update.expect <<-EOF && - refs/heads/master + refs/heads/main EOF test_cmp pre-receive.expect pre-receive.actual && @@ -701,28 +697,28 @@ test_expect_success 'deleting dangling ref triggers hooks with correct args' ' ' test_expect_success 'deletion of a non-existent ref is not fed to post-receive and post-update hooks' ' - mk_test_with_hooks testrepo heads/master && - orgmaster=$(cd testrepo && git show-ref -s --verify refs/heads/master) && - newmaster=$(git show-ref -s --verify refs/heads/master) && - git push testrepo master :refs/heads/nonexistent && + mk_test_with_hooks testrepo heads/main && + orgmain=$(cd testrepo && git show-ref -s --verify refs/heads/main) && + newmain=$(git show-ref -s --verify refs/heads/main) && + git push testrepo main :refs/heads/nonexistent && ( cd testrepo/.git && cat >pre-receive.expect <<-EOF && - $orgmaster $newmaster refs/heads/master + $orgmain $newmain refs/heads/main $ZERO_OID $ZERO_OID refs/heads/nonexistent EOF cat >update.expect <<-EOF && - refs/heads/master $orgmaster $newmaster + refs/heads/main $orgmain $newmain refs/heads/nonexistent $ZERO_OID $ZERO_OID EOF cat >post-receive.expect <<-EOF && - $orgmaster $newmaster refs/heads/master + $orgmain $newmain refs/heads/main EOF cat >post-update.expect <<-EOF && - refs/heads/master + refs/heads/main EOF test_cmp pre-receive.expect pre-receive.actual && @@ -733,7 +729,7 @@ test_expect_success 'deletion of a non-existent ref is not fed to post-receive a ' test_expect_success 'deletion of a non-existent ref alone does trigger post-receive and post-update hooks' ' - mk_test_with_hooks testrepo heads/master && + mk_test_with_hooks testrepo heads/main && git push testrepo :refs/heads/nonexistent && ( cd testrepo/.git && @@ -753,40 +749,40 @@ test_expect_success 'deletion of a non-existent ref alone does trigger post-rece ' test_expect_success 'mixed ref updates, deletes, invalid deletes trigger hooks with correct input' ' - mk_test_with_hooks testrepo heads/master heads/next heads/seen && - orgmaster=$(cd testrepo && git show-ref -s --verify refs/heads/master) && - newmaster=$(git show-ref -s --verify refs/heads/master) && + mk_test_with_hooks testrepo heads/main heads/next heads/seen && + orgmain=$(cd testrepo && git show-ref -s --verify refs/heads/main) && + newmain=$(git show-ref -s --verify refs/heads/main) && orgnext=$(cd testrepo && git show-ref -s --verify refs/heads/next) && newnext=$ZERO_OID && orgseen=$(cd testrepo && git show-ref -s --verify refs/heads/seen) && - newseen=$(git show-ref -s --verify refs/heads/master) && - git push testrepo refs/heads/master:refs/heads/master \ - refs/heads/master:refs/heads/seen :refs/heads/next \ + newseen=$(git show-ref -s --verify refs/heads/main) && + git push testrepo refs/heads/main:refs/heads/main \ + refs/heads/main:refs/heads/seen :refs/heads/next \ :refs/heads/nonexistent && ( cd testrepo/.git && cat >pre-receive.expect <<-EOF && - $orgmaster $newmaster refs/heads/master + $orgmain $newmain refs/heads/main $orgnext $newnext refs/heads/next $orgseen $newseen refs/heads/seen $ZERO_OID $ZERO_OID refs/heads/nonexistent EOF cat >update.expect <<-EOF && - refs/heads/master $orgmaster $newmaster + refs/heads/main $orgmain $newmain refs/heads/next $orgnext $newnext refs/heads/seen $orgseen $newseen refs/heads/nonexistent $ZERO_OID $ZERO_OID EOF cat >post-receive.expect <<-EOF && - $orgmaster $newmaster refs/heads/master + $orgmain $newmain refs/heads/main $orgnext $newnext refs/heads/next $orgseen $newseen refs/heads/seen EOF cat >post-update.expect <<-EOF && - refs/heads/master + refs/heads/main refs/heads/next refs/heads/seen EOF @@ -799,15 +795,15 @@ test_expect_success 'mixed ref updates, deletes, invalid deletes trigger hooks w ' test_expect_success 'allow deleting a ref using --delete' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && (cd testrepo && git config receive.denyDeleteCurrent warn) && - git push testrepo --delete master && - (cd testrepo && test_must_fail git rev-parse --verify refs/heads/master) + git push testrepo --delete main && + (cd testrepo && test_must_fail git rev-parse --verify refs/heads/main) ' test_expect_success 'allow deleting a tag using --delete' ' - mk_test testrepo heads/master && - git tag -a -m dummy_message deltag heads/master && + mk_test testrepo heads/main && + git tag -a -m dummy_message deltag heads/main && git push testrepo --tags && (cd testrepo && git rev-parse --verify -q refs/tags/deltag) && git push testrepo --delete tag deltag && @@ -815,56 +811,56 @@ test_expect_success 'allow deleting a tag using --delete' ' ' test_expect_success 'push --delete without args aborts' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && test_must_fail git push testrepo --delete ' test_expect_success 'push --delete refuses src:dest refspecs' ' - mk_test testrepo heads/master && - test_must_fail git push testrepo --delete master:foo + mk_test testrepo heads/main && + test_must_fail git push testrepo --delete main:foo ' test_expect_success 'warn on push to HEAD of non-bare repository' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && ( cd testrepo && - git checkout master && + git checkout main && git config receive.denyCurrentBranch warn ) && - git push testrepo master 2>stderr && + git push testrepo main 2>stderr && grep "warning: updating the current branch" stderr ' test_expect_success 'deny push to HEAD of non-bare repository' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && ( cd testrepo && - git checkout master && + git checkout main && git config receive.denyCurrentBranch true ) && - test_must_fail git push testrepo master + test_must_fail git push testrepo main ' test_expect_success 'allow push to HEAD of bare repository (bare)' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && ( cd testrepo && - git checkout master && + git checkout main && git config receive.denyCurrentBranch true && git config core.bare true ) && - git push testrepo master 2>stderr && + git push testrepo main 2>stderr && ! grep "warning: updating the current branch" stderr ' test_expect_success 'allow push to HEAD of non-bare repository (config)' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && ( cd testrepo && - git checkout master && + git checkout main && git config receive.denyCurrentBranch false ) && - git push testrepo master 2>stderr && + git push testrepo main 2>stderr && ! grep "warning: updating the current branch" stderr ' @@ -880,7 +876,7 @@ test_expect_success 'fetch with branches' ' git for-each-ref refs/heads >actual && test_cmp expect actual ) && - git checkout master + git checkout main ' test_expect_success 'fetch with branches containing #' ' @@ -893,7 +889,7 @@ test_expect_success 'fetch with branches containing #' ' git for-each-ref refs/heads >actual && test_cmp expect actual ) && - git checkout master + git checkout main ' test_expect_success 'push with branches' ' @@ -903,7 +899,7 @@ test_expect_success 'push with branches' ' git push branch1 && ( cd testrepo && - echo "$the_first_commit commit refs/heads/master" >expect && + echo "$the_first_commit commit refs/heads/main" >expect && git for-each-ref refs/heads >actual && test_cmp expect actual ) @@ -919,11 +915,11 @@ test_expect_success 'push with branches containing #' ' git for-each-ref refs/heads >actual && test_cmp expect actual ) && - git checkout master + git checkout main ' test_expect_success 'push into aliased refs (consistent)' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && mk_child testrepo child1 && mk_child testrepo child2 && ( @@ -945,7 +941,7 @@ test_expect_success 'push into aliased refs (consistent)' ' ' test_expect_success 'push into aliased refs (inconsistent)' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && mk_child testrepo child1 && mk_child testrepo child2 && ( @@ -976,7 +972,7 @@ test_force_push_tag () { tag_args=$2 test_expect_success "force pushing required to update $tag_type_description" " - mk_test testrepo heads/master && + mk_test testrepo heads/main && mk_child testrepo child1 && mk_child testrepo child2 && ( @@ -1022,7 +1018,7 @@ test_force_fetch_tag () { tag_args=$2 test_expect_success "fetch will not clobber an existing $tag_type_description without --force" " - mk_test testrepo heads/master && + mk_test testrepo heads/main && mk_child testrepo child1 && mk_child testrepo child2 && ( @@ -1045,12 +1041,12 @@ test_force_fetch_tag "annotated tag" "-f -a -m'tag message'" test_expect_success 'push --porcelain' ' mk_empty testrepo && echo >.git/foo "To testrepo" && - echo >>.git/foo "* refs/heads/master:refs/remotes/origin/master [new reference]" && + echo >>.git/foo "* refs/heads/main:refs/remotes/origin/main [new reference]" && echo >>.git/foo "Done" && - git push >.git/bar --porcelain testrepo refs/heads/master:refs/remotes/origin/master && + git push >.git/bar --porcelain testrepo refs/heads/main:refs/remotes/origin/main && ( cd testrepo && - echo "$the_commit commit refs/remotes/origin/master" >expect && + echo "$the_commit commit refs/remotes/origin/main" >expect && git for-each-ref refs/remotes/origin >actual && test_cmp expect actual ) && @@ -1059,52 +1055,52 @@ test_expect_success 'push --porcelain' ' test_expect_success 'push --porcelain bad url' ' mk_empty testrepo && - test_must_fail git push >.git/bar --porcelain asdfasdfasd refs/heads/master:refs/remotes/origin/master && + test_must_fail git push >.git/bar --porcelain asdfasdfasd refs/heads/main:refs/remotes/origin/main && ! grep -q Done .git/bar ' test_expect_success 'push --porcelain rejected' ' mk_empty testrepo && - git push testrepo refs/heads/master:refs/remotes/origin/master && + git push testrepo refs/heads/main:refs/remotes/origin/main && (cd testrepo && - git reset --hard origin/master^ && + git reset --hard origin/main^ && git config receive.denyCurrentBranch true) && echo >.git/foo "To testrepo" && - echo >>.git/foo "! refs/heads/master:refs/heads/master [remote rejected] (branch is currently checked out)" && + echo >>.git/foo "! refs/heads/main:refs/heads/main [remote rejected] (branch is currently checked out)" && echo >>.git/foo "Done" && - test_must_fail git push >.git/bar --porcelain testrepo refs/heads/master:refs/heads/master && + test_must_fail git push >.git/bar --porcelain testrepo refs/heads/main:refs/heads/main && test_cmp .git/foo .git/bar ' test_expect_success 'push --porcelain --dry-run rejected' ' mk_empty testrepo && - git push testrepo refs/heads/master:refs/remotes/origin/master && + git push testrepo refs/heads/main:refs/remotes/origin/main && (cd testrepo && - git reset --hard origin/master && + git reset --hard origin/main && git config receive.denyCurrentBranch true) && echo >.git/foo "To testrepo" && - echo >>.git/foo "! refs/heads/master^:refs/heads/master [rejected] (non-fast-forward)" && + echo >>.git/foo "! refs/heads/main^:refs/heads/main [rejected] (non-fast-forward)" && echo >>.git/foo "Done" && - test_must_fail git push >.git/bar --porcelain --dry-run testrepo refs/heads/master^:refs/heads/master && + test_must_fail git push >.git/bar --porcelain --dry-run testrepo refs/heads/main^:refs/heads/main && test_cmp .git/foo .git/bar ' test_expect_success 'push --prune' ' - mk_test testrepo heads/master heads/second heads/foo heads/bar && + mk_test testrepo heads/main heads/second heads/foo heads/bar && git push --prune testrepo : && - check_push_result testrepo $the_commit heads/master && + check_push_result testrepo $the_commit heads/main && check_push_result testrepo $the_first_commit heads/second && ! check_push_result testrepo $the_first_commit heads/foo heads/bar ' test_expect_success 'push --prune refspec' ' - mk_test testrepo tmp/master tmp/second tmp/foo tmp/bar && + mk_test testrepo tmp/main tmp/second tmp/foo tmp/bar && git push --prune testrepo "refs/heads/*:refs/tmp/*" && - check_push_result testrepo $the_commit tmp/master && + check_push_result testrepo $the_commit tmp/main && check_push_result testrepo $the_first_commit tmp/second && ! check_push_result testrepo $the_first_commit tmp/foo tmp/bar ' @@ -1112,18 +1108,18 @@ test_expect_success 'push --prune refspec' ' for configsection in transfer receive do test_expect_success "push to update a ref hidden by $configsection.hiderefs" ' - mk_test testrepo heads/master hidden/one hidden/two hidden/three && + mk_test testrepo heads/main hidden/one hidden/two hidden/three && ( cd testrepo && git config $configsection.hiderefs refs/hidden ) && # push to unhidden ref succeeds normally - git push testrepo master:refs/heads/master && - check_push_result testrepo $the_commit heads/master && + git push testrepo main:refs/heads/main && + check_push_result testrepo $the_commit heads/main && # push to update a hidden ref should fail - test_must_fail git push testrepo master:refs/hidden/one && + test_must_fail git push testrepo main:refs/hidden/one && check_push_result testrepo $the_first_commit hidden/one && # push to delete a hidden ref should fail @@ -1137,8 +1133,8 @@ do done test_expect_success 'fetch exact SHA1' ' - mk_test testrepo heads/master hidden/one && - git push testrepo master:refs/hidden/one && + mk_test testrepo heads/main hidden/one && + git push testrepo main:refs/hidden/one && ( cd testrepo && git config transfer.hiderefs refs/hidden @@ -1169,7 +1165,7 @@ test_expect_success 'fetch exact SHA1' ' git config uploadpack.allowtipsha1inwant true ) && - git fetch -v ../testrepo $the_commit:refs/heads/copy master:refs/heads/extra && + git fetch -v ../testrepo $the_commit:refs/heads/copy main:refs/heads/extra && cat >expect <<-EOF && $the_commit $the_first_commit @@ -1183,8 +1179,8 @@ test_expect_success 'fetch exact SHA1' ' ' test_expect_success 'fetch exact SHA1 in protocol v2' ' - mk_test testrepo heads/master hidden/one && - git push testrepo master:refs/hidden/one && + mk_test testrepo heads/main hidden/one && + git push testrepo main:refs/hidden/one && git -C testrepo config transfer.hiderefs refs/hidden && check_push_result testrepo $the_commit hidden/one && @@ -1260,23 +1256,25 @@ do git cat-file commit $SHA1_2 && test_must_fail env GIT_TEST_PROTOCOL_VERSION=0 \ git fetch ../testrepo/.git $SHA1_3 2>err && - test_i18ngrep "remote error:.*not our ref.*$SHA1_3\$" err + # ideally we would insist this be on a "remote error:" + # line, but it is racy; see the commit message + test_i18ngrep "not our ref.*$SHA1_3\$" err ) ' done test_expect_success 'fetch follows tags by default' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && rm -fr src dst && git init src && ( cd src && - git pull ../testrepo master && + git pull ../testrepo main && git tag -m "annotated" tag && git for-each-ref >tmp1 && ( cat tmp1 - sed -n "s|refs/heads/master$|refs/remotes/origin/master|p" tmp1 + sed -n "s|refs/heads/main$|refs/remotes/origin/main|p" tmp1 ) | sort -k 3 >../expect ) && @@ -1284,8 +1282,8 @@ test_expect_success 'fetch follows tags by default' ' ( cd dst && git remote add origin ../src && - git config branch.master.remote origin && - git config branch.master.merge refs/heads/master && + git config branch.main.remote origin && + git config branch.main.merge refs/heads/main && git pull && git for-each-ref >../actual ) && @@ -1304,74 +1302,74 @@ test_expect_success 'peeled advertisements are not considered ref tips' ' ' test_expect_success 'pushing a specific ref applies remote.$name.push as refmap' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && rm -fr src dst && git init src && git init --bare dst && ( cd src && - git pull ../testrepo master && + git pull ../testrepo main && git branch next && git config remote.dst.url ../dst && git config remote.dst.push "+refs/heads/*:refs/remotes/src/*" && - git push dst master && - git show-ref refs/heads/master | + git push dst main && + git show-ref refs/heads/main | sed -e "s|refs/heads/|refs/remotes/src/|" >../dst/expect ) && ( cd dst && test_must_fail git show-ref refs/heads/next && - test_must_fail git show-ref refs/heads/master && - git show-ref refs/remotes/src/master >actual + test_must_fail git show-ref refs/heads/main && + git show-ref refs/remotes/src/main >actual ) && test_cmp dst/expect dst/actual ' test_expect_success 'with no remote.$name.push, it is not used as refmap' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && rm -fr src dst && git init src && git init --bare dst && ( cd src && - git pull ../testrepo master && + git pull ../testrepo main && git branch next && git config remote.dst.url ../dst && git config push.default matching && - git push dst master && - git show-ref refs/heads/master >../dst/expect + git push dst main && + git show-ref refs/heads/main >../dst/expect ) && ( cd dst && test_must_fail git show-ref refs/heads/next && - git show-ref refs/heads/master >actual + git show-ref refs/heads/main >actual ) && test_cmp dst/expect dst/actual ' test_expect_success 'with no remote.$name.push, upstream mapping is used' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && rm -fr src dst && git init src && git init --bare dst && ( cd src && - git pull ../testrepo master && + git pull ../testrepo main && git branch next && git config remote.dst.url ../dst && git config remote.dst.fetch "+refs/heads/*:refs/remotes/dst/*" && git config push.default upstream && - git config branch.master.merge refs/heads/trunk && - git config branch.master.remote dst && + git config branch.main.merge refs/heads/trunk && + git config branch.main.remote dst && - git push dst master && - git show-ref refs/heads/master | - sed -e "s|refs/heads/master|refs/heads/trunk|" >../dst/expect + git push dst main && + git show-ref refs/heads/main | + sed -e "s|refs/heads/main|refs/heads/trunk|" >../dst/expect ) && ( cd dst && - test_must_fail git show-ref refs/heads/master && + test_must_fail git show-ref refs/heads/main && test_must_fail git show-ref refs/heads/next && git show-ref refs/heads/trunk >actual ) && @@ -1379,20 +1377,20 @@ test_expect_success 'with no remote.$name.push, upstream mapping is used' ' ' test_expect_success 'push does not follow tags by default' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && rm -fr src dst && git init src && git init --bare dst && ( cd src && - git pull ../testrepo master && + git pull ../testrepo main && git tag -m "annotated" tag && git checkout -b another && git commit --allow-empty -m "future commit" && git tag -m "future" future && - git checkout master && - git for-each-ref refs/heads/master >../expect && - git push ../dst master + git checkout main && + git for-each-ref refs/heads/main >../expect && + git push ../dst main ) && ( cd dst && @@ -1402,20 +1400,20 @@ test_expect_success 'push does not follow tags by default' ' ' test_expect_success 'push --follow-tags only pushes relevant tags' ' - mk_test testrepo heads/master && + mk_test testrepo heads/main && rm -fr src dst && git init src && git init --bare dst && ( cd src && - git pull ../testrepo master && + git pull ../testrepo main && git tag -m "annotated" tag && git checkout -b another && git commit --allow-empty -m "future commit" && git tag -m "future" future && - git checkout master && - git for-each-ref refs/heads/master refs/tags/tag >../expect && - git push --follow-tags ../dst master + git checkout main && + git for-each-ref refs/heads/main refs/tags/tag >../expect && + git push --follow-tags ../dst main ) && ( cd dst && @@ -1433,12 +1431,12 @@ EOF git commit -am initial && git init no-thin && git --git-dir=no-thin/.git config receive.unpacklimit 0 && - git push no-thin/.git refs/heads/master:refs/heads/foo && + git push no-thin/.git refs/heads/main:refs/heads/foo && echo modified >> path1 && git commit -am modified && git repack -adf && rcvpck="git receive-pack --reject-thin-pack-for-testing" && - git push --no-thin --receive-pack="$rcvpck" no-thin/.git refs/heads/master:refs/heads/foo + git push --no-thin --receive-pack="$rcvpck" no-thin/.git refs/heads/main:refs/heads/foo ' test_expect_success 'pushing a tag pushes the tagged object' ' @@ -1461,12 +1459,12 @@ test_expect_success 'push into bare respects core.logallrefupdates' ' # double push to test both with and without # the actual pack transfer - git push dst.git master:one && + git push dst.git main:one && echo "one@{0} push" >expect && git -C dst.git log -g --format="%gd %gs" one >actual && test_cmp expect actual && - git push dst.git master:two && + git push dst.git main:two && echo "two@{0} push" >expect && git -C dst.git log -g --format="%gd %gs" two >actual && test_cmp expect actual @@ -1481,20 +1479,20 @@ test_expect_success 'fetch into bare respects core.logallrefupdates' ' # as above, we double-fetch to test both # with and without pack transfer - git fetch .. master:one && - echo "one@{0} fetch .. master:one: storing head" >expect && + git fetch .. main:one && + echo "one@{0} fetch .. main:one: storing head" >expect && git log -g --format="%gd %gs" one >actual && test_cmp expect actual && - git fetch .. master:two && - echo "two@{0} fetch .. master:two: storing head" >expect && + git fetch .. main:two && + echo "two@{0} fetch .. main:two: storing head" >expect && git log -g --format="%gd %gs" two >actual && test_cmp expect actual ) ' test_expect_success 'receive.denyCurrentBranch = updateInstead' ' - git push testrepo master && + git push testrepo main && ( cd testrepo && git reset --hard && @@ -1503,7 +1501,7 @@ test_expect_success 'receive.denyCurrentBranch = updateInstead' ' test_commit third path2 && # Try pushing into a repository with pristine working tree - git push testrepo master && + git push testrepo main && ( cd testrepo && git update-index -q --refresh && @@ -1520,7 +1518,7 @@ test_expect_success 'receive.denyCurrentBranch = updateInstead' ' test $(git -C .. rev-parse HEAD^) = $(git rev-parse HEAD) && test-tool chmtime +100 path1 ) && - git push testrepo master && + git push testrepo main && ( cd testrepo && git update-index -q --refresh && @@ -1540,7 +1538,7 @@ test_expect_success 'receive.denyCurrentBranch = updateInstead' ' cd testrepo && echo changed >path1 ) && - test_must_fail git push testrepo master && + test_must_fail git push testrepo main && ( cd testrepo && test $(git -C .. rev-parse HEAD^) = $(git rev-parse HEAD) && @@ -1554,7 +1552,7 @@ test_expect_success 'receive.denyCurrentBranch = updateInstead' ' echo changed >path1 && git add path1 ) && - test_must_fail git push testrepo master && + test_must_fail git push testrepo main && ( cd testrepo && test $(git -C .. rev-parse HEAD^) = $(git rev-parse HEAD) && @@ -1571,7 +1569,7 @@ test_expect_success 'receive.denyCurrentBranch = updateInstead' ' git reset --hard && echo changed >path3 ) && - test_must_fail git push testrepo master && + test_must_fail git push testrepo main && ( cd testrepo && test $(git -C .. rev-parse HEAD^^) = $(git rev-parse HEAD) && @@ -1587,7 +1585,7 @@ test_expect_success 'receive.denyCurrentBranch = updateInstead' ' echo fifth >path3 && git add path3 ) && - test_must_fail git push testrepo master && + test_must_fail git push testrepo main && ( cd testrepo && test $(git -C .. rev-parse HEAD^^) = $(git rev-parse HEAD) && @@ -1602,17 +1600,17 @@ test_expect_success 'receive.denyCurrentBranch = updateInstead' ' cd void && git config receive.denyCurrentBranch updateInstead ) && - git push void master && + git push void main && ( cd void && - test $(git -C .. rev-parse master) = $(git rev-parse HEAD) && + test $(git -C .. rev-parse main) = $(git rev-parse HEAD) && git diff --quiet && git diff --cached --quiet ) && # (6) updateInstead intervened by fast-forward check - test_must_fail git push void master^:master && - test $(git -C void rev-parse HEAD) = $(git rev-parse master) && + test_must_fail git push void main^:main && + test $(git -C void rev-parse HEAD) = $(git rev-parse main) && git -C void diff --quiet && git -C void diff --cached --quiet ' @@ -1622,7 +1620,7 @@ test_expect_success 'updateInstead with push-to-checkout hook' ' git init testrepo && ( cd testrepo && - git pull .. master && + git pull .. main && git reset --hard HEAD^^ && git tag initial && git config receive.denyCurrentBranch updateInstead && @@ -1640,7 +1638,7 @@ test_expect_success 'updateInstead with push-to-checkout hook' ' ) && # Try pushing into a pristine - git push testrepo master && + git push testrepo main && ( cd testrepo && git diff --quiet && @@ -1654,7 +1652,7 @@ test_expect_success 'updateInstead with push-to-checkout hook' ' git reset --hard initial && echo conflicting >path2 ) && - test_must_fail git push testrepo master && + test_must_fail git push testrepo main && ( cd testrepo && test $(git rev-parse initial) = $(git rev-parse HEAD) && @@ -1670,7 +1668,7 @@ test_expect_success 'updateInstead with push-to-checkout hook' ' echo irrelevant >path5 && git add path5 ) && - git push testrepo master && + git push testrepo main && ( cd testrepo && test "$(cat path1)" = unrelated && @@ -1710,7 +1708,7 @@ test_expect_success 'updateInstead with push-to-checkout hook' ' EOF ) && - git push void master && + git push void main && ( cd void && git diff --quiet && diff --git a/t/t5517-push-mirror.sh b/t/t5517-push-mirror.sh index e4edd56404..a448e169bd 100755 --- a/t/t5517-push-mirror.sh +++ b/t/t5517-push-mirror.sh @@ -2,6 +2,9 @@ test_description='pushing to a mirror repository' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh D=$(pwd) @@ -15,16 +18,16 @@ invert () { } mk_repo_pair () { - rm -rf master mirror && + rm -rf main mirror && mkdir mirror && ( cd mirror && git init && git config receive.denyCurrentBranch warn ) && - mkdir master && + mkdir main && ( - cd master && + cd main && git init && git remote add $1 up ../mirror ) @@ -36,13 +39,13 @@ test_expect_success 'push mirror creates new branches' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && git push --mirror up ) && - master_master=$(cd master && git show-ref -s --verify refs/heads/master) && - mirror_master=$(cd mirror && git show-ref -s --verify refs/heads/master) && - test "$master_master" = "$mirror_master" + main_main=$(cd main && git show-ref -s --verify refs/heads/main) && + mirror_main=$(cd mirror && git show-ref -s --verify refs/heads/main) && + test "$main_main" = "$mirror_main" ' @@ -50,15 +53,15 @@ test_expect_success 'push mirror updates existing branches' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && git push --mirror up && echo two >foo && git add foo && git commit -m two && git push --mirror up ) && - master_master=$(cd master && git show-ref -s --verify refs/heads/master) && - mirror_master=$(cd mirror && git show-ref -s --verify refs/heads/master) && - test "$master_master" = "$mirror_master" + main_main=$(cd main && git show-ref -s --verify refs/heads/main) && + mirror_main=$(cd mirror && git show-ref -s --verify refs/heads/main) && + test "$main_main" = "$mirror_main" ' @@ -66,7 +69,7 @@ test_expect_success 'push mirror force updates existing branches' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && git push --mirror up && echo two >foo && git add foo && git commit -m two && @@ -74,9 +77,9 @@ test_expect_success 'push mirror force updates existing branches' ' git reset --hard HEAD^ && git push --mirror up ) && - master_master=$(cd master && git show-ref -s --verify refs/heads/master) && - mirror_master=$(cd mirror && git show-ref -s --verify refs/heads/master) && - test "$master_master" = "$mirror_master" + main_main=$(cd main && git show-ref -s --verify refs/heads/main) && + mirror_main=$(cd mirror && git show-ref -s --verify refs/heads/main) && + test "$main_main" = "$mirror_main" ' @@ -84,9 +87,9 @@ test_expect_success 'push mirror removes branches' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && - git branch remove master && + git branch remove main && git push --mirror up && git branch -D remove && git push --mirror up @@ -102,21 +105,21 @@ test_expect_success 'push mirror adds, updates and removes branches together' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && - git branch remove master && + git branch remove main && git push --mirror up && git branch -D remove && - git branch add master && + git branch add main && echo two >foo && git add foo && git commit -m two && git push --mirror up ) && - master_master=$(cd master && git show-ref -s --verify refs/heads/master) && - master_add=$(cd master && git show-ref -s --verify refs/heads/add) && - mirror_master=$(cd mirror && git show-ref -s --verify refs/heads/master) && + main_main=$(cd main && git show-ref -s --verify refs/heads/main) && + main_add=$(cd main && git show-ref -s --verify refs/heads/add) && + mirror_main=$(cd mirror && git show-ref -s --verify refs/heads/main) && mirror_add=$(cd mirror && git show-ref -s --verify refs/heads/add) && - test "$master_master" = "$mirror_master" && - test "$master_add" = "$mirror_add" && + test "$main_main" = "$mirror_main" && + test "$main_add" = "$mirror_add" && ( cd mirror && invert git show-ref -s --verify refs/heads/remove @@ -130,14 +133,14 @@ test_expect_success 'push mirror creates new tags' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && - git tag -f tmaster master && + git tag -f tmain main && git push --mirror up ) && - master_master=$(cd master && git show-ref -s --verify refs/tags/tmaster) && - mirror_master=$(cd mirror && git show-ref -s --verify refs/tags/tmaster) && - test "$master_master" = "$mirror_master" + main_main=$(cd main && git show-ref -s --verify refs/tags/tmain) && + mirror_main=$(cd mirror && git show-ref -s --verify refs/tags/tmain) && + test "$main_main" = "$mirror_main" ' @@ -145,17 +148,17 @@ test_expect_success 'push mirror updates existing tags' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && - git tag -f tmaster master && + git tag -f tmain main && git push --mirror up && echo two >foo && git add foo && git commit -m two && - git tag -f tmaster master && + git tag -f tmain main && git push --mirror up ) && - master_master=$(cd master && git show-ref -s --verify refs/tags/tmaster) && - mirror_master=$(cd mirror && git show-ref -s --verify refs/tags/tmaster) && - test "$master_master" = "$mirror_master" + main_main=$(cd main && git show-ref -s --verify refs/tags/tmain) && + mirror_main=$(cd mirror && git show-ref -s --verify refs/tags/tmain) && + test "$main_main" = "$mirror_main" ' @@ -163,20 +166,20 @@ test_expect_success 'push mirror force updates existing tags' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && - git tag -f tmaster master && + git tag -f tmain main && git push --mirror up && echo two >foo && git add foo && git commit -m two && - git tag -f tmaster master && + git tag -f tmain main && git push --mirror up && git reset --hard HEAD^ && - git tag -f tmaster master && + git tag -f tmain main && git push --mirror up ) && - master_master=$(cd master && git show-ref -s --verify refs/tags/tmaster) && - mirror_master=$(cd mirror && git show-ref -s --verify refs/tags/tmaster) && - test "$master_master" = "$mirror_master" + main_main=$(cd main && git show-ref -s --verify refs/tags/tmain) && + mirror_main=$(cd mirror && git show-ref -s --verify refs/tags/tmain) && + test "$main_main" = "$mirror_main" ' @@ -184,9 +187,9 @@ test_expect_success 'push mirror removes tags' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && - git tag -f tremove master && + git tag -f tremove main && git push --mirror up && git tag -d tremove && git push --mirror up @@ -202,23 +205,23 @@ test_expect_success 'push mirror adds, updates and removes tags together' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && - git tag -f tmaster master && - git tag -f tremove master && + git tag -f tmain main && + git tag -f tremove main && git push --mirror up && git tag -d tremove && - git tag tadd master && + git tag tadd main && echo two >foo && git add foo && git commit -m two && - git tag -f tmaster master && + git tag -f tmain main && git push --mirror up ) && - master_master=$(cd master && git show-ref -s --verify refs/tags/tmaster) && - master_add=$(cd master && git show-ref -s --verify refs/tags/tadd) && - mirror_master=$(cd mirror && git show-ref -s --verify refs/tags/tmaster) && + main_main=$(cd main && git show-ref -s --verify refs/tags/tmain) && + main_add=$(cd main && git show-ref -s --verify refs/tags/tadd) && + mirror_main=$(cd mirror && git show-ref -s --verify refs/tags/tmain) && mirror_add=$(cd mirror && git show-ref -s --verify refs/tags/tadd) && - test "$master_master" = "$mirror_master" && - test "$master_add" = "$mirror_add" && + test "$main_main" = "$mirror_main" && + test "$main_add" = "$mirror_add" && ( cd mirror && invert git show-ref -s --verify refs/tags/tremove @@ -230,10 +233,10 @@ test_expect_success 'remote.foo.mirror adds and removes branches' ' mk_repo_pair --mirror && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && - git branch keep master && - git branch remove master && + git branch keep main && + git branch remove main && git push up && git branch -D remove && git push up @@ -250,10 +253,10 @@ test_expect_success 'remote.foo.mirror=no has no effect' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && git config --add remote.up.mirror no && - git branch keep master && + git branch keep main && git push --mirror up && git branch -D keep && git push up : @@ -268,10 +271,10 @@ test_expect_success 'remote.foo.mirror=no has no effect' ' test_expect_success 'push to mirrored repository with refspec fails' ' mk_repo_pair && ( - cd master && + cd main && echo one >foo && git add foo && git commit -m one && git config --add remote.up.mirror true && - test_must_fail git push up master + test_must_fail git push up main ) ' diff --git a/t/t5518-fetch-exit-status.sh b/t/t5518-fetch-exit-status.sh index c2060bb870..5c4ac2556e 100755 --- a/t/t5518-fetch-exit-status.sh +++ b/t/t5518-fetch-exit-status.sh @@ -5,6 +5,9 @@ test_description='fetch exit status test' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -17,20 +20,20 @@ test_expect_success setup ' echo side >file && git commit -a -m side && - git checkout master && + git checkout main && echo next >file && git commit -a -m next ' test_expect_success 'non-fast-forward fetch' ' - test_must_fail git fetch . master:side + test_must_fail git fetch . main:side ' test_expect_success 'forced update' ' - git fetch . +master:side + git fetch . +main:side ' diff --git a/t/t5519-push-alternates.sh b/t/t5519-push-alternates.sh index 11fcd37700..20ba604dfd 100755 --- a/t/t5519-push-alternates.sh +++ b/t/t5519-push-alternates.sh @@ -2,6 +2,9 @@ test_description='push to a repository that borrows from elsewhere' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -17,7 +20,7 @@ test_expect_success setup ' >file && git add . && git commit -m initial && - git push ../alice-pub master + git push ../alice-pub main ) && # Project Bob is a fork of project Alice @@ -31,7 +34,7 @@ test_expect_success setup ' git clone alice-pub bob-work && ( cd bob-work && - git push ../bob-pub master + git push ../bob-pub main ) ' @@ -54,7 +57,7 @@ test_expect_success 'bob fetches from alice, works and pushes' ' # has at her public repository are available to it # via its alternates. cd bob-work && - git pull ../alice-pub master && + git pull ../alice-pub main && echo more bob >file && git commit -a -m third && git push ../bob-pub : @@ -93,7 +96,7 @@ test_expect_success 'alice works and pushes again' ' test_expect_success 'bob works and pushes' ' ( # This time Bob does not pull from Alice, and - # the master branch at her public repository points + # the main branch at her public repository points # at a commit Bob does not know about. This should # not prevent the push by Bob from succeeding. cd bob-work && @@ -122,11 +125,11 @@ test_expect_success 'alice works and pushes yet again' ' test_expect_success 'bob works and pushes again' ' ( cd alice-pub && - git cat-file commit master >../bob-work/commit + git cat-file commit main >../bob-work/commit ) && ( # This time Bob does not pull from Alice, and - # the master branch at her public repository points + # the main branch at her public repository points # at a commit Bob does not fully know about, but # he happens to have the commit object (but not the # necessary tree) in his repository from Alice. diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh index 9fae07cdfa..a09411327f 100755 --- a/t/t5520-pull.sh +++ b/t/t5520-pull.sh @@ -2,6 +2,9 @@ test_description='pulling into void' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh modify () { @@ -48,11 +51,11 @@ test_expect_success 'pulling into void' ' test_cmp file cloned/file ' -test_expect_success 'pulling into void using master:master' ' +test_expect_success 'pulling into void using main:main' ' git init cloned-uho && ( cd cloned-uho && - git pull .. master:master + git pull .. main:main ) && test_path_is_file file && test_path_is_file cloned-uho/file && @@ -64,7 +67,7 @@ test_expect_success 'pulling into void does not overwrite untracked files' ' ( cd cloned-untracked && echo untracked >file && - test_must_fail git pull .. master && + test_must_fail git pull .. main && echo untracked >expect && test_cmp expect file ) @@ -76,7 +79,7 @@ test_expect_success 'pulling into void does not overwrite staged files' ' cd cloned-staged-colliding && echo "alternate content" >file && git add file && - test_must_fail git pull .. master && + test_must_fail git pull .. main && echo "alternate content" >expect && test_cmp expect file && git cat-file blob :file >file.index && @@ -90,7 +93,7 @@ test_expect_success 'pulling into void does not remove new staged files' ' cd cloned-staged-new && echo "new tracked file" >newfile && git add newfile && - git pull .. master && + git pull .. main && echo "new tracked file" >expect && test_cmp expect newfile && git cat-file blob :newfile >newfile.index && @@ -102,15 +105,15 @@ test_expect_success 'pulling into void must not create an octopus' ' git init cloned-octopus && ( cd cloned-octopus && - test_must_fail git pull .. master master && + test_must_fail git pull .. main main && test_path_is_missing file ) ' test_expect_success 'test . as a remote' ' - git branch copy master && + git branch copy main && git config branch.copy.remote . && - git config branch.copy.merge refs/heads/master && + git config branch.copy.merge refs/heads/main && echo updated >file && git commit -a -m updated && git checkout copy && @@ -126,7 +129,7 @@ test_expect_success 'test . as a remote' ' ' test_expect_success 'the default remote . should not break explicit pull' ' - git checkout -b second master^ && + git checkout -b second main^ && echo modified >file && git commit -a -m modified && git checkout copy && @@ -361,7 +364,7 @@ test_expect_success 'failed --rebase shows advice' ' test_expect_success '--rebase fails with multiple branches' ' git reset --hard before-rebase && - test_must_fail git pull --rebase . copy master 2>err && + test_must_fail git pull --rebase . copy main 2>err && test_cmp_rev HEAD before-rebase && test_i18ngrep "Cannot rebase onto multiple branches" err && echo modified >expect && @@ -500,7 +503,7 @@ test_expect_success 'pull --rebase does not warn on --no-verify-signatures' ' test_i18ngrep ! "verify-signatures" err ' -# add a feature branch, keep-merge, that is merged into master, so the +# add a feature branch, keep-merge, that is merged into main, so the # test can try preserving the merge commit (or not) with various # --rebase flags/pull.rebase settings. test_expect_success 'preserve merge setup' ' @@ -699,12 +702,12 @@ test_expect_success 'pull --rebase dies early with dirty working directory' ' ' test_expect_success 'pull --rebase works on branch yet to be born' ' - git rev-parse master >expect && + git rev-parse main >expect && mkdir empty_repo && ( cd empty_repo && git init && - git pull --rebase .. master && + git pull --rebase .. main && git rev-parse HEAD >../actual ) && test_cmp expect actual @@ -720,7 +723,7 @@ test_expect_success 'pull --rebase fails on unborn branch with staged changes' ' echo staged-file >expect && git ls-files >actual && test_cmp expect actual && - test_must_fail git pull --rebase .. master 2>err && + test_must_fail git pull --rebase .. main 2>err && git ls-files >actual && test_cmp expect actual && git show :staged-file >actual && @@ -779,7 +782,7 @@ test_expect_success 'setup for avoiding reapplying old patches' ' ( cd dst && test_might_fail git rebase --abort && - git reset --hard origin/master + git reset --hard origin/main ) && git clone --bare src src-replace.git && rm -rf src && diff --git a/t/t5521-pull-options.sh b/t/t5521-pull-options.sh index db1a381cd9..63a688bdbf 100755 --- a/t/t5521-pull-options.sh +++ b/t/t5521-pull-options.sh @@ -2,6 +2,9 @@ test_description='pull options' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -99,13 +102,13 @@ test_expect_success 'git pull --force' ' cat >>.git/config <<-\EOF && [remote "one"] url = ../parent - fetch = refs/heads/master:refs/heads/mirror + fetch = refs/heads/main:refs/heads/mirror [remote "two"] url = ../parent - fetch = refs/heads/master:refs/heads/origin - [branch "master"] + fetch = refs/heads/main:refs/heads/origin + [branch "main"] remote = two - merge = refs/heads/master + merge = refs/heads/main EOF git pull two && test_commit A && @@ -124,9 +127,9 @@ test_expect_success 'git pull --all' ' [remote "two"] url = ../parent fetch = refs/heads/*:refs/remotes/two/* - [branch "master"] + [branch "main"] remote = one - merge = refs/heads/master + merge = refs/heads/main EOF git pull --all ) @@ -139,7 +142,7 @@ test_expect_success 'git pull --dry-run' ' cd clonedry && git pull --dry-run ../parent && test_path_is_missing .git/FETCH_HEAD && - test_path_is_missing .git/refs/heads/master && + test_path_is_missing .git/refs/heads/main && test_path_is_missing .git/index && test_path_is_missing file ) @@ -153,7 +156,7 @@ test_expect_success 'git pull --all --dry-run' ' git remote add origin ../parent && git pull --all --dry-run && test_path_is_missing .git/FETCH_HEAD && - test_path_is_missing .git/refs/remotes/origin/master && + test_path_is_missing .git/refs/remotes/origin/main && test_path_is_missing .git/index && test_path_is_missing file ) diff --git a/t/t5523-push-upstream.sh b/t/t5523-push-upstream.sh index e47b5db5d6..9fbe7f784d 100755 --- a/t/t5523-push-upstream.sh +++ b/t/t5523-push-upstream.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='push with --set-upstream' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-terminal.sh @@ -26,19 +29,19 @@ check_config() { test_cmp expect.$1 actual.$1 } -test_expect_success 'push -u master:master' ' - git push -u upstream master:master && - check_config master upstream refs/heads/master +test_expect_success 'push -u main:main' ' + git push -u upstream main:main && + check_config main upstream refs/heads/main ' -test_expect_success 'push -u master:other' ' - git push -u upstream master:other && - check_config master upstream refs/heads/other +test_expect_success 'push -u main:other' ' + git push -u upstream main:other && + check_config main upstream refs/heads/other ' -test_expect_success 'push -u --dry-run master:otherX' ' - git push -u --dry-run upstream master:otherX && - check_config master upstream refs/heads/other +test_expect_success 'push -u --dry-run main:otherX' ' + git push -u --dry-run upstream main:otherX && + check_config main upstream refs/heads/other ' test_expect_success 'push -u topic_2:topic_2' ' @@ -74,7 +77,7 @@ test_expect_success 'push -u HEAD' ' test_expect_success TTY 'progress messages go to tty' ' ensure_fresh_upstream && - test_terminal git push -u upstream master >out 2>err && + test_terminal git push -u upstream main >out 2>err && test_i18ngrep "Writing objects" err ' @@ -82,7 +85,7 @@ test_expect_success 'progress messages do not go to non-tty' ' ensure_fresh_upstream && # skip progress messages, since stderr is non-tty - git push -u upstream master >out 2>err && + git push -u upstream main >out 2>err && test_i18ngrep ! "Writing objects" err ' @@ -90,21 +93,21 @@ test_expect_success 'progress messages go to non-tty (forced)' ' ensure_fresh_upstream && # force progress messages to stderr, even though it is non-tty - git push -u --progress upstream master >out 2>err && + git push -u --progress upstream main >out 2>err && test_i18ngrep "Writing objects" err ' test_expect_success TTY 'push -q suppresses progress' ' ensure_fresh_upstream && - test_terminal git push -u -q upstream master >out 2>err && + test_terminal git push -u -q upstream main >out 2>err && test_i18ngrep ! "Writing objects" err ' test_expect_success TTY 'push --no-progress suppresses progress' ' ensure_fresh_upstream && - test_terminal git push -u --no-progress upstream master >out 2>err && + test_terminal git push -u --no-progress upstream main >out 2>err && test_i18ngrep ! "Unpacking objects" err && test_i18ngrep ! "Writing objects" err ' @@ -112,7 +115,7 @@ test_expect_success TTY 'push --no-progress suppresses progress' ' test_expect_success TTY 'quiet push' ' ensure_fresh_upstream && - test_terminal git push --quiet --no-progress upstream master 2>&1 | tee output && + test_terminal git push --quiet --no-progress upstream main 2>&1 | tee output && test_must_be_empty output ' diff --git a/t/t5526-fetch-submodules.sh b/t/t5526-fetch-submodules.sh index a877dd145e..11513ec15e 100755 --- a/t/t5526-fetch-submodules.sh +++ b/t/t5526-fetch-submodules.sh @@ -3,6 +3,9 @@ test_description='Recursive "git fetch" for submodules' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=master +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh pwd=$(pwd) @@ -722,4 +725,121 @@ test_expect_success 'fetch new submodule commit intermittently referenced by sup ) ' +add_commit_push () { + dir="$1" && + msg="$2" && + shift 2 && + git -C "$dir" add "$@" && + git -C "$dir" commit -a -m "$msg" && + git -C "$dir" push +} + +compare_refs_in_dir () { + fail= && + if test "x$1" = 'x!' + then + fail='!' && + shift + fi && + git -C "$1" rev-parse --verify "$2" >expect && + git -C "$3" rev-parse --verify "$4" >actual && + eval $fail test_cmp expect actual +} + + +test_expect_success 'setup nested submodule fetch test' ' + # does not depend on any previous test setups + + for repo in outer middle inner + do + git init --bare $repo && + git clone $repo ${repo}_content && + echo "$repo" >"${repo}_content/file" && + add_commit_push ${repo}_content "initial" file || + return 1 + done && + + git clone outer A && + git -C A submodule add "$pwd/middle" && + git -C A/middle/ submodule add "$pwd/inner" && + add_commit_push A/middle/ "adding inner sub" .gitmodules inner && + add_commit_push A/ "adding middle sub" .gitmodules middle && + + git clone outer B && + git -C B/ submodule update --init middle && + + compare_refs_in_dir A HEAD B HEAD && + compare_refs_in_dir A/middle HEAD B/middle HEAD && + test_path_is_file B/file && + test_path_is_file B/middle/file && + test_path_is_missing B/middle/inner/file && + + echo "change on inner repo of A" >"A/middle/inner/file" && + add_commit_push A/middle/inner "change on inner" file && + add_commit_push A/middle "change on inner" inner && + add_commit_push A "change on inner" middle +' + +test_expect_success 'fetching a superproject containing an uninitialized sub/sub project' ' + # depends on previous test for setup + + git -C B/ fetch && + compare_refs_in_dir A origin/HEAD B origin/HEAD +' + +fetch_with_recursion_abort () { + # In a regression the following git call will run into infinite recursion. + # To handle that, we connect the sed command to the git call by a pipe + # so that sed can kill the infinite recursion when detected. + # The recursion creates git output like: + # Fetching submodule sub + # Fetching submodule sub/sub <-- [1] + # Fetching submodule sub/sub/sub + # ... + # [1] sed will stop reading and cause git to eventually stop and die + + git -C "$1" fetch --recurse-submodules 2>&1 | + sed "/Fetching submodule $2[^$]/q" >out && + ! grep "Fetching submodule $2[^$]" out +} + +test_expect_success 'setup recursive fetch with uninit submodule' ' + # does not depend on any previous test setups + + test_create_repo super && + test_commit -C super initial && + test_create_repo sub && + test_commit -C sub initial && + git -C sub rev-parse HEAD >expect && + + git -C super submodule add ../sub && + git -C super commit -m "add sub" && + + git clone super superclone && + git -C superclone submodule status >out && + sed -e "s/^-//" -e "s/ sub.*$//" out >actual && + test_cmp expect actual +' + +test_expect_success 'recursive fetch with uninit submodule' ' + # depends on previous test for setup + + fetch_with_recursion_abort superclone sub && + git -C superclone submodule status >out && + sed -e "s/^-//" -e "s/ sub$//" out >actual && + test_cmp expect actual +' + +test_expect_success 'recursive fetch after deinit a submodule' ' + # depends on previous test for setup + + git -C superclone submodule update --init sub && + git -C superclone submodule deinit -f sub && + + fetch_with_recursion_abort superclone sub && + git -C superclone submodule status >out && + sed -e "s/^-//" -e "s/ sub$//" out >actual && + test_cmp expect actual +' + test_done diff --git a/t/t5527-fetch-odd-refs.sh b/t/t5527-fetch-odd-refs.sh index 3b0cb98422..e2770e4541 100755 --- a/t/t5527-fetch-odd-refs.sh +++ b/t/t5527-fetch-odd-refs.sh @@ -1,17 +1,20 @@ #!/bin/sh test_description='test fetching of oddly-named refs' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # afterwards we will have: # HEAD - two -# refs/for/refs/heads/master - one -# refs/heads/master - three +# refs/for/refs/heads/main - one +# refs/heads/main - three test_expect_success 'setup repo with odd suffix ref' ' echo content >file && git add . && git commit -m one && - git update-ref refs/for/refs/heads/master HEAD && + git update-ref refs/for/refs/heads/main HEAD && echo content >>file && git commit -a -m two && echo content >>file && @@ -22,7 +25,7 @@ test_expect_success 'setup repo with odd suffix ref' ' test_expect_success 'suffix ref is ignored during fetch' ' git clone --bare file://"$PWD" suffix && echo three >expect && - git --git-dir=suffix log -1 --format=%s refs/heads/master >actual && + git --git-dir=suffix log -1 --format=%s refs/heads/main >actual && test_cmp expect actual ' @@ -33,7 +36,7 @@ test_expect_success 'try to create repo with absurdly long refname' ' ( cd long && test_commit long && - test_commit master + test_commit main ) && if git -C long update-ref refs/heads/$ref1440 long; then test_set_prereq LONG_REF @@ -46,7 +49,7 @@ test_expect_success LONG_REF 'fetch handles extremely long refname' ' git fetch long refs/heads/*:refs/remotes/long/* && cat >expect <<-\EOF && long - master + main EOF git for-each-ref --format="%(subject)" refs/remotes/long >actual && test_cmp expect actual @@ -55,7 +58,7 @@ test_expect_success LONG_REF 'fetch handles extremely long refname' ' test_expect_success LONG_REF 'push handles extremely long refname' ' git push long :refs/heads/$ref1440 && git -C long for-each-ref --format="%(subject)" refs/heads >actual && - echo master >expect && + echo main >expect && test_cmp expect actual ' diff --git a/t/t5528-push-default.sh b/t/t5528-push-default.sh index f0a287d97d..f280e00eb7 100755 --- a/t/t5528-push-default.sh +++ b/t/t5528-push-default.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='check various push.default settings' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup bare remotes' ' @@ -41,7 +44,7 @@ test_push_failure () { # $1 = success or failure # $2 = push.default value -# $3 = branch to check for actual output (master or foo) +# $3 = branch to check for actual output (main or foo) # $4 = [optional] switch to triangular workflow test_pushdefault_workflow () { workflow=central @@ -51,8 +54,8 @@ test_pushdefault_workflow () { pushdefault=parent2 fi test_expect_success "push.default = $2 $1 in $workflow workflows" " - test_config branch.master.remote parent1 && - test_config branch.master.merge refs/heads/foo && + test_config branch.main.remote parent1 && + test_config branch.main.merge refs/heads/foo && test_config remote.pushdefault $pushdefault && test_commit commit-for-$2${4+-triangular} && test_push_$1 $2 $3 ${4+repo2} @@ -60,32 +63,32 @@ test_pushdefault_workflow () { } test_expect_success '"upstream" pushes to configured upstream' ' - git checkout master && - test_config branch.master.remote parent1 && - test_config branch.master.merge refs/heads/foo && + git checkout main && + test_config branch.main.remote parent1 && + test_config branch.main.merge refs/heads/foo && test_commit two && test_push_success upstream foo ' test_expect_success '"upstream" does not push on unconfigured remote' ' - git checkout master && - test_unconfig branch.master.remote && + git checkout main && + test_unconfig branch.main.remote && test_commit three && test_push_failure upstream ' test_expect_success '"upstream" does not push on unconfigured branch' ' - git checkout master && - test_config branch.master.remote parent1 && - test_unconfig branch.master.merge && + git checkout main && + test_config branch.main.remote parent1 && + test_unconfig branch.main.merge && test_commit four && test_push_failure upstream ' test_expect_success '"upstream" does not push when remotes do not match' ' - git checkout master && - test_config branch.master.remote parent1 && - test_config branch.master.merge refs/heads/foo && + git checkout main && + test_config branch.main.remote parent1 && + test_config branch.main.merge refs/heads/foo && test_config push.default upstream && test_commit five && test_must_fail git push parent2 @@ -121,99 +124,99 @@ test_expect_success 'push from/to new branch with current creates remote branch' ' test_expect_success 'push to existing branch, with no upstream configured' ' - test_config branch.master.remote repo1 && - git checkout master && + test_config branch.main.remote repo1 && + git checkout main && test_push_failure simple && test_push_failure upstream ' test_expect_success 'push to existing branch, upstream configured with same name' ' - test_config branch.master.remote repo1 && - test_config branch.master.merge refs/heads/master && - git checkout master && + test_config branch.main.remote repo1 && + test_config branch.main.merge refs/heads/main && + git checkout main && test_commit six && - test_push_success upstream master && + test_push_success upstream main && test_commit seven && - test_push_success simple master + test_push_success simple main ' test_expect_success 'push to existing branch, upstream configured with different name' ' - test_config branch.master.remote repo1 && - test_config branch.master.merge refs/heads/other-name && - git checkout master && + test_config branch.main.remote repo1 && + test_config branch.main.merge refs/heads/other-name && + git checkout main && test_commit eight && test_push_success upstream other-name && test_commit nine && test_push_failure simple && git --git-dir=repo1 log -1 --format="%h %s" "other-name" >expect-other-name && - test_push_success current master && + test_push_success current main && git --git-dir=repo1 log -1 --format="%h %s" "other-name" >actual-other-name && test_cmp expect-other-name actual-other-name ' -# We are on 'master', which integrates with 'foo' from parent1 +# We are on 'main', which integrates with 'foo' from parent1 # remote (set in test_pushdefault_workflow helper). Push to # parent1 in centralized, and push to parent2 in triangular workflow. -# The parent1 repository has 'master' and 'foo' branches, while -# the parent2 repository has only 'master' branch. +# The parent1 repository has 'main' and 'foo' branches, while +# the parent2 repository has only 'main' branch. # # test_pushdefault_workflow() arguments: # $1 = success or failure # $2 = push.default value -# $3 = branch to check for actual output (master or foo) +# $3 = branch to check for actual output (main or foo) # $4 = [optional] switch to triangular workflow -# update parent1's master (which is not our upstream) -test_pushdefault_workflow success current master +# update parent1's main (which is not our upstream) +test_pushdefault_workflow success current main # update parent1's foo (which is our upstream) test_pushdefault_workflow success upstream foo # upstream is foo which is not the name of the current branch -test_pushdefault_workflow failure simple master +test_pushdefault_workflow failure simple main -# master and foo are updated -test_pushdefault_workflow success matching master +# main and foo are updated +test_pushdefault_workflow success matching main -# master is updated -test_pushdefault_workflow success current master triangular +# main is updated +test_pushdefault_workflow success current main triangular # upstream mode cannot be used in triangular test_pushdefault_workflow failure upstream foo triangular # in triangular, 'simple' works as 'current' and update the branch # with the same name. -test_pushdefault_workflow success simple master triangular +test_pushdefault_workflow success simple main triangular -# master is updated (parent2 does not have foo) -test_pushdefault_workflow success matching master triangular +# main is updated (parent2 does not have foo) +test_pushdefault_workflow success matching main triangular # default tests, when no push-default is specified. This # should behave the same as "simple" in non-triangular # settings, and as "current" otherwise. test_expect_success 'default behavior allows "simple" push' ' - test_config branch.master.remote parent1 && - test_config branch.master.merge refs/heads/master && + test_config branch.main.remote parent1 && + test_config branch.main.merge refs/heads/main && test_config remote.pushdefault parent1 && - test_commit default-master-master && - test_push_success "" master + test_commit default-main-main && + test_push_success "" main ' test_expect_success 'default behavior rejects non-simple push' ' - test_config branch.master.remote parent1 && - test_config branch.master.merge refs/heads/foo && + test_config branch.main.remote parent1 && + test_config branch.main.merge refs/heads/foo && test_config remote.pushdefault parent1 && - test_commit default-master-foo && + test_commit default-main-foo && test_push_failure "" ' test_expect_success 'default triangular behavior acts like "current"' ' - test_config branch.master.remote parent1 && - test_config branch.master.merge refs/heads/foo && + test_config branch.main.remote parent1 && + test_config branch.main.merge refs/heads/foo && test_config remote.pushdefault parent2 && test_commit default-triangular && - test_push_success "" master repo2 + test_push_success "" main repo2 ' test_done diff --git a/t/t5529-push-errors.sh b/t/t5529-push-errors.sh index 9871307fd4..ce85fd30ad 100755 --- a/t/t5529-push-errors.sh +++ b/t/t5529-push-errors.sh @@ -32,7 +32,7 @@ test_expect_success 'detect missing branches early' ' test_expect_success 'detect missing sha1 expressions early' ' echo no >rp-ran && echo no >expect && - test_must_fail git push origin master~2:master && + test_must_fail git push origin main~2:main && test_cmp expect rp-ran ' diff --git a/t/t5530-upload-pack-error.sh b/t/t5530-upload-pack-error.sh index 9dd2d2457a..7c1460eaa9 100755 --- a/t/t5530-upload-pack-error.sh +++ b/t/t5530-upload-pack-error.sh @@ -115,7 +115,7 @@ test_expect_success 'create empty repository' ' test_expect_success 'fetch fails' ' - test_must_fail git fetch .. master + test_must_fail git fetch .. main ' diff --git a/t/t5531-deep-submodule-push.sh b/t/t5531-deep-submodule-push.sh index 4ad059e6be..d573ca496a 100755 --- a/t/t5531-deep-submodule-push.sh +++ b/t/t5531-deep-submodule-push.sh @@ -2,6 +2,9 @@ test_description='test push with submodules' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -30,7 +33,7 @@ test_expect_success setup ' test_expect_success 'push works with recorded gitlink' ' ( cd work && - git push ../pub.git master + git push ../pub.git main ) ' @@ -45,7 +48,7 @@ test_expect_success 'push if submodule has no remote' ' cd work && git add gar/bage && git commit -m "Second commit for gar/bage" && - git push --recurse-submodules=check ../pub.git master + git push --recurse-submodules=check ../pub.git main ) ' @@ -66,21 +69,21 @@ test_expect_success 'push fails if submodule commit not on remote' ' git commit -m "Third commit for gar/bage" && # the push should fail with --recurse-submodules=check # on the command line... - test_must_fail git push --recurse-submodules=check ../pub.git master && + test_must_fail git push --recurse-submodules=check ../pub.git main && # ...or if specified in the configuration.. - test_must_fail git -c push.recurseSubmodules=check push ../pub.git master + test_must_fail git -c push.recurseSubmodules=check push ../pub.git main ) ' test_expect_success 'push succeeds after commit was pushed to remote' ' ( cd work/gar/bage && - git push origin master + git push origin main ) && ( cd work && - git push --recurse-submodules=check ../pub.git master + git push --recurse-submodules=check ../pub.git main ) ' @@ -95,13 +98,13 @@ test_expect_success 'push succeeds if submodule commit not on remote but using o cd work && git add gar/bage && git commit -m "Recurse on-demand on command line for gar/bage" && - git push --recurse-submodules=on-demand ../pub.git master && + git push --recurse-submodules=on-demand ../pub.git main && # Check that the supermodule commit got there git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && + git diff --quiet FETCH_HEAD main && # Check that the submodule commit got there too cd gar/bage && - git diff --quiet origin/master master + git diff --quiet origin/main main ) ' @@ -116,13 +119,13 @@ test_expect_success 'push succeeds if submodule commit not on remote but using o cd work && git add gar/bage && git commit -m "Recurse on-demand from config for gar/bage" && - git -c push.recurseSubmodules=on-demand push ../pub.git master && + git -c push.recurseSubmodules=on-demand push ../pub.git main && # Check that the supermodule commit got there git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && + git diff --quiet FETCH_HEAD main && # Check that the submodule commit got there too cd gar/bage && - git diff --quiet origin/master master + git diff --quiet origin/main main ) ' @@ -137,13 +140,13 @@ test_expect_success 'push succeeds if submodule commit not on remote but using a cd work && git add gar/bage && git commit -m "Recurse submodule.recurse from config for gar/bage" && - git -c submodule.recurse push ../pub.git master && + git -c submodule.recurse push ../pub.git main && # Check that the supermodule commit got there git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && + git diff --quiet FETCH_HEAD main && # Check that the submodule commit got there too cd gar/bage && - git diff --quiet origin/master master + git diff --quiet origin/main main ) ' @@ -161,34 +164,34 @@ test_expect_success 'push recurse-submodules on command line overrides config' ' # Ensure that we can override on-demand in the config # to just check submodules - test_must_fail git -c push.recurseSubmodules=on-demand push --recurse-submodules=check ../pub.git master && + test_must_fail git -c push.recurseSubmodules=on-demand push --recurse-submodules=check ../pub.git main && # Check that the supermodule commit did not get there git fetch ../pub.git && - git diff --quiet FETCH_HEAD master^ && + git diff --quiet FETCH_HEAD main^ && # Check that the submodule commit did not get there - (cd gar/bage && git diff --quiet origin/master master^) && + (cd gar/bage && git diff --quiet origin/main main^) && # Ensure that we can override check in the config to # disable submodule recursion entirely - (cd gar/bage && git diff --quiet origin/master master^) && - git -c push.recurseSubmodules=on-demand push --recurse-submodules=no ../pub.git master && + (cd gar/bage && git diff --quiet origin/main main^) && + git -c push.recurseSubmodules=on-demand push --recurse-submodules=no ../pub.git main && git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && - (cd gar/bage && git diff --quiet origin/master master^) && + git diff --quiet FETCH_HEAD main && + (cd gar/bage && git diff --quiet origin/main main^) && # Ensure that we can override check in the config to # disable submodule recursion entirely (alternative form) - git -c push.recurseSubmodules=on-demand push --no-recurse-submodules ../pub.git master && + git -c push.recurseSubmodules=on-demand push --no-recurse-submodules ../pub.git main && git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && - (cd gar/bage && git diff --quiet origin/master master^) && + git diff --quiet FETCH_HEAD main && + (cd gar/bage && git diff --quiet origin/main main^) && # Ensure that we can override check in the config to # push the submodule too - git -c push.recurseSubmodules=check push --recurse-submodules=on-demand ../pub.git master && + git -c push.recurseSubmodules=check push --recurse-submodules=on-demand ../pub.git main && git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && - (cd gar/bage && git diff --quiet origin/master master) + git diff --quiet FETCH_HEAD main && + (cd gar/bage && git diff --quiet origin/main main) ) ' @@ -205,31 +208,31 @@ test_expect_success 'push recurse-submodules last one wins on command line' ' git commit -m "Recurse on command-line overriding earlier command-line for gar/bage" && # should result in "check" - test_must_fail git push --recurse-submodules=on-demand --recurse-submodules=check ../pub.git master && + test_must_fail git push --recurse-submodules=on-demand --recurse-submodules=check ../pub.git main && # Check that the supermodule commit did not get there git fetch ../pub.git && - git diff --quiet FETCH_HEAD master^ && + git diff --quiet FETCH_HEAD main^ && # Check that the submodule commit did not get there - (cd gar/bage && git diff --quiet origin/master master^) && + (cd gar/bage && git diff --quiet origin/main main^) && # should result in "no" - git push --recurse-submodules=on-demand --recurse-submodules=no ../pub.git master && + git push --recurse-submodules=on-demand --recurse-submodules=no ../pub.git main && # Check that the supermodule commit did get there git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && + git diff --quiet FETCH_HEAD main && # Check that the submodule commit did not get there - (cd gar/bage && git diff --quiet origin/master master^) && + (cd gar/bage && git diff --quiet origin/main main^) && # should result in "no" - git push --recurse-submodules=on-demand --no-recurse-submodules ../pub.git master && + git push --recurse-submodules=on-demand --no-recurse-submodules ../pub.git main && # Check that the submodule commit did not get there - (cd gar/bage && git diff --quiet origin/master master^) && + (cd gar/bage && git diff --quiet origin/main main^) && # But the options in the other order should push the submodule - git push --recurse-submodules=check --recurse-submodules=on-demand ../pub.git master && + git push --recurse-submodules=check --recurse-submodules=on-demand ../pub.git main && # Check that the submodule commit did get there git fetch ../pub.git && - (cd gar/bage && git diff --quiet origin/master master) + (cd gar/bage && git diff --quiet origin/main main) ) ' @@ -244,13 +247,13 @@ test_expect_success 'push succeeds if submodule commit not on remote using on-de cd work && git add gar/bage && git commit -m "Recurse on-demand on command-line overriding config for gar/bage" && - git -c push.recurseSubmodules=check push --recurse-submodules=on-demand ../pub.git master && + git -c push.recurseSubmodules=check push --recurse-submodules=on-demand ../pub.git main && # Check that the supermodule commit got there git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && + git diff --quiet FETCH_HEAD main && # Check that the submodule commit got there cd gar/bage && - git diff --quiet origin/master master + git diff --quiet origin/main main ) ' @@ -265,14 +268,14 @@ test_expect_success 'push succeeds if submodule commit disabling recursion from cd work && git add gar/bage && git commit -m "Recurse disable on command-line overriding config for gar/bage" && - git -c push.recurseSubmodules=check push --recurse-submodules=no ../pub.git master && + git -c push.recurseSubmodules=check push --recurse-submodules=no ../pub.git main && # Check that the supermodule commit got there git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && + git diff --quiet FETCH_HEAD main && # But that the submodule commit did not - ( cd gar/bage && git diff --quiet origin/master master^ ) && + ( cd gar/bage && git diff --quiet origin/main main^ ) && # Now push it to avoid confusing future tests - git push --recurse-submodules=on-demand ../pub.git master + git push --recurse-submodules=on-demand ../pub.git main ) ' @@ -287,14 +290,14 @@ test_expect_success 'push succeeds if submodule commit disabling recursion from cd work && git add gar/bage && git commit -m "Recurse disable on command-line alternative overriding config for gar/bage" && - git -c push.recurseSubmodules=check push --no-recurse-submodules ../pub.git master && + git -c push.recurseSubmodules=check push --no-recurse-submodules ../pub.git main && # Check that the supermodule commit got there git fetch ../pub.git && - git diff --quiet FETCH_HEAD master && + git diff --quiet FETCH_HEAD main && # But that the submodule commit did not - ( cd gar/bage && git diff --quiet origin/master master^ ) && + ( cd gar/bage && git diff --quiet origin/main main^ ) && # Now push it to avoid confusing future tests - git push --recurse-submodules=on-demand ../pub.git master + git push --recurse-submodules=on-demand ../pub.git main ) ' @@ -304,7 +307,7 @@ test_expect_success 'submodule entry pointing at a tag is error' ' git -C work update-index --cacheinfo 160000 "$tag" gar/bage && git -C work commit -m "bad commit" && test_when_finished "git -C work reset --hard HEAD^" && - test_must_fail git -C work push --recurse-submodules=on-demand ../pub.git master 2>err && + test_must_fail git -C work push --recurse-submodules=on-demand ../pub.git main 2>err && test_i18ngrep "is a tag, not a commit" err ' @@ -319,9 +322,9 @@ test_expect_success 'push fails if recurse submodules option passed as yes' ' cd work && git add gar/bage && git commit -m "Recurse push fails if recurse submodules option passed as yes for gar/bage" && - test_must_fail git push --recurse-submodules=yes ../pub.git master && - test_must_fail git -c push.recurseSubmodules=yes push ../pub.git master && - git push --recurse-submodules=on-demand ../pub.git master + test_must_fail git push --recurse-submodules=yes ../pub.git main && + test_must_fail git -c push.recurseSubmodules=yes push ../pub.git main && + git push --recurse-submodules=on-demand ../pub.git main ) ' @@ -363,7 +366,7 @@ test_expect_success 'push succeeds if submodule has no remote and is on the firs ) && git add b && git commit -m "added submodule" && - git push --recurse-submodules=check origin master + git push --recurse-submodules=check origin main ) ' @@ -372,21 +375,21 @@ test_expect_success 'push unpushed submodules when not needed' ' cd work && ( cd gar/bage && - git checkout master && + git checkout main && >junk5 && git add junk5 && git commit -m "Fifth junk" && git push && - git rev-parse origin/master >../../../expected + git rev-parse origin/main >../../../expected ) && - git checkout master && + git checkout main && git add gar/bage && git commit -m "Fifth commit for gar/bage" && - git push --recurse-submodules=on-demand ../pub.git master + git push --recurse-submodules=on-demand ../pub.git main ) && ( cd submodule.git && - git rev-parse master >../actual + git rev-parse main >../actual ) && test_cmp expected actual ' @@ -394,7 +397,7 @@ test_expect_success 'push unpushed submodules when not needed' ' test_expect_success 'push unpushed submodules when not needed 2' ' ( cd submodule.git && - git rev-parse master >../expected + git rev-parse main >../expected ) && ( cd work && @@ -407,11 +410,11 @@ test_expect_success 'push unpushed submodules when not needed 2' ' >junk2 && git add junk2 && git commit -m "Second junk for work" && - git push --recurse-submodules=on-demand ../pub.git master + git push --recurse-submodules=on-demand ../pub.git main ) && ( cd submodule.git && - git rev-parse master >../actual + git rev-parse main >../actual ) && test_cmp expected actual ' @@ -421,20 +424,20 @@ test_expect_success 'push unpushed submodules recursively' ' cd work && ( cd gar/bage && - git checkout master && + git checkout main && > junk7 && git add junk7 && git commit -m "Seventh junk" && - git rev-parse master >../../../expected + git rev-parse main >../../../expected ) && - git checkout master && + git checkout main && git add gar/bage && git commit -m "Seventh commit for gar/bage" && - git push --recurse-submodules=on-demand ../pub.git master + git push --recurse-submodules=on-demand ../pub.git main ) && ( cd submodule.git && - git rev-parse master >../actual + git rev-parse main >../actual ) && test_cmp expected actual ' @@ -444,64 +447,64 @@ test_expect_success 'push unpushable submodule recursively fails' ' cd work && ( cd gar/bage && - git rev-parse origin/master >../../../expected && - git checkout master~0 && + git rev-parse origin/main >../../../expected && + git checkout main~0 && > junk8 && git add junk8 && git commit -m "Eighth junk" ) && git add gar/bage && git commit -m "Eighth commit for gar/bage" && - test_must_fail git push --recurse-submodules=on-demand ../pub.git master + test_must_fail git push --recurse-submodules=on-demand ../pub.git main ) && ( cd submodule.git && - git rev-parse master >../actual + git rev-parse main >../actual ) && - test_when_finished git -C work reset --hard master^ && + test_when_finished git -C work reset --hard main^ && test_cmp expected actual ' test_expect_success 'push --dry-run does not recursively update submodules' ' ( cd work/gar/bage && - git checkout master && - git rev-parse master >../../../expected_submodule && + git checkout main && + git rev-parse main >../../../expected_submodule && > junk9 && git add junk9 && git commit -m "Ninth junk" && # Go up to 'work' directory cd ../.. && - git checkout master && - git rev-parse master >../expected_pub && + git checkout main && + git rev-parse main >../expected_pub && git add gar/bage && git commit -m "Ninth commit for gar/bage" && - git push --dry-run --recurse-submodules=on-demand ../pub.git master + git push --dry-run --recurse-submodules=on-demand ../pub.git main ) && - git -C submodule.git rev-parse master >actual_submodule && - git -C pub.git rev-parse master >actual_pub && + git -C submodule.git rev-parse main >actual_submodule && + git -C pub.git rev-parse main >actual_pub && test_cmp expected_pub actual_pub && test_cmp expected_submodule actual_submodule ' test_expect_success 'push --dry-run does not recursively update submodules' ' - git -C work push --dry-run --recurse-submodules=only ../pub.git master && + git -C work push --dry-run --recurse-submodules=only ../pub.git main && - git -C submodule.git rev-parse master >actual_submodule && - git -C pub.git rev-parse master >actual_pub && + git -C submodule.git rev-parse main >actual_submodule && + git -C pub.git rev-parse main >actual_pub && test_cmp expected_pub actual_pub && test_cmp expected_submodule actual_submodule ' test_expect_success 'push only unpushed submodules recursively' ' - git -C work/gar/bage rev-parse master >expected_submodule && - git -C pub.git rev-parse master >expected_pub && + git -C work/gar/bage rev-parse main >expected_submodule && + git -C pub.git rev-parse main >expected_pub && - git -C work push --recurse-submodules=only ../pub.git master && + git -C work push --recurse-submodules=only ../pub.git main && - git -C submodule.git rev-parse master >actual_submodule && - git -C pub.git rev-parse master >actual_pub && + git -C submodule.git rev-parse main >actual_submodule && + git -C pub.git rev-parse main >actual_pub && test_cmp expected_submodule actual_submodule && test_cmp expected_pub actual_pub ' @@ -517,14 +520,14 @@ test_expect_success 'push propagating the remotes name to a submodule' ' git -C work commit -m "Tenth junk added to gar/bage" && # Fails when submodule does not have a matching remote - test_must_fail git -C work push --recurse-submodules=on-demand pub master && + test_must_fail git -C work push --recurse-submodules=on-demand pub main && # Succeeds when submodules has matching remote and refspec - git -C work push --recurse-submodules=on-demand origin master && + git -C work push --recurse-submodules=on-demand origin main && - git -C submodule.git rev-parse master >actual_submodule && - git -C pub.git rev-parse master >actual_pub && - git -C work/gar/bage rev-parse master >expected_submodule && - git -C work rev-parse master >expected_pub && + git -C submodule.git rev-parse main >actual_submodule && + git -C pub.git rev-parse main >actual_pub && + git -C work/gar/bage rev-parse main >expected_submodule && + git -C work rev-parse main >expected_pub && test_cmp expected_submodule actual_submodule && test_cmp expected_pub actual_pub ' @@ -548,7 +551,7 @@ test_expect_success 'push propagating refspec to a submodule' ' test_must_fail git -C work push --recurse-submodules=on-demand origin \ HEAD:refs/heads/branch2 && - git -C work/gar/bage branch branch2 master && + git -C work/gar/bage branch branch2 main && git -C work push --recurse-submodules=on-demand origin branch2 && git -C submodule.git rev-parse branch2 >actual_submodule && diff --git a/t/t5533-push-cas.sh b/t/t5533-push-cas.sh index 7813e8470e..cba26a872d 100755 --- a/t/t5533-push-cas.sh +++ b/t/t5533-push-cas.sh @@ -2,6 +2,9 @@ test_description='compare & swap push force/delete safety' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh setup_srcdst_basic () { @@ -29,22 +32,22 @@ setup_src_dup_dst () { ( cd dup && git fetch && - git merge origin/master && - git switch -c branch master~2 && + git merge origin/main && + git switch -c branch main~2 && test_commit D && test_commit E && git push origin --all ) && ( cd src && - git switch master && + git switch main && git fetch --all && git branch branch --track origin/branch && - git rebase origin/master + git rebase origin/main ) && ( cd dup && - git switch master && + git switch main && test_commit F && test_commit G && git switch branch && @@ -65,11 +68,11 @@ test_expect_success 'push to update (protected)' ' ( cd dst && test_commit D && - test_must_fail git push --force-with-lease=master:master origin master 2>err && + test_must_fail git push --force-with-lease=main:main origin main 2>err && grep "stale info" err ) && - git ls-remote . refs/heads/master >expect && - git ls-remote src refs/heads/master >actual && + git ls-remote . refs/heads/main >expect && + git ls-remote src refs/heads/main >actual && test_cmp expect actual ' @@ -78,11 +81,11 @@ test_expect_success 'push to update (protected, forced)' ' ( cd dst && test_commit D && - git push --force --force-with-lease=master:master origin master 2>err && + git push --force --force-with-lease=main:main origin main 2>err && grep "forced update" err ) && - git ls-remote dst refs/heads/master >expect && - git ls-remote src refs/heads/master >actual && + git ls-remote dst refs/heads/main >expect && + git ls-remote src refs/heads/main >actual && test_cmp expect actual ' @@ -90,20 +93,20 @@ test_expect_success 'push to update (protected, tracking)' ' setup_srcdst_basic && ( cd src && - git checkout master && + git checkout main && test_commit D && git checkout HEAD^0 ) && - git ls-remote src refs/heads/master >expect && + git ls-remote src refs/heads/main >expect && ( cd dst && test_commit E && - git ls-remote . refs/remotes/origin/master >expect && - test_must_fail git push --force-with-lease=master origin master && - git ls-remote . refs/remotes/origin/master >actual && + git ls-remote . refs/remotes/origin/main >expect && + test_must_fail git push --force-with-lease=main origin main && + git ls-remote . refs/remotes/origin/main >actual && test_cmp expect actual ) && - git ls-remote src refs/heads/master >actual && + git ls-remote src refs/heads/main >actual && test_cmp expect actual ' @@ -111,18 +114,18 @@ test_expect_success 'push to update (protected, tracking, forced)' ' setup_srcdst_basic && ( cd src && - git checkout master && + git checkout main && test_commit D && git checkout HEAD^0 ) && ( cd dst && test_commit E && - git ls-remote . refs/remotes/origin/master >expect && - git push --force --force-with-lease=master origin master + git ls-remote . refs/remotes/origin/main >expect && + git push --force --force-with-lease=main origin main ) && - git ls-remote dst refs/heads/master >expect && - git ls-remote src refs/heads/master >actual && + git ls-remote dst refs/heads/main >expect && + git ls-remote src refs/heads/main >actual && test_cmp expect actual ' @@ -131,10 +134,10 @@ test_expect_success 'push to update (allowed)' ' ( cd dst && test_commit D && - git push --force-with-lease=master:master^ origin master + git push --force-with-lease=main:main^ origin main ) && - git ls-remote dst refs/heads/master >expect && - git ls-remote src refs/heads/master >actual && + git ls-remote dst refs/heads/main >expect && + git ls-remote src refs/heads/main >actual && test_cmp expect actual ' @@ -143,11 +146,11 @@ test_expect_success 'push to update (allowed, tracking)' ' ( cd dst && test_commit D && - git push --force-with-lease=master origin master 2>err && + git push --force-with-lease=main origin main 2>err && ! grep "forced update" err ) && - git ls-remote dst refs/heads/master >expect && - git ls-remote src refs/heads/master >actual && + git ls-remote dst refs/heads/main >expect && + git ls-remote src refs/heads/main >actual && test_cmp expect actual ' @@ -157,22 +160,22 @@ test_expect_success 'push to update (allowed even though no-ff)' ' cd dst && git reset --hard HEAD^ && test_commit D && - git push --force-with-lease=master origin master 2>err && + git push --force-with-lease=main origin main 2>err && grep "forced update" err ) && - git ls-remote dst refs/heads/master >expect && - git ls-remote src refs/heads/master >actual && + git ls-remote dst refs/heads/main >expect && + git ls-remote src refs/heads/main >actual && test_cmp expect actual ' test_expect_success 'push to delete (protected)' ' setup_srcdst_basic && - git ls-remote src refs/heads/master >expect && + git ls-remote src refs/heads/main >expect && ( cd dst && - test_must_fail git push --force-with-lease=master:master^ origin :master + test_must_fail git push --force-with-lease=main:main^ origin :main ) && - git ls-remote src refs/heads/master >actual && + git ls-remote src refs/heads/main >actual && test_cmp expect actual ' @@ -180,9 +183,9 @@ test_expect_success 'push to delete (protected, forced)' ' setup_srcdst_basic && ( cd dst && - git push --force --force-with-lease=master:master^ origin :master + git push --force --force-with-lease=main:main^ origin :main ) && - git ls-remote src refs/heads/master >actual && + git ls-remote src refs/heads/main >actual && test_must_be_empty actual ' @@ -190,10 +193,10 @@ test_expect_success 'push to delete (allowed)' ' setup_srcdst_basic && ( cd dst && - git push --force-with-lease=master origin :master 2>err && + git push --force-with-lease=main origin :main 2>err && grep deleted err ) && - git ls-remote src refs/heads/master >actual && + git ls-remote src refs/heads/main >actual && test_must_be_empty actual ' @@ -201,12 +204,12 @@ test_expect_success 'cover everything with default force-with-lease (protected)' setup_srcdst_basic && ( cd src && - git branch naster master^ + git branch nain main^ ) && git ls-remote src refs/heads/\* >expect && ( cd dst && - test_must_fail git push --force-with-lease origin master master:naster + test_must_fail git push --force-with-lease origin main main:nain ) && git ls-remote src refs/heads/\* >actual && test_cmp expect actual @@ -216,16 +219,16 @@ test_expect_success 'cover everything with default force-with-lease (allowed)' ' setup_srcdst_basic && ( cd src && - git branch naster master^ + git branch nain main^ ) && ( cd dst && git fetch && - git push --force-with-lease origin master master:naster + git push --force-with-lease origin main main:nain ) && - git ls-remote dst refs/heads/master | - sed -e "s/master/naster/" >expect && - git ls-remote src refs/heads/naster >actual && + git ls-remote dst refs/heads/main | + sed -e "s/main/nain/" >expect && + git ls-remote src refs/heads/nain >actual && test_cmp expect actual ' @@ -233,7 +236,7 @@ test_expect_success 'new branch covered by force-with-lease' ' setup_srcdst_basic && ( cd dst && - git branch branch master && + git branch branch main && git push --force-with-lease=branch origin branch ) && git ls-remote dst refs/heads/branch >expect && @@ -245,7 +248,7 @@ test_expect_success 'new branch covered by force-with-lease (explicit)' ' setup_srcdst_basic && ( cd dst && - git branch branch master && + git branch branch main && git push --force-with-lease=branch: origin branch ) && git ls-remote dst refs/heads/branch >expect && @@ -257,12 +260,12 @@ test_expect_success 'new branch already exists' ' setup_srcdst_basic && ( cd src && - git checkout -b branch master && + git checkout -b branch main && test_commit F ) && ( cd dst && - git branch branch master && + git branch branch main && test_must_fail git push --force-with-lease=branch: origin branch ) ' @@ -277,7 +280,7 @@ test_expect_success 'background updates of REMOTE can be mitigated with a non-up cd dst && test_commit G && git remote add origin-push ../src.bare && - git push origin-push master:master + git push origin-push main:main ) && git clone --no-local src.bare dst2 && test_when_finished "rm -rf dst2" && @@ -299,58 +302,58 @@ test_expect_success 'background updates of REMOTE can be mitigated with a non-up test_expect_success 'background updates to remote can be mitigated with "--force-if-includes"' ' setup_src_dup_dst && test_when_finished "rm -fr dst src dup" && - git ls-remote dst refs/heads/master >expect.master && + git ls-remote dst refs/heads/main >expect.main && git ls-remote dst refs/heads/branch >expect.branch && ( cd src && git switch branch && test_commit I && - git switch master && + git switch main && test_commit J && git fetch --all && test_must_fail git push --force-with-lease --force-if-includes --all ) && - git ls-remote dst refs/heads/master >actual.master && + git ls-remote dst refs/heads/main >actual.main && git ls-remote dst refs/heads/branch >actual.branch && - test_cmp expect.master actual.master && + test_cmp expect.main actual.main && test_cmp expect.branch actual.branch ' test_expect_success 'background updates to remote can be mitigated with "push.useForceIfIncludes"' ' setup_src_dup_dst && test_when_finished "rm -fr dst src dup" && - git ls-remote dst refs/heads/master >expect.master && + git ls-remote dst refs/heads/main >expect.main && ( cd src && git switch branch && test_commit I && - git switch master && + git switch main && test_commit J && git fetch --all && git config --local push.useForceIfIncludes true && - test_must_fail git push --force-with-lease=master origin master + test_must_fail git push --force-with-lease=main origin main ) && - git ls-remote dst refs/heads/master >actual.master && - test_cmp expect.master actual.master + git ls-remote dst refs/heads/main >actual.main && + test_cmp expect.main actual.main ' test_expect_success '"--force-if-includes" should be disabled for --force-with-lease="<refname>:<expect>"' ' setup_src_dup_dst && test_when_finished "rm -fr dst src dup" && - git ls-remote dst refs/heads/master >expect.master && + git ls-remote dst refs/heads/main >expect.main && ( cd src && git switch branch && test_commit I && - git switch master && + git switch main && test_commit J && - remote_head="$(git rev-parse refs/remotes/origin/master)" && + remote_head="$(git rev-parse refs/remotes/origin/main)" && git fetch --all && - test_must_fail git push --force-if-includes --force-with-lease="master:$remote_head" 2>err && + test_must_fail git push --force-if-includes --force-with-lease="main:$remote_head" 2>err && grep "stale info" err ) && - git ls-remote dst refs/heads/master >actual.master && - test_cmp expect.master actual.master + git ls-remote dst refs/heads/main >actual.main && + test_cmp expect.main actual.main ' test_expect_success '"--force-if-includes" should allow forced update after a rebase ("pull --rebase")' ' @@ -360,10 +363,10 @@ test_expect_success '"--force-if-includes" should allow forced update after a re cd src && git switch branch && test_commit I && - git switch master && + git switch main && test_commit J && - git pull --rebase origin master && - git push --force-if-includes --force-with-lease="master" + git pull --rebase origin main && + git push --force-if-includes --force-with-lease="main" ) ' @@ -374,11 +377,11 @@ test_expect_success '"--force-if-includes" should allow forced update after a re cd src && git switch branch && test_commit I && - git switch master && + git switch main && test_commit J && - git pull --rebase origin master && + git pull --rebase origin main && git rebase --onto HEAD~4 HEAD~1 && - git push --force-if-includes --force-with-lease="master" + git push --force-if-includes --force-with-lease="main" ) ' diff --git a/t/t5534-push-signed.sh b/t/t5534-push-signed.sh index af0385fb89..bba768f5de 100755 --- a/t/t5534-push-signed.sh +++ b/t/t5534-push-signed.sh @@ -2,6 +2,9 @@ test_description='signed push' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-gpg.sh @@ -9,11 +12,11 @@ prepare_dst () { rm -fr dst && test_create_repo dst && - git push dst master:noop master:ff master:noff + git push dst main:noop main:ff main:noff } test_expect_success setup ' - # master, ff and noff branches pointing at the same commit + # main, ff and noff branches pointing at the same commit test_tick && git commit --allow-empty -m initial && diff --git a/t/t5537-fetch-shallow.sh b/t/t5537-fetch-shallow.sh index a55202d2d3..11d5ea54a9 100755 --- a/t/t5537-fetch-shallow.sh +++ b/t/t5537-fetch-shallow.sh @@ -2,6 +2,9 @@ test_description='fetch/clone from a shallow clone' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh commit() { @@ -49,7 +52,7 @@ test_expect_success 'fetch from shallow clone' ' cd shallow2 && git fetch && git fsck && - git log --format=%s origin/master >actual && + git log --format=%s origin/main >actual && test_write_lines 5 4 3 >expect && test_cmp expect actual ) @@ -64,7 +67,7 @@ test_expect_success 'fetch --depth from shallow clone' ' cd shallow2 && git fetch --depth=2 && git fsck && - git log --format=%s origin/master >actual && + git log --format=%s origin/main >actual && test_write_lines 6 5 >expect && test_cmp expect actual ) @@ -75,7 +78,7 @@ test_expect_success 'fetch --unshallow from shallow clone' ' cd shallow2 && git fetch --unshallow && git fsck && - git log --format=%s origin/master >actual && + git log --format=%s origin/main >actual && test_write_lines 6 5 4 3 >expect && test_cmp expect actual ) @@ -89,7 +92,7 @@ test_expect_success 'fetch --unshallow from a full clone' ' test_write_lines 4 3 >expect && test_cmp expect actual && git -c fetch.writeCommitGraph fetch --unshallow && - git log origin/master --format=%s >actual && + git log origin/main --format=%s >actual && test_write_lines 4 3 2 1 >expect && test_cmp expect actual ) @@ -104,9 +107,9 @@ test_expect_success 'fetch something upstream has but hidden by clients shallow git commit -m add-1-back && ( cd shallow2 && - git fetch ../.git +refs/heads/master:refs/remotes/top/master && + git fetch ../.git +refs/heads/main:refs/remotes/top/main && git fsck && - git log --format=%s top/master >actual && + git log --format=%s top/main >actual && test_write_lines add-1-back 4 3 >expect && test_cmp expect actual ) && @@ -135,7 +138,7 @@ test_expect_success 'fetch that requires changes in .git/shallow is filtered' ' test_expect_success 'fetch --update-shallow' ' ( cd shallow && - git checkout master && + git checkout main && commit 7 && git tag -m foo heavy-tag HEAD^ && git tag light-tag HEAD^:tracked @@ -146,13 +149,13 @@ test_expect_success 'fetch --update-shallow' ' git fsck && git for-each-ref --sort=refname --format="%(refname)" >actual.refs && cat <<-\EOF >expect.refs && - refs/remotes/shallow/master + refs/remotes/shallow/main refs/remotes/shallow/no-shallow refs/tags/heavy-tag refs/tags/light-tag EOF test_cmp expect.refs actual.refs && - git log --format=%s shallow/master >actual && + git log --format=%s shallow/main >actual && test_write_lines 7 6 5 4 3 >expect && test_cmp expect actual ) @@ -161,7 +164,7 @@ test_expect_success 'fetch --update-shallow' ' test_expect_success 'fetch --update-shallow (with fetch.writeCommitGraph)' ' ( cd shallow && - git checkout master && + git checkout main && commit 8 && git tag -m foo heavy-tag-for-graph HEAD^ && git tag light-tag-for-graph HEAD^:tracked @@ -173,7 +176,7 @@ test_expect_success 'fetch --update-shallow (with fetch.writeCommitGraph)' ' git fsck && git for-each-ref --sort=refname --format="%(refname)" >actual.refs && cat <<-EOF >expect.refs && - refs/remotes/shallow/master + refs/remotes/shallow/main refs/remotes/shallow/no-shallow refs/tags/heavy-tag refs/tags/heavy-tag-for-graph @@ -181,7 +184,7 @@ test_expect_success 'fetch --update-shallow (with fetch.writeCommitGraph)' ' refs/tags/light-tag-for-graph EOF test_cmp expect.refs actual.refs && - git log --format=%s shallow/master >actual && + git log --format=%s shallow/main >actual && test_write_lines 8 7 6 5 4 3 >expect && test_cmp expect actual ) @@ -206,7 +209,7 @@ test_expect_success '.git/shallow is edited by repack' ' test_commit -C shallow-server E && test_commit -C shallow-server D && d="$(git -C shallow-server rev-parse --verify D^0)" && - git -C shallow-server checkout master && + git -C shallow-server checkout main && git clone --depth=1 --no-tags --no-single-branch \ "file://$PWD/shallow-server" shallow-client && @@ -244,7 +247,7 @@ test_expect_success 'shallow fetches check connectivity before writing shallow f git -C "$REPO" config protocol.version 2 && git -C client config protocol.version 2 && - git -C client fetch --depth=2 "$HTTPD_URL/one_time_perl/repo" master:a_branch && + git -C client fetch --depth=2 "$HTTPD_URL/one_time_perl/repo" main:a_branch && # Craft a situation in which the server sends back an unshallow request # with an empty packfile. This is done by refetching with a shorter @@ -256,7 +259,7 @@ test_expect_success 'shallow fetches check connectivity before writing shallow f >"$HTTPD_ROOT_PATH/one-time-perl" && test_must_fail env GIT_TEST_SIDEBAND_ALL=0 git -C client \ fetch --depth=1 "$HTTPD_URL/one_time_perl/repo" \ - master:a_branch && + main:a_branch && # Ensure that the one-time-perl script was used. ! test -e "$HTTPD_ROOT_PATH/one-time-perl" && diff --git a/t/t5538-push-shallow.sh b/t/t5538-push-shallow.sh index ecbf84d21c..e91fcc173e 100755 --- a/t/t5538-push-shallow.sh +++ b/t/t5538-push-shallow.sh @@ -2,6 +2,9 @@ test_description='push from/to a shallow clone' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh commit() { @@ -44,9 +47,9 @@ test_expect_success 'push from shallow clone' ' ( cd shallow && commit 5 && - git push ../.git +master:refs/remotes/shallow/master + git push ../.git +main:refs/remotes/shallow/main ) && - git log --format=%s shallow/master >actual && + git log --format=%s shallow/main >actual && git fsck && cat <<EOF >expect && 5 @@ -61,10 +64,10 @@ EOF test_expect_success 'push from shallow clone, with grafted roots' ' ( cd shallow2 && - test_must_fail git push ../.git +master:refs/remotes/shallow2/master 2>err && - grep "shallow2/master.*shallow update not allowed" err + test_must_fail git push ../.git +main:refs/remotes/shallow2/main 2>err && + grep "shallow2/main.*shallow update not allowed" err ) && - test_must_fail git rev-parse shallow2/master && + test_must_fail git rev-parse shallow2/main && git fsck ' @@ -72,9 +75,9 @@ test_expect_success 'add new shallow root with receive.updateshallow on' ' test_config receive.shallowupdate true && ( cd shallow2 && - git push ../.git +master:refs/remotes/shallow2/master + git push ../.git +main:refs/remotes/shallow2/main ) && - git log --format=%s shallow2/master >actual && + git log --format=%s shallow2/main >actual && git fsck && cat <<EOF >expect && c @@ -87,12 +90,12 @@ test_expect_success 'push from shallow to shallow' ' ( cd shallow && git --git-dir=../shallow2/.git config receive.shallowupdate true && - git push ../shallow2/.git +master:refs/remotes/shallow/master && + git push ../shallow2/.git +main:refs/remotes/shallow/main && git --git-dir=../shallow2/.git config receive.shallowupdate false ) && ( cd shallow2 && - git log --format=%s shallow/master >actual && + git log --format=%s shallow/main >actual && git fsck && cat <<EOF >expect && 5 @@ -106,10 +109,10 @@ EOF test_expect_success 'push from full to shallow' ' ! git --git-dir=shallow2/.git cat-file blob $(echo 1|git hash-object --stdin) && commit 1 && - git push shallow2/.git +master:refs/remotes/top/master && + git push shallow2/.git +main:refs/remotes/top/main && ( cd shallow2 && - git log --format=%s top/master >actual && + git log --format=%s top/main >actual && git fsck && cat <<EOF >expect && 1 diff --git a/t/t5539-fetch-http-shallow.sh b/t/t5539-fetch-http-shallow.sh index 82aa99ae87..3ea75d34ca 100755 --- a/t/t5539-fetch-http-shallow.sh +++ b/t/t5539-fetch-http-shallow.sh @@ -2,6 +2,9 @@ test_description='fetch/clone from a shallow clone over http' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-httpd.sh start_httpd @@ -32,7 +35,7 @@ test_expect_success 'clone http repository' ' ( cd clone && git fsck && - git log --format=%s origin/master >actual && + git log --format=%s origin/main >actual && cat <<EOF >expect && 7 6 @@ -60,9 +63,9 @@ test_expect_success 'no shallow lines after receiving ACK ready' ' refs/heads/unrelated$i:refs/heads/unrelated$i || exit 1 done && - git checkout master && + git checkout main && test_commit new && - git push "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" master + git push "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" main ) && ( cd clone && @@ -95,7 +98,7 @@ test_expect_success 'clone shallow since ...' ' test_expect_success 'fetch shallow since ...' ' git -C shallow11 fetch --shallow-since "200000000 +0700" origin && - git -C shallow11 log --pretty=tformat:%s origin/master >actual && + git -C shallow11 log --pretty=tformat:%s origin/main >actual && cat >expected <<-\EOF && three two @@ -120,7 +123,7 @@ test_expect_success 'shallow clone exclude tag two' ' test_expect_success 'fetch exclude tag one' ' git -C shallow12 fetch --shallow-exclude one origin && - git -C shallow12 log --pretty=tformat:%s origin/master >actual && + git -C shallow12 log --pretty=tformat:%s origin/main >actual && test_write_lines three two >expected && test_cmp expected actual ' @@ -136,12 +139,12 @@ test_expect_success 'fetching deepen' ' git clone --depth 1 $HTTPD_URL/smart/shallow-deepen.git deepen && mv "$HTTPD_DOCUMENT_ROOT_PATH/shallow-deepen.git" .git && test_commit four && - git -C deepen log --pretty=tformat:%s master >actual && + git -C deepen log --pretty=tformat:%s main >actual && echo three >expected && test_cmp expected actual && mv .git "$HTTPD_DOCUMENT_ROOT_PATH/shallow-deepen.git" && git -C deepen fetch --deepen=1 && - git -C deepen log --pretty=tformat:%s origin/master >actual && + git -C deepen log --pretty=tformat:%s origin/main >actual && cat >expected <<-\EOF && four three diff --git a/t/t5540-http-push-webdav.sh b/t/t5540-http-push-webdav.sh index 450321fddb..8b68bb38a4 100755 --- a/t/t5540-http-push-webdav.sh +++ b/t/t5540-http-push-webdav.sh @@ -7,6 +7,9 @@ test_description='test WebDAV http-push This test runs various sanity checks on http-push.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh if git http-push > /dev/null 2>&1 || [ $? -eq 128 ] @@ -71,7 +74,7 @@ test_expect_success 'push already up-to-date' ' test_expect_success 'push to remote repository with unpacked refs' ' (cd "$HTTPD_DOCUMENT_ROOT_PATH"/test_repo.git && rm packed-refs && - git update-ref refs/heads/master $ORIG_HEAD && + git update-ref refs/heads/main $ORIG_HEAD && git --bare update-server-info) && git push && (cd "$HTTPD_DOCUMENT_ROOT_PATH"/test_repo.git && @@ -91,7 +94,7 @@ test_expect_success 'http-push fetches unpacked objects' ' git remote rm origin && git reflog expire --expire=0 --all && git prune && - git push -f -v $HTTPD_URL/dumb/test_repo_unpacked.git master) + git push -f -v $HTTPD_URL/dumb/test_repo_unpacked.git main) ' test_expect_success 'http-push fetches packed objects' ' @@ -111,7 +114,7 @@ test_expect_success 'http-push fetches packed objects' ' git remote remove origin && git reflog expire --expire=0 --all && git prune && - git push -f -v $HTTPD_URL/dumb/test_repo_packed.git master) + git push -f -v $HTTPD_URL/dumb/test_repo_packed.git main) ' test_expect_success 'create and delete remote branch' ' @@ -163,7 +166,7 @@ test_expect_success 'PUT and MOVE sends object to URLs with SHA-1 hash suffix' ' ' test_http_push_nonff "$HTTPD_DOCUMENT_ROOT_PATH"/test_repo.git \ - "$ROOT_PATH"/test_repo_clone master + "$ROOT_PATH"/test_repo_clone main test_expect_success 'push to password-protected repository (user in URL)' ' test_commit pw-user && diff --git a/t/t5541-http-push-smart.sh b/t/t5541-http-push-smart.sh index 187454f5dd..bc5ccf233f 100755 --- a/t/t5541-http-push-smart.sh +++ b/t/t5541-http-push-smart.sh @@ -4,6 +4,9 @@ # test_description='test smart pushing over http via http-backend' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh ROOT_PATH="$PWD" @@ -142,23 +145,23 @@ test_expect_success 'used receive-pack service' ' ' test_http_push_nonff "$HTTPD_DOCUMENT_ROOT_PATH"/test_repo.git \ - "$ROOT_PATH"/test_repo_clone master success + "$ROOT_PATH"/test_repo_clone main success test_expect_success 'push fails for non-fast-forward refs unmatched by remote helper' ' # create a dissimilarly-named remote ref so that git is unable to match the # two refs (viz. local, remote) unless an explicit refspec is provided. - git push origin master:retsam && + git push origin main:niam && echo "change changed" > path2 && git commit -a -m path2 --amend && - # push master too; this ensures there is at least one '"'push'"' command to + # push main too; this ensures there is at least one '"'push'"' command to # the remote helper and triggers interaction with the helper. - test_must_fail git push -v origin +master master:retsam >output 2>&1' + test_must_fail git push -v origin +main main:niam >output 2>&1' test_expect_success 'push fails for non-fast-forward refs unmatched by remote helper: remote output' ' - grep "^ + [a-f0-9]*\.\.\.[a-f0-9]* *master -> master (forced update)$" output && - grep "^ ! \[rejected\] *master -> retsam (non-fast-forward)$" output + grep "^ + [a-f0-9]*\.\.\.[a-f0-9]* *main -> main (forced update)$" output && + grep "^ ! \[rejected\] *main -> niam (non-fast-forward)$" output ' test_expect_success 'push fails for non-fast-forward refs unmatched by remote helper: our output' ' @@ -167,7 +170,7 @@ test_expect_success 'push fails for non-fast-forward refs unmatched by remote he ' test_expect_success 'push (chunked)' ' - git checkout master && + git checkout main && test_commit commit path3 && HEAD=$(git rev-parse --verify HEAD) && test_config http.postbuffer 4 && @@ -177,9 +180,9 @@ test_expect_success 'push (chunked)' ' test $HEAD = $(git rev-parse --verify HEAD)) ' -## References of remote: atomic1(1) master(2) collateral(2) other(2) -## References of local : atomic2(2) master(1) collateral(3) other(2) collateral1(3) atomic(1) -## Atomic push : master(1) collateral(3) atomic(1) +## References of remote: atomic1(1) main(2) collateral(2) other(2) +## References of local : atomic2(2) main(1) collateral(3) other(2) collateral1(3) atomic(1) +## Atomic push : main(1) collateral(3) atomic(1) test_expect_success 'push --atomic also prevents branch creation, reports collateral' ' # Setup upstream repo - empty for now d=$HTTPD_DOCUMENT_ROOT_PATH/atomic-branches.git && @@ -192,15 +195,15 @@ test_expect_success 'push --atomic also prevents branch creation, reports collat test_commit atomic2 && git branch collateral && git branch other && - git push "$up" atomic1 master collateral other && + git push "$up" atomic1 main collateral other && git tag -d atomic1 && # collateral is a valid push, but should be failed by atomic push git checkout collateral && test_commit collateral1 && - # Make master incompatible with upstream to provoke atomic - git checkout master && + # Make main incompatible with upstream to provoke atomic + git checkout main && git reset --hard HEAD^ && # Add a new branch which should be failed by atomic push. This is a @@ -208,7 +211,7 @@ test_expect_success 'push --atomic also prevents branch creation, reports collat git branch atomic && # --atomic should cause entire push to be rejected - test_must_fail git push --atomic "$up" master atomic collateral 2>output && + test_must_fail git push --atomic "$up" main atomic collateral 2>output && # the new branch should not have been created upstream test_must_fail git -C "$d" show-ref --verify refs/heads/atomic && @@ -216,15 +219,15 @@ test_expect_success 'push --atomic also prevents branch creation, reports collat # upstream should still reflect atomic2, the last thing we pushed # successfully git rev-parse atomic2 >expected && - # on master... - git -C "$d" rev-parse refs/heads/master >actual && + # on main... + git -C "$d" rev-parse refs/heads/main >actual && test_cmp expected actual && # ...and collateral. git -C "$d" rev-parse refs/heads/collateral >actual && test_cmp expected actual && # the failed refs should be indicated to the user - grep "^ ! .*rejected.* master -> master" output && + grep "^ ! .*rejected.* main -> main" output && # the collateral failure refs should be indicated to the user grep "^ ! .*rejected.* atomic -> atomic .*atomic push failed" output && @@ -472,9 +475,9 @@ test_expect_success 'clone/fetch scrubs password from reflogs' ' test_commit prepare-for-force-fetch && git switch -c away && git fetch "$HTTPD_URL_USER_PASS/smart/test_repo.git" \ - +master:master && + +main:main && # should have been scrubbed down to vanilla URL - git log -g master >reflog && + git log -g main >reflog && grep "$HTTPD_URL" reflog && ! grep "$HTTPD_URL_USER_PASS" reflog ' @@ -498,7 +501,7 @@ test_expect_success 'colorize errors/hints' ' cd "$ROOT_PATH"/test_repo_clone && test_must_fail git -c color.transport=always -c color.advice=always \ -c color.push=always \ - push origin origin/master^:master 2>act && + push origin origin/main^:main 2>act && test_decode_color <act >decoded && test_i18ngrep "<RED>.*rejected.*<RESET>" decoded && test_i18ngrep "<RED>error: failed to push some refs" decoded && diff --git a/t/t5542-push-http-shallow.sh b/t/t5542-push-http-shallow.sh index ddc1db722d..c2cc83182f 100755 --- a/t/t5542-push-http-shallow.sh +++ b/t/t5542-push-http-shallow.sh @@ -2,6 +2,9 @@ test_description='push from/to a shallow clone over http' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-httpd.sh start_httpd @@ -51,12 +54,12 @@ test_expect_success 'push to shallow repo via http' ' ( cd full && commit 9 && - git push $HTTPD_URL/smart/repo.git +master:refs/remotes/top/master + git push $HTTPD_URL/smart/repo.git +main:refs/remotes/top/main ) && ( cd "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && git fsck && - git log --format=%s top/master >actual && + git log --format=%s top/main >actual && cat <<EOF >expect && 9 4 @@ -74,11 +77,11 @@ test_expect_success 'push from shallow repo via http' ' git config http.receivepack true ) && commit 10 && - git push $HTTPD_URL/smart/repo.git +master:refs/remotes/top/master && + git push $HTTPD_URL/smart/repo.git +main:refs/remotes/top/main && ( cd "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && git fsck && - git log --format=%s top/master >actual && + git log --format=%s top/main >actual && cat <<EOF >expect && 10 4 diff --git a/t/t5543-atomic-push.sh b/t/t5543-atomic-push.sh index 620c30d58f..bfee461861 100755 --- a/t/t5543-atomic-push.sh +++ b/t/t5543-atomic-push.sh @@ -2,6 +2,9 @@ test_description='pushing to a repository using the atomic push option' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh mk_repo_pair () { @@ -40,9 +43,9 @@ test_expect_success 'atomic push works for a single branch' ' test_commit one && git push --mirror up && test_commit two && - git push --atomic up master + git push --atomic up main ) && - test_refs master master + test_refs main main ' test_expect_success 'atomic push works for two branches' ' @@ -55,9 +58,9 @@ test_expect_success 'atomic push works for two branches' ' test_commit two && git checkout second && test_commit three && - git push --atomic up master second + git push --atomic up main second ) && - test_refs master master && + test_refs main main && test_refs second second ' @@ -70,7 +73,7 @@ test_expect_success 'atomic push works in combination with --mirror' ' test_commit two && git push --atomic --mirror up ) && - test_refs master master && + test_refs main main && test_refs second second ' @@ -79,7 +82,7 @@ test_expect_success 'atomic push works in combination with --force' ' ( cd workbench && test_commit one && - git branch second master && + git branch second main && test_commit two_a && git checkout second && test_commit two_b && @@ -87,36 +90,36 @@ test_expect_success 'atomic push works in combination with --force' ' test_commit four && git push --mirror up && # The actual test is below - git checkout master && + git checkout main && test_commit three_a && git checkout second && git reset --hard HEAD^ && - git push --force --atomic up master second + git push --force --atomic up main second ) && - test_refs master master && + test_refs main main && test_refs second second ' -# set up two branches where master can be pushed but second can not +# set up two branches where main can be pushed but second can not # (non-fast-forward). Since second can not be pushed the whole operation -# will fail and leave master untouched. +# will fail and leave main untouched. test_expect_success 'atomic push fails if one branch fails' ' mk_repo_pair && ( cd workbench && test_commit one && - git checkout -b second master && + git checkout -b second main && test_commit two && test_commit three && test_commit four && git push --mirror up && git reset --hard HEAD~2 && test_commit five && - git checkout master && + git checkout main && test_commit six && test_must_fail git push --atomic --all up ) && - test_refs master HEAD@{7} && + test_refs main HEAD@{7} && test_refs second HEAD@{4} ' @@ -126,7 +129,7 @@ test_expect_success 'atomic push fails if one tag fails remotely' ' ( cd workbench && test_commit one && - git checkout -b second master && + git checkout -b second main && test_commit two && git push --mirror up ) && @@ -139,14 +142,14 @@ test_expect_success 'atomic push fails if one tag fails remotely' ' # see if we can now push both branches. ( cd workbench && - git checkout master && + git checkout main && test_commit three && git checkout second && test_commit four && git tag test_tag && - test_must_fail git push --tags --atomic up master second + test_must_fail git push --tags --atomic up main second ) && - test_refs master HEAD@{3} && + test_refs main HEAD@{3} && test_refs second HEAD@{1} ' @@ -155,7 +158,7 @@ test_expect_success 'atomic push obeys update hook preventing a branch to be pus ( cd workbench && test_commit one && - git checkout -b second master && + git checkout -b second main && test_commit two && git push --mirror up ) && @@ -165,19 +168,19 @@ test_expect_success 'atomic push obeys update hook preventing a branch to be pus HOOK="$HOOKDIR/update" && mkdir -p "$HOOKDIR" && write_script "$HOOK" <<-\EOF - # only allow update to master from now on - test "$1" = "refs/heads/master" + # only allow update to main from now on + test "$1" = "refs/heads/main" EOF ) && ( cd workbench && - git checkout master && + git checkout main && test_commit three && git checkout second && test_commit four && - test_must_fail git push --atomic up master second + test_must_fail git push --atomic up main second ) && - test_refs master HEAD@{3} && + test_refs main HEAD@{3} && test_refs second HEAD@{1} ' @@ -192,21 +195,21 @@ test_expect_success 'atomic push is not advertised if configured' ' test_commit one && git push --mirror up && test_commit two && - test_must_fail git push --atomic up master + test_must_fail git push --atomic up main ) && - test_refs master HEAD@{1} + test_refs main HEAD@{1} ' -# References in upstream : master(1) one(1) foo(1) -# References in workbench: master(2) foo(1) two(2) bar(2) -# Atomic push : master(2) two(2) bar(2) +# References in upstream : main(1) one(1) foo(1) +# References in workbench: main(2) foo(1) two(2) bar(2) +# Atomic push : main(2) two(2) bar(2) test_expect_success 'atomic push reports (reject by update hook)' ' mk_repo_pair && ( cd workbench && test_commit one && git branch foo && - git push up master one foo && + git push up main one foo && git tag -d one ) && ( @@ -228,19 +231,19 @@ test_expect_success 'atomic push reports (reject by update hook)' ' git branch bar ) && test_must_fail git -C workbench \ - push --atomic up master two bar >out 2>&1 && + push --atomic up main two bar >out 2>&1 && fmt_status_report <out >actual && cat >expect <<-EOF && To ../upstream - ! [remote rejected] master -> master (atomic push failure) + ! [remote rejected] main -> main (atomic push failure) ! [remote rejected] two -> two (atomic push failure) ! [remote rejected] bar -> bar (hook declined) EOF test_cmp expect actual ' -# References in upstream : master(1) one(1) foo(1) -# References in workbench: master(2) foo(1) two(2) bar(2) +# References in upstream : main(1) one(1) foo(1) +# References in workbench: main(2) foo(1) two(2) bar(2) test_expect_success 'atomic push reports (mirror, but reject by update hook)' ' ( cd workbench && @@ -252,7 +255,7 @@ test_expect_success 'atomic push reports (mirror, but reject by update hook)' ' fmt_status_report <out >actual && cat >expect <<-EOF && To ../upstream - ! [remote rejected] master -> master (atomic push failure) + ! [remote rejected] main -> main (atomic push failure) ! [remote rejected] one (atomic push failure) ! [remote rejected] bar -> bar (hook declined) ! [remote rejected] two -> two (atomic push failure) @@ -260,21 +263,21 @@ test_expect_success 'atomic push reports (mirror, but reject by update hook)' ' test_cmp expect actual ' -# References in upstream : master(2) one(1) foo(1) -# References in workbench: master(1) foo(1) two(2) bar(2) +# References in upstream : main(2) one(1) foo(1) +# References in workbench: main(1) foo(1) two(2) bar(2) test_expect_success 'atomic push reports (reject by non-ff)' ' rm upstream/.git/hooks/update && ( cd workbench && - git push up master && + git push up main && git reset --hard HEAD^ ) && test_must_fail git -C workbench \ - push --atomic up master foo bar >out 2>&1 && + push --atomic up main foo bar >out 2>&1 && fmt_status_report <out >actual && cat >expect <<-EOF && To ../upstream - ! [rejected] master -> master (non-fast-forward) + ! [rejected] main -> main (non-fast-forward) ! [rejected] bar -> bar (atomic push failed) EOF test_cmp expect actual diff --git a/t/t5545-push-options.sh b/t/t5545-push-options.sh index 38e6f7340e..58c7add7ee 100755 --- a/t/t5545-push-options.sh +++ b/t/t5545-push-options.sh @@ -2,6 +2,9 @@ test_description='pushing to a repository using push options' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh mk_repo_pair () { @@ -63,9 +66,9 @@ test_expect_success 'one push option works for a single branch' ' test_commit one && git push --mirror up && test_commit two && - git push --push-option=asdf up master + git push --push-option=asdf up main ) && - test_refs master master && + test_refs main main && echo "asdf" >expect && test_cmp expect upstream/.git/hooks/pre-receive.push_options && test_cmp expect upstream/.git/hooks/post-receive.push_options @@ -79,9 +82,9 @@ test_expect_success 'push option denied by remote' ' test_commit one && git push --mirror up && test_commit two && - test_must_fail git push --push-option=asdf up master + test_must_fail git push --push-option=asdf up main ) && - test_refs master HEAD@{1} + test_refs main HEAD@{1} ' test_expect_success 'two push options work' ' @@ -92,9 +95,9 @@ test_expect_success 'two push options work' ' test_commit one && git push --mirror up && test_commit two && - git push --push-option=asdf --push-option="more structured text" up master + git push --push-option=asdf --push-option="more structured text" up main ) && - test_refs master master && + test_refs main main && printf "asdf\nmore structured text\n" >expect && test_cmp expect upstream/.git/hooks/pre-receive.push_options && test_cmp expect upstream/.git/hooks/post-receive.push_options @@ -123,14 +126,14 @@ test_expect_success 'push options and submodules' ' git -C parent push \ --push-option=asdf --push-option="more structured text" \ - --recurse-submodules=on-demand up master && + --recurse-submodules=on-demand up main && - git -C upstream rev-parse --verify master >expect && - git -C parent/workbench rev-parse --verify master >actual && + git -C upstream rev-parse --verify main >expect && + git -C parent/workbench rev-parse --verify main >actual && test_cmp expect actual && - git -C parent_upstream rev-parse --verify master >expect && - git -C parent rev-parse --verify master >actual && + git -C parent_upstream rev-parse --verify main >expect && + git -C parent rev-parse --verify main >actual && test_cmp expect actual && printf "asdf\nmore structured text\n" >expect && @@ -148,9 +151,9 @@ test_expect_success 'default push option' ' test_commit one && git push --mirror up && test_commit two && - git -c push.pushOption=default push up master + git -c push.pushOption=default push up main ) && - test_refs master master && + test_refs main main && echo "default" >expect && test_cmp expect upstream/.git/hooks/pre-receive.push_options && test_cmp expect upstream/.git/hooks/post-receive.push_options @@ -164,9 +167,9 @@ test_expect_success 'two default push options' ' test_commit one && git push --mirror up && test_commit two && - git -c push.pushOption=default1 -c push.pushOption=default2 push up master + git -c push.pushOption=default1 -c push.pushOption=default2 push up main ) && - test_refs master master && + test_refs main main && printf "default1\ndefault2\n" >expect && test_cmp expect upstream/.git/hooks/pre-receive.push_options && test_cmp expect upstream/.git/hooks/post-receive.push_options @@ -180,9 +183,9 @@ test_expect_success 'push option from command line overrides from-config push op test_commit one && git push --mirror up && test_commit two && - git -c push.pushOption=default push --push-option=manual up master + git -c push.pushOption=default push --push-option=manual up main ) && - test_refs master master && + test_refs main main && echo "manual" >expect && test_cmp expect upstream/.git/hooks/pre-receive.push_options && test_cmp expect upstream/.git/hooks/post-receive.push_options @@ -196,9 +199,9 @@ test_expect_success 'empty value of push.pushOption in config clears the list' ' test_commit one && git push --mirror up && test_commit two && - git -c push.pushOption=default1 -c push.pushOption= -c push.pushOption=default2 push up master + git -c push.pushOption=default1 -c push.pushOption= -c push.pushOption=default2 push up main ) && - test_refs master master && + test_refs main main && echo "default2" >expect && test_cmp expect upstream/.git/hooks/pre-receive.push_options && test_cmp expect upstream/.git/hooks/post-receive.push_options @@ -212,16 +215,16 @@ test_expect_success 'invalid push option in config' ' test_commit one && git push --mirror up && test_commit two && - test_must_fail git -c push.pushOption push up master + test_must_fail git -c push.pushOption push up main ) && - test_refs master HEAD@{1} + test_refs main HEAD@{1} ' test_expect_success 'push options keep quoted characters intact (direct)' ' mk_repo_pair && git -C upstream config receive.advertisePushOptions true && test_commit -C workbench one && - git -C workbench push --push-option="\"embedded quotes\"" up master && + git -C workbench push --push-option="\"embedded quotes\"" up main && echo "\"embedded quotes\"" >expect && test_cmp expect upstream/.git/hooks/pre-receive.push_options ' @@ -244,28 +247,28 @@ mk_http_pair () { test_expect_success 'push option denied properly by http server' ' mk_http_pair false && test_commit -C test_http_clone one && - test_must_fail git -C test_http_clone push --push-option=asdf origin master 2>actual && + test_must_fail git -C test_http_clone push --push-option=asdf origin main 2>actual && test_i18ngrep "the receiving end does not support push options" actual && - git -C test_http_clone push origin master + git -C test_http_clone push origin main ' test_expect_success 'push options work properly across http' ' mk_http_pair true && test_commit -C test_http_clone one && - git -C test_http_clone push origin master && - git -C "$HTTPD_DOCUMENT_ROOT_PATH"/upstream.git rev-parse --verify master >expect && - git -C test_http_clone rev-parse --verify master >actual && + git -C test_http_clone push origin main && + git -C "$HTTPD_DOCUMENT_ROOT_PATH"/upstream.git rev-parse --verify main >expect && + git -C test_http_clone rev-parse --verify main >actual && test_cmp expect actual && test_commit -C test_http_clone two && - git -C test_http_clone push --push-option=asdf --push-option="more structured text" origin master && + git -C test_http_clone push --push-option=asdf --push-option="more structured text" origin main && printf "asdf\nmore structured text\n" >expect && test_cmp expect "$HTTPD_DOCUMENT_ROOT_PATH"/upstream.git/hooks/pre-receive.push_options && test_cmp expect "$HTTPD_DOCUMENT_ROOT_PATH"/upstream.git/hooks/post-receive.push_options && - git -C "$HTTPD_DOCUMENT_ROOT_PATH"/upstream.git rev-parse --verify master >expect && - git -C test_http_clone rev-parse --verify master >actual && + git -C "$HTTPD_DOCUMENT_ROOT_PATH"/upstream.git rev-parse --verify main >expect && + git -C test_http_clone rev-parse --verify main >actual && test_cmp expect actual ' @@ -273,7 +276,7 @@ test_expect_success 'push options keep quoted characters intact (http)' ' mk_http_pair true && test_commit -C test_http_clone one && - git -C test_http_clone push --push-option="\"embedded quotes\"" origin master && + git -C test_http_clone push --push-option="\"embedded quotes\"" origin main && echo "\"embedded quotes\"" >expect && test_cmp expect "$HTTPD_DOCUMENT_ROOT_PATH"/upstream.git/hooks/pre-receive.push_options ' diff --git a/t/t5548-push-porcelain.sh b/t/t5548-push-porcelain.sh index 1b19b3ef55..5a761f3642 100755 --- a/t/t5548-push-porcelain.sh +++ b/t/t5548-push-porcelain.sh @@ -36,7 +36,7 @@ create_commits_in () { shift || return 1 done && - git -C "$repo" update-ref refs/heads/master $oid + git -C "$repo" update-ref refs/heads/main $oid } # Format the output of git-push, git-show-ref and other commands to make a @@ -57,8 +57,8 @@ make_user_friendly_and_stable_output () { } setup_upstream_and_workbench () { - # Upstream after setup : master(B) foo(A) bar(A) baz(A) - # Workbench after setup : master(A) + # Upstream after setup : main(B) foo(A) bar(A) baz(A) + # Workbench after setup : main(A) test_expect_success "setup upstream repository and workbench" ' rm -rf upstream.git workbench && git init --bare upstream.git && @@ -70,9 +70,9 @@ setup_upstream_and_workbench () { # this fixed-width oid will be replaced with "<OID>". git config core.abbrev 7 && git remote add origin ../upstream.git && - git update-ref refs/heads/master $A && + git update-ref refs/heads/main $A && git push origin \ - $B:refs/heads/master \ + $B:refs/heads/main \ $A:refs/heads/foo \ $A:refs/heads/bar \ $A:refs/heads/baz @@ -94,17 +94,17 @@ run_git_push_porcelain_output_test() { ;; esac - # Refs of upstream : master(B) foo(A) bar(A) baz(A) - # Refs of workbench: master(A) baz(A) next(A) - # git-push : master(A) NULL (B) baz(A) next(A) + # Refs of upstream : main(B) foo(A) bar(A) baz(A) + # Refs of workbench: main(A) baz(A) next(A) + # git-push : main(A) NULL (B) baz(A) next(A) test_expect_success "porcelain output of successful git-push ($PROTOCOL)" ' ( cd workbench && - git update-ref refs/heads/master $A && + git update-ref refs/heads/main $A && git update-ref refs/heads/baz $A && git update-ref refs/heads/next $A && git push --porcelain --force origin \ - master \ + main \ :refs/heads/foo \ $B:bar \ baz \ @@ -116,7 +116,7 @@ run_git_push_porcelain_output_test() { = refs/heads/baz:refs/heads/baz [up to date] <COMMIT-B>:refs/heads/bar <OID-A>..<OID-B> - :refs/heads/foo [deleted] - + refs/heads/master:refs/heads/master <OID-B>...<OID-A> (forced update) + + refs/heads/main:refs/heads/main <OID-B>...<OID-A> (forced update) * refs/heads/next:refs/heads/next [new branch] Done EOF @@ -127,22 +127,22 @@ run_git_push_porcelain_output_test() { cat >expect <<-EOF && <COMMIT-B> refs/heads/bar <COMMIT-A> refs/heads/baz - <COMMIT-A> refs/heads/master + <COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/next EOF test_cmp expect actual ' - # Refs of upstream : master(A) bar(B) baz(A) next(A) - # Refs of workbench: master(B) bar(A) baz(A) next(A) - # git-push : master(B) bar(A) NULL next(A) + # Refs of upstream : main(A) bar(B) baz(A) next(A) + # Refs of workbench: main(B) bar(A) baz(A) next(A) + # git-push : main(B) bar(A) NULL next(A) test_expect_success "atomic push failed ($PROTOCOL)" ' ( cd workbench && - git update-ref refs/heads/master $B && + git update-ref refs/heads/main $B && git update-ref refs/heads/bar $A && test_must_fail git push --atomic --porcelain origin \ - master \ + main \ bar \ :baz \ next @@ -153,7 +153,7 @@ run_git_push_porcelain_output_test() { = refs/heads/next:refs/heads/next [up to date] ! refs/heads/bar:refs/heads/bar [rejected] (non-fast-forward) ! (delete):refs/heads/baz [rejected] (atomic push failed) - ! refs/heads/master:refs/heads/master [rejected] (atomic push failed) + ! refs/heads/main:refs/heads/main [rejected] (atomic push failed) Done EOF test_cmp expect actual && @@ -163,7 +163,7 @@ run_git_push_porcelain_output_test() { cat >expect <<-EOF && <COMMIT-B> refs/heads/bar <COMMIT-A> refs/heads/baz - <COMMIT-A> refs/heads/master + <COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/next EOF test_cmp expect actual @@ -174,16 +174,16 @@ run_git_push_porcelain_output_test() { EOF ' - # Refs of upstream : master(A) bar(B) baz(A) next(A) - # Refs of workbench: master(B) bar(A) baz(A) next(A) - # git-push : master(B) bar(A) NULL next(A) + # Refs of upstream : main(A) bar(B) baz(A) next(A) + # Refs of workbench: main(B) bar(A) baz(A) next(A) + # git-push : main(B) bar(A) NULL next(A) test_expect_success "pre-receive hook declined ($PROTOCOL)" ' ( cd workbench && - git update-ref refs/heads/master $B && + git update-ref refs/heads/main $B && git update-ref refs/heads/bar $A && test_must_fail git push --porcelain --force origin \ - master \ + main \ bar \ :baz \ next @@ -194,7 +194,7 @@ run_git_push_porcelain_output_test() { = refs/heads/next:refs/heads/next [up to date] ! refs/heads/bar:refs/heads/bar [remote rejected] (pre-receive hook declined) ! :refs/heads/baz [remote rejected] (pre-receive hook declined) - ! refs/heads/master:refs/heads/master [remote rejected] (pre-receive hook declined) + ! refs/heads/main:refs/heads/main [remote rejected] (pre-receive hook declined) Done EOF test_cmp expect actual && @@ -204,7 +204,7 @@ run_git_push_porcelain_output_test() { cat >expect <<-EOF && <COMMIT-B> refs/heads/bar <COMMIT-A> refs/heads/baz - <COMMIT-A> refs/heads/master + <COMMIT-A> refs/heads/main <COMMIT-A> refs/heads/next EOF test_cmp expect actual @@ -214,14 +214,14 @@ run_git_push_porcelain_output_test() { rm "$upstream/hooks/pre-receive" ' - # Refs of upstream : master(A) bar(B) baz(A) next(A) - # Refs of workbench: master(B) bar(A) baz(A) next(A) - # git-push : master(B) bar(A) NULL next(A) + # Refs of upstream : main(A) bar(B) baz(A) next(A) + # Refs of workbench: main(B) bar(A) baz(A) next(A) + # git-push : main(B) bar(A) NULL next(A) test_expect_success "non-fastforward push ($PROTOCOL)" ' ( cd workbench && test_must_fail git push --porcelain origin \ - master \ + main \ bar \ :baz \ next @@ -231,7 +231,7 @@ run_git_push_porcelain_output_test() { To <URL/of/upstream.git> = refs/heads/next:refs/heads/next [up to date] - :refs/heads/baz [deleted] - refs/heads/master:refs/heads/master <OID-A>..<OID-B> + refs/heads/main:refs/heads/main <OID-A>..<OID-B> ! refs/heads/bar:refs/heads/bar [rejected] (non-fast-forward) Done EOF @@ -241,7 +241,7 @@ run_git_push_porcelain_output_test() { make_user_friendly_and_stable_output <out >actual && cat >expect <<-EOF && <COMMIT-B> refs/heads/bar - <COMMIT-B> refs/heads/master + <COMMIT-B> refs/heads/main <COMMIT-A> refs/heads/next EOF test_cmp expect actual diff --git a/t/t5550-http-fetch-dumb.sh b/t/t5550-http-fetch-dumb.sh index 483578b2d7..2ecb06bb63 100755 --- a/t/t5550-http-fetch-dumb.sh +++ b/t/t5550-http-fetch-dumb.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test dumb fetching over http via static file' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-httpd.sh start_httpd @@ -26,7 +29,7 @@ test_expect_success 'create http-accessible bare repository with loose objects' hooks/post-update ) && git remote add public "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && - git push public master:master + git push public main:main ' test_expect_success 'clone http repository' ' @@ -37,8 +40,8 @@ test_expect_success 'clone http repository' ' test_expect_success 'list refs from outside any repository' ' cat >expect <<-EOF && - $(git rev-parse master) HEAD - $(git rev-parse master) refs/heads/master + $(git rev-parse main) HEAD + $(git rev-parse main) refs/heads/main EOF nongit git ls-remote "$HTTPD_URL/dumb/repo.git" >actual && test_cmp expect actual @@ -181,8 +184,8 @@ test_expect_success 'fetch changes via manual http-fetch' ' HEAD=$(git rev-parse --verify HEAD) && (cd clone2 && - git http-fetch -a -w heads/master-new $HEAD $(git config remote.origin.url) && - git checkout master-new && + git http-fetch -a -w heads/main-new $HEAD $(git config remote.origin.url) && + git checkout main-new && test $HEAD = $(git rev-parse --verify HEAD)) && test_cmp file clone2/file ' @@ -192,19 +195,19 @@ test_expect_success 'manual http-fetch without -a works just as well' ' HEAD=$(git rev-parse --verify HEAD) && (cd clone3 && - git http-fetch -w heads/master-new $HEAD $(git config remote.origin.url) && - git checkout master-new && + git http-fetch -w heads/main-new $HEAD $(git config remote.origin.url) && + git checkout main-new && test $HEAD = $(git rev-parse --verify HEAD)) && test_cmp file clone3/file ' test_expect_success 'http remote detects correct HEAD' ' - git push public master:other && + git push public main:other && (cd clone && git remote set-head origin -d && git remote set-head origin -a && git symbolic-ref refs/remotes/origin/HEAD > output && - echo refs/remotes/origin/master > expect && + echo refs/remotes/origin/main > expect && test_cmp expect output ) ' @@ -416,7 +419,7 @@ test_expect_success 'set up evil alternates scheme' ' evil=$HTTPD_DOCUMENT_ROOT_PATH/evil.git && git init --bare "$evil" && # do this by hand to avoid object existence check - printf "%s\\t%s\\n" $sha1 refs/heads/master >"$evil/info/refs" + printf "%s\\t%s\\n" $sha1 refs/heads/main >"$evil/info/refs" ' # Here we'll just redirect via HTTP. In a real-world attack these would be on diff --git a/t/t5551-http-fetch-smart.sh b/t/t5551-http-fetch-smart.sh index e40e9ed52f..984dba22af 100755 --- a/t/t5551-http-fetch-smart.sh +++ b/t/t5551-http-fetch-smart.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test smart fetching over http via http-backend' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-httpd.sh start_httpd @@ -18,7 +21,7 @@ test_expect_success 'create http-accessible bare repository' ' git --bare init ) && git remote add public "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && - git push public master:master + git push public main:main ' setup_askpass_helper @@ -238,9 +241,9 @@ test_expect_success 'invalid Content-Type rejected' ' test_expect_success 'create namespaced refs' ' test_commit namespaced && - git push public HEAD:refs/namespaces/ns/refs/heads/master && + git push public HEAD:refs/namespaces/ns/refs/heads/main && git --git-dir="$HTTPD_DOCUMENT_ROOT_PATH/repo.git" \ - symbolic-ref refs/namespaces/ns/HEAD refs/namespaces/ns/refs/heads/master + symbolic-ref refs/namespaces/ns/HEAD refs/namespaces/ns/refs/heads/main ' test_expect_success 'smart clone respects namespace' ' @@ -271,7 +274,7 @@ test_expect_success 'cookies stored in http.cookiefile when http.savecookies set EOF git config http.cookiefile cookies.txt && git config http.savecookies true && - git ls-remote $HTTPD_URL/smart_cookies/repo.git master && + git ls-remote $HTTPD_URL/smart_cookies/repo.git main && # NEEDSWORK: If the overspecification of the expected result is reduced, we # might be able to run this test in all protocol versions. @@ -344,12 +347,12 @@ test_expect_success 'large fetch-pack requests can be sent using chunked encodin test_expect_success 'test allowreachablesha1inwant' ' test_when_finished "rm -rf test_reachable.git" && server="$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && - master_sha=$(git -C "$server" rev-parse refs/heads/master) && + main_sha=$(git -C "$server" rev-parse refs/heads/main) && git -C "$server" config uploadpack.allowreachablesha1inwant 1 && git init --bare test_reachable.git && git -C test_reachable.git remote add origin "$HTTPD_URL/smart/repo.git" && - git -C test_reachable.git fetch origin "$master_sha" + git -C test_reachable.git fetch origin "$main_sha" ' test_expect_success 'test allowreachablesha1inwant with unreachable' ' @@ -363,7 +366,7 @@ test_expect_success 'test allowreachablesha1inwant with unreachable' ' git push public :refs/heads/doomed && server="$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && - master_sha=$(git -C "$server" rev-parse refs/heads/master) && + main_sha=$(git -C "$server" rev-parse refs/heads/main) && git -C "$server" config uploadpack.allowreachablesha1inwant 1 && git init --bare test_reachable.git && @@ -385,7 +388,7 @@ test_expect_success 'test allowanysha1inwant with unreachable' ' git push public :refs/heads/doomed && server="$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && - master_sha=$(git -C "$server" rev-parse refs/heads/master) && + main_sha=$(git -C "$server" rev-parse refs/heads/main) && git -C "$server" config uploadpack.allowreachablesha1inwant 1 && git init --bare test_reachable.git && @@ -444,8 +447,8 @@ test_expect_success 'using fetch command in remote-curl updates refs' ' test_commit -C "$SERVER" bar && git -C client -c protocol.version=0 fetch && - git -C "$SERVER" rev-parse master >expect && - git -C client rev-parse origin/master >actual && + git -C "$SERVER" rev-parse main >expect && + git -C client rev-parse origin/main >actual && test_cmp expect actual ' diff --git a/t/t5552-skipping-fetch-negotiator.sh b/t/t5552-skipping-fetch-negotiator.sh index 156c704040..7b9fb4ff02 100755 --- a/t/t5552-skipping-fetch-negotiator.sh +++ b/t/t5552-skipping-fetch-negotiator.sh @@ -100,7 +100,7 @@ test_expect_success 'use ref advertisement to filter out commits' ' git -C server checkout --orphan anotherbranch && test_commit -C server to_fetch && - # The server advertising "c3" (as "refs/heads/master") means that we do + # The server advertising "c3" (as "refs/heads/main") means that we do # not need to send any ancestors of "c3", but we still need to send "c3" # itself. test_config -C client fetch.negotiationalgorithm skipping && diff --git a/t/t5553-set-upstream.sh b/t/t5553-set-upstream.sh index 7622981cbf..b1d614ce18 100755 --- a/t/t5553-set-upstream.sh +++ b/t/t5553-set-upstream.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='"git fetch/pull --set-upstream" basic tests.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_config () { @@ -32,9 +35,9 @@ test_expect_success 'setup bare parent fetch' ' git remote add upstream parent ' -test_expect_success 'setup commit on master and other fetch' ' +test_expect_success 'setup commit on main and other fetch' ' test_commit one && - git push upstream master && + git push upstream main && git checkout -b other && test_commit two && git push upstream other @@ -43,38 +46,38 @@ test_expect_success 'setup commit on master and other fetch' ' # tests for fetch --set-upstream test_expect_success 'fetch --set-upstream does not set upstream w/o branch' ' - clear_config master other && - git checkout master && + clear_config main other && + git checkout main && git fetch --set-upstream upstream && - check_config_missing master && + check_config_missing main && check_config_missing other ' -test_expect_success 'fetch --set-upstream upstream master sets branch master but not other' ' - clear_config master other && - git fetch --set-upstream upstream master && - check_config master upstream refs/heads/master && +test_expect_success 'fetch --set-upstream upstream main sets branch main but not other' ' + clear_config main other && + git fetch --set-upstream upstream main && + check_config main upstream refs/heads/main && check_config_missing other ' test_expect_success 'fetch --set-upstream upstream other sets branch other' ' - clear_config master other && + clear_config main other && git fetch --set-upstream upstream other && - check_config master upstream refs/heads/other && + check_config main upstream refs/heads/other && check_config_missing other ' -test_expect_success 'fetch --set-upstream master:other does not set the branch other2' ' +test_expect_success 'fetch --set-upstream main:other does not set the branch other2' ' clear_config other2 && - git fetch --set-upstream upstream master:other2 && + git fetch --set-upstream upstream main:other2 && check_config_missing other2 ' test_expect_success 'fetch --set-upstream http://nosuchdomain.example.com fails with invalid url' ' - # master explicitly not cleared, we check that it is not touched from previous value + # main explicitly not cleared, we check that it is not touched from previous value clear_config other other2 && test_must_fail git fetch --set-upstream http://nosuchdomain.example.com && - check_config master upstream refs/heads/other && + check_config main upstream refs/heads/other && check_config_missing other && check_config_missing other2 ' @@ -83,7 +86,7 @@ test_expect_success 'fetch --set-upstream with valid URL sets upstream to URL' ' clear_config other other2 && url="file://$PWD" && git fetch --set-upstream "$url" && - check_config master "$url" HEAD && + check_config main "$url" HEAD && check_config_missing other && check_config_missing other2 ' @@ -96,30 +99,30 @@ test_expect_success 'setup bare parent pull' ' git remote add upstream parent ' -test_expect_success 'setup commit on master and other pull' ' +test_expect_success 'setup commit on main and other pull' ' test_commit three && - git push --tags upstream master && + git push --tags upstream main && test_commit four && git push upstream other ' -test_expect_success 'pull --set-upstream upstream master sets branch master but not other' ' - clear_config master other && - git pull --set-upstream upstream master && - check_config master upstream refs/heads/master && +test_expect_success 'pull --set-upstream upstream main sets branch main but not other' ' + clear_config main other && + git pull --set-upstream upstream main && + check_config main upstream refs/heads/main && check_config_missing other ' -test_expect_success 'pull --set-upstream master:other2 does not set the branch other2' ' +test_expect_success 'pull --set-upstream main:other2 does not set the branch other2' ' clear_config other2 && - git pull --set-upstream upstream master:other2 && + git pull --set-upstream upstream main:other2 && check_config_missing other2 ' -test_expect_success 'pull --set-upstream upstream other sets branch master' ' - clear_config master other && +test_expect_success 'pull --set-upstream upstream other sets branch main' ' + clear_config main other && git pull --set-upstream upstream other && - check_config master upstream refs/heads/other && + check_config main upstream refs/heads/other && check_config_missing other ' @@ -130,47 +133,47 @@ test_expect_success 'pull --set-upstream upstream tag does not set the tag' ' ' test_expect_success 'pull --set-upstream http://nosuchdomain.example.com fails with invalid url' ' - # master explicitly not cleared, we check that it is not touched from previous value + # main explicitly not cleared, we check that it is not touched from previous value clear_config other other2 three && test_must_fail git pull --set-upstream http://nosuchdomain.example.com && - check_config master upstream refs/heads/other && + check_config main upstream refs/heads/other && check_config_missing other && check_config_missing other2 && check_config_missing three ' test_expect_success 'pull --set-upstream upstream HEAD sets branch HEAD' ' - clear_config master other && + clear_config main other && git pull --set-upstream upstream HEAD && - check_config master upstream HEAD && + check_config main upstream HEAD && git checkout other && git pull --set-upstream upstream HEAD && check_config other upstream HEAD ' test_expect_success 'pull --set-upstream upstream with more than one branch does nothing' ' - clear_config master three && - git pull --set-upstream upstream master three && - check_config_missing master && + clear_config main three && + git pull --set-upstream upstream main three && + check_config_missing main && check_config_missing three ' test_expect_success 'pull --set-upstream with valid URL sets upstream to URL' ' - clear_config master other other2 && - git checkout master && + clear_config main other other2 && + git checkout main && url="file://$PWD" && git pull --set-upstream "$url" && - check_config master "$url" HEAD && + check_config main "$url" HEAD && check_config_missing other && check_config_missing other2 ' test_expect_success 'pull --set-upstream with valid URL and branch sets branch' ' - clear_config master other other2 && - git checkout master && + clear_config main other other2 && + git checkout main && url="file://$PWD" && - git pull --set-upstream "$url" master && - check_config master "$url" refs/heads/master && + git pull --set-upstream "$url" main && + check_config main "$url" refs/heads/main && check_config_missing other && check_config_missing other2 ' diff --git a/t/t5560-http-backend-noserver.sh b/t/t5560-http-backend-noserver.sh index 9fafcf1945..d30cf4f5b8 100755 --- a/t/t5560-http-backend-noserver.sh +++ b/t/t5560-http-backend-noserver.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test git-http-backend-noserver' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh HTTPD_DOCUMENT_ROOT_PATH="$TRASH_DIRECTORY" diff --git a/t/t5561-http-backend.sh b/t/t5561-http-backend.sh index 6eb0294978..9c57d84315 100755 --- a/t/t5561-http-backend.sh +++ b/t/t5561-http-backend.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test git-http-backend' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-httpd.sh @@ -39,9 +42,9 @@ POST() { grep '^[^#]' >exp <<EOF -### refs/heads/master +### refs/heads/main ### -GET /smart/repo.git/refs/heads/master HTTP/1.1 404 - +GET /smart/repo.git/refs/heads/main HTTP/1.1 404 - ### getanyfile default ### diff --git a/t/t556x_common b/t/t556x_common index 359fcfe32b..670fb89477 100755 --- a/t/t556x_common +++ b/t/t556x_common @@ -22,7 +22,7 @@ test_expect_success 'setup repository' ' : >objects/info/http-alternates ) && git remote add public "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && - git push public master:master && + git push public main:main && (cd "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && git repack -a -d @@ -31,7 +31,7 @@ test_expect_success 'setup repository' ' echo other >file && git add file && git commit -m two && - git push public master:master && + git push public main:main && LOOSE_URL=$(find_file objects/??) && PACK_URL=$(find_file objects/pack/*.pack) && @@ -51,8 +51,8 @@ get_static_files() { SMART=smart GIT_HTTP_EXPORT_ALL=1 && export GIT_HTTP_EXPORT_ALL -test_expect_success 'direct refs/heads/master not found' ' - GET refs/heads/master "404 Not Found" +test_expect_success 'direct refs/heads/main not found' ' + GET refs/heads/main "404 Not Found" ' test_expect_success 'static file is ok' ' get_static_files "200 OK" diff --git a/t/t5570-git-daemon.sh b/t/t5570-git-daemon.sh index 8f69a7854f..82c31ab6cd 100755 --- a/t/t5570-git-daemon.sh +++ b/t/t5570-git-daemon.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test fetching over git protocol' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-git-daemon.sh @@ -26,7 +29,7 @@ test_expect_success 'create git-accessible bare repository' ' : >git-daemon-export-ok ) && git remote add public "$GIT_DAEMON_DOCUMENT_ROOT_PATH/repo.git" && - git push public master:master + git push public main:main ' test_expect_success 'clone git repository' ' @@ -55,12 +58,12 @@ test_expect_success 'no-op fetch without "-v" is quiet' ' ' test_expect_success 'remote detects correct HEAD' ' - git push public master:other && + git push public main:other && (cd clone && git remote set-head -d origin && git remote set-head -a origin && git symbolic-ref refs/remotes/origin/HEAD > output && - echo refs/remotes/origin/master > expect && + echo refs/remotes/origin/main > expect && test_cmp expect output ) ' @@ -103,6 +106,11 @@ test_expect_success 'fetch notices corrupt idx' ' ) ' +test_expect_success 'client refuses to ask for repo with newline' ' + test_must_fail git clone "$GIT_DAEMON_URL/repo$LF.git" dst 2>stderr && + test_i18ngrep newline.is.forbidden stderr +' + test_remote_error() { do_export=YesPlease @@ -148,7 +156,7 @@ test_remote_error() msg="access denied or repository not exported" test_expect_success 'clone non-existent' "test_remote_error '$msg' clone nowhere.git" -test_expect_success 'push disabled' "test_remote_error '$msg' push repo.git master" +test_expect_success 'push disabled' "test_remote_error '$msg' push repo.git main" test_expect_success 'read access denied' "test_remote_error -x '$msg' fetch repo.git" test_expect_success 'not exported' "test_remote_error -n '$msg' fetch repo.git" @@ -156,7 +164,7 @@ stop_git_daemon start_git_daemon --informative-errors test_expect_success 'clone non-existent' "test_remote_error 'no such repository' clone nowhere.git" -test_expect_success 'push disabled' "test_remote_error 'service not enabled' push repo.git master" +test_expect_success 'push disabled' "test_remote_error 'service not enabled' push repo.git main" test_expect_success 'read access denied' "test_remote_error -x 'no such repository' fetch repo.git" test_expect_success 'not exported' "test_remote_error -n 'repository not exported' fetch repo.git" @@ -192,10 +200,10 @@ test_expect_success FAKENC 'hostname interpolation works after LF-stripping' ' fake_nc "$GIT_DAEMON_HOST_PORT" <input >output && depacketize <output >output.raw && - # just pick out the value of master, which avoids any protocol + # just pick out the value of main, which avoids any protocol # particulars - perl -lne "print \$1 if m{^(\\S+) refs/heads/master}" <output.raw >actual && - git -C "$repo" rev-parse master >expect && + perl -lne "print \$1 if m{^(\\S+) refs/heads/main}" <output.raw >actual && + git -C "$repo" rev-parse main >expect && test_cmp expect actual ' diff --git a/t/t5571-pre-push-hook.sh b/t/t5571-pre-push-hook.sh index ac53d63869..ad8d5804f7 100755 --- a/t/t5571-pre-push-hook.sh +++ b/t/t5571-pre-push-hook.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='check pre-push hooks' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Setup hook that always succeeds @@ -48,11 +51,11 @@ EOF cat >expected <<EOF parent1 repo1 -refs/heads/master $COMMIT2 refs/heads/foreign $COMMIT1 +refs/heads/main $COMMIT2 refs/heads/foreign $COMMIT1 EOF test_expect_success 'push with hook' ' - git push parent1 master:foreign && + git push parent1 main:foreign && diff expected actual ' diff --git a/t/t5572-pull-submodule.sh b/t/t5572-pull-submodule.sh index 37fd06b0be..29537f4798 100755 --- a/t/t5572-pull-submodule.sh +++ b/t/t5572-pull-submodule.sh @@ -170,7 +170,7 @@ test_expect_success 'pull --rebase --recurse-submodules (no submodule changes, n # create topic branch in clone, not based on any remote-tracking branch git -C superclone checkout -b feat HEAD~1 && test_commit -C superclone first_on_feat && - git -C superclone pull --rebase --recurse-submodules origin master + git -C superclone pull --rebase --recurse-submodules origin HEAD ' # NOTE: @@ -200,8 +200,8 @@ test_expect_success 'branch has no merge base with remote-tracking counterpart' git clone parent child && - # Reset master so that it has no merge base with - # refs/remotes/origin/master. + # Reset the current branch so that it has no merge base with + # the remote-tracking branch. OTHER=$(git -C child commit-tree -m bar \ $(git -C child rev-parse HEAD^{tree})) && git -C child reset --hard "$OTHER" && diff --git a/t/t5580-unc-paths.sh b/t/t5580-unc-paths.sh index cf768b3a27..cd803ae8bf 100755 --- a/t/t5580-unc-paths.sh +++ b/t/t5580-unc-paths.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='various Windows-only path tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh if test_have_prereq CYGWIN @@ -53,7 +56,7 @@ test_expect_success fetch ' git init to-fetch && ( cd to-fetch && - git fetch "$UNCPATH" master + git fetch "$UNCPATH" main ) ' diff --git a/t/t5581-http-curl-verbose.sh b/t/t5581-http-curl-verbose.sh index 927aad0820..cded79c16b 100755 --- a/t/t5581-http-curl-verbose.sh +++ b/t/t5581-http-curl-verbose.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test GIT_CURL_VERBOSE' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-httpd.sh start_httpd @@ -13,7 +16,7 @@ test_expect_success 'setup repository' ' git add file && git commit -m one && git remote add public "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" && - git push public master:master + git push public main:main ' test_expect_success 'failure in git-upload-pack is shown' ' diff --git a/t/t5582-fetch-negative-refspec.sh b/t/t5582-fetch-negative-refspec.sh index 2f3b064d0e..f345097277 100755 --- a/t/t5582-fetch-negative-refspec.sh +++ b/t/t5582-fetch-negative-refspec.sh @@ -5,6 +5,9 @@ test_description='"git fetch" with negative refspecs. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -22,12 +25,12 @@ test_expect_success "clone and setup child repos" ' git switch -c alternate && echo >file updated again by one && git commit -a -m "updated by one again" && - git switch master + git switch main ) && git clone . two && ( cd two && - git config branch.master.remote one && + git config branch.main.remote one && git config remote.one.url ../one/.git/ && git config remote.one.fetch +refs/heads/*:refs/remotes/one/* && git config --add remote.one.fetch ^refs/heads/alternate @@ -43,9 +46,9 @@ test_expect_success "fetch one" ' test_must_fail git rev-parse --verify refs/remotes/one/alternate && git fetch one && test_must_fail git rev-parse --verify refs/remotes/one/alternate && - git rev-parse --verify refs/remotes/one/master && - mine=$(git rev-parse refs/remotes/one/master) && - his=$(cd ../one && git rev-parse refs/heads/master) && + git rev-parse --verify refs/remotes/one/main && + mine=$(git rev-parse refs/remotes/one/main) && + his=$(cd ../one && git rev-parse refs/heads/main) && test "z$mine" = "z$his" ) ' @@ -57,7 +60,7 @@ test_expect_success "fetch with negative refspec on commandline" ' cd three && alternate_in_one=$(cd ../one && git rev-parse refs/heads/alternate) && echo $alternate_in_one >expect && - git fetch ../one/.git refs/heads/*:refs/remotes/one/* ^refs/heads/master && + git fetch ../one/.git refs/heads/*:refs/remotes/one/* ^refs/heads/main && cut -f -1 .git/FETCH_HEAD >actual && test_cmp expect actual ) @@ -68,8 +71,8 @@ test_expect_success "fetch with negative sha1 refspec fails" ' git commit -a -m "updated by origin yet again" && ( cd three && - master_in_one=$(cd ../one && git rev-parse refs/heads/master) && - test_must_fail git fetch ../one/.git refs/heads/*:refs/remotes/one/* ^$master_in_one + main_in_one=$(cd ../one && git rev-parse refs/heads/main) && + test_must_fail git fetch ../one/.git refs/heads/*:refs/remotes/one/* ^$main_in_one ) ' @@ -92,10 +95,10 @@ test_expect_success "fetch with negative pattern refspec does not expand prefix" ( cd three && alternate_in_one=$(cd ../one && git rev-parse refs/heads/alternate) && - master_in_one=$(cd ../one && git rev-parse refs/heads/master) && + main_in_one=$(cd ../one && git rev-parse refs/heads/main) && echo $alternate_in_one >expect && - echo $master_in_one >>expect && - git fetch ../one/.git refs/heads/*:refs/remotes/one/* ^master && + echo $main_in_one >>expect && + git fetch ../one/.git refs/heads/*:refs/remotes/one/* ^main && cut -f -1 .git/FETCH_HEAD >actual && test_cmp expect actual ) diff --git a/t/t5601-clone.sh b/t/t5601-clone.sh index 7df3c5373a..664c913866 100755 --- a/t/t5601-clone.sh +++ b/t/t5601-clone.sh @@ -2,6 +2,9 @@ test_description=clone +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh X= @@ -217,7 +220,7 @@ test_expect_success 'clone respects global branch.autosetuprebase' ' rm -fr dst && git clone src dst && cd dst && - actual="z$(git config branch.master.rebase)" && + actual="z$(git config branch.main.rebase)" && test ztrue = $actual ) ' @@ -591,7 +594,7 @@ test_expect_success 'clone from a repository with two identical branches' ' ( cd src && - git checkout -b another master + git checkout -b another main ) && git clone src target-11 && test "z$( cd target-11 && git symbolic-ref HEAD )" = zrefs/heads/another diff --git a/t/t5604-clone-reference.sh b/t/t5604-clone-reference.sh index 2f7be23044..5d682706ae 100755 --- a/t/t5604-clone-reference.sh +++ b/t/t5604-clone-reference.sh @@ -4,6 +4,9 @@ # test_description='test clone --reference' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh base_dir=$(pwd) @@ -49,7 +52,7 @@ test_expect_success 'existence of info/alternates' ' ' test_expect_success 'pulling from reference' ' - git -C C pull ../B master + git -C C pull ../B main ' test_expect_success 'that reference gets used' ' @@ -70,7 +73,7 @@ test_expect_success 'existence of info/alternates' ' ' test_expect_success 'pulling from reference' ' - git -C D pull ../B master + git -C D pull ../B main ' test_expect_success 'that reference gets used' ' @@ -136,11 +139,11 @@ test_expect_success 'prepare branched repository' ' git clone A J && ( cd J && - git checkout -b other master^ && + git checkout -b other main^ && echo other >otherfile && git add otherfile && git commit -m other && - git checkout master + git checkout main ) ' @@ -152,9 +155,9 @@ test_expect_success 'fetch with incomplete alternates' ' git remote add J "file://$base_dir/J" && GIT_TRACE_PACKET=$U.K git fetch J ) && - master_object=$(cd A && git for-each-ref --format="%(objectname)" refs/heads/master) && + main_object=$(cd A && git for-each-ref --format="%(objectname)" refs/heads/main) && test -s "$U.K" && - ! grep " want $master_object" "$U.K" && + ! grep " want $main_object" "$U.K" && tag_object=$(cd A && git for-each-ref --format="%(objectname)" refs/tags/HEAD) && ! grep " want $tag_object" "$U.K" ' diff --git a/t/t5605-clone-local.sh b/t/t5605-clone-local.sh index af23419ebf..7d63365f93 100755 --- a/t/t5605-clone-local.sh +++ b/t/t5605-clone-local.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test local clone' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh repo_is_hardlinked() { @@ -15,7 +18,7 @@ test_expect_success 'preparing origin repository' ' test "$(cd a.git && git config --bool core.bare)" = true && test "$(cd x && git config --bool core.bare)" = true && git bundle create b1.bundle --all && - git bundle create b2.bundle master && + git bundle create b2.bundle main && mkdir dir && cp b1.bundle dir/b3 && cp b1.bundle b4 @@ -84,7 +87,7 @@ test_expect_success 'bundle clone with nonexistent HEAD' ' git clone b2.bundle b2 && (cd b2 && git fetch && - test_must_fail git rev-parse --verify refs/heads/master) + test_must_fail git rev-parse --verify refs/heads/main) ' test_expect_success 'clone empty repository' ' @@ -98,9 +101,9 @@ test_expect_success 'clone empty repository' ' echo "content" >> foo && git add foo && git commit -m "Initial commit" && - git push origin master && - expected=$(git rev-parse master) && - actual=$(git --git-dir=../empty/.git rev-parse master) && + git push origin main && + expected=$(git rev-parse main) && + actual=$(git --git-dir=../empty/.git rev-parse main) && test $actual = $expected) ' diff --git a/t/t5606-clone-options.sh b/t/t5606-clone-options.sh index 7f082fb23b..5d6e63a841 100755 --- a/t/t5606-clone-options.sh +++ b/t/t5606-clone-options.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='basic clone options' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -15,7 +18,7 @@ test_expect_success 'setup' ' test_expect_success 'clone -o' ' git clone -o foo parent clone-o && - git -C clone-o rev-parse --verify refs/remotes/foo/master + git -C clone-o rev-parse --verify refs/remotes/foo/main ' @@ -45,7 +48,7 @@ test_expect_success 'disallows --bare with --separate-git-dir' ' test_expect_success 'uses "origin" for default remote name' ' git clone parent clone-default-origin && - git -C clone-default-origin rev-parse --verify refs/remotes/origin/master + git -C clone-default-origin rev-parse --verify refs/remotes/origin/main ' @@ -74,14 +77,14 @@ test_expect_success 'prefers config "clone.defaultRemoteName" over default' ' test_config_global clone.defaultRemoteName from_config && git clone parent clone-config-origin && - git -C clone-config-origin rev-parse --verify refs/remotes/from_config/master + git -C clone-config-origin rev-parse --verify refs/remotes/from_config/main ' test_expect_success 'prefers --origin over -c config' ' git clone -c clone.defaultRemoteName=inline --origin from_option parent clone-o-and-inline-config && - git -C clone-o-and-inline-config rev-parse --verify refs/remotes/from_option/master + git -C clone-o-and-inline-config rev-parse --verify refs/remotes/from_option/main ' diff --git a/t/t5607-clone-bundle.sh b/t/t5607-clone-bundle.sh index 26985f4b44..f4c383cd5c 100755 --- a/t/t5607-clone-bundle.sh +++ b/t/t5607-clone-bundle.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='some bundle related tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -19,7 +22,7 @@ test_expect_success 'setup' ' ' test_expect_success '"verify" needs a worktree' ' - git bundle create tip.bundle -1 master && + git bundle create tip.bundle -1 main && nongit test_must_fail git bundle verify ../tip.bundle 2>err && test_i18ngrep "need a repository" err ' @@ -38,16 +41,16 @@ test_expect_success 'die if bundle file cannot be created' ' test_must_fail git bundle create adir --all ' -test_expect_failure 'bundle --stdin' ' - echo master | git bundle create stdin-bundle.bdl --stdin && +test_expect_success 'bundle --stdin' ' + echo main | git bundle create stdin-bundle.bdl --stdin && git ls-remote stdin-bundle.bdl >output && - grep master output + grep main output ' -test_expect_failure 'bundle --stdin <rev-list options>' ' - echo master | git bundle create hybrid-bundle.bdl --stdin tag && +test_expect_success 'bundle --stdin <rev-list options>' ' + echo main | git bundle create hybrid-bundle.bdl --stdin tag && git ls-remote hybrid-bundle.bdl >output && - grep master output + grep main output ' test_expect_success 'empty bundle file is rejected' ' @@ -83,14 +86,14 @@ test_expect_success 'prerequisites with an empty commit message' ' test_expect_success 'failed bundle creation does not leave cruft' ' # This fails because the bundle would be empty. - test_must_fail git bundle create fail.bundle master..master && + test_must_fail git bundle create fail.bundle main..main && test_path_is_missing fail.bundle.lock ' test_expect_success 'fetch SHA-1 from bundle' ' test_create_repo foo && test_commit -C foo x && - git -C foo bundle create tip.bundle -1 master && + git -C foo bundle create tip.bundle -1 main && git -C foo rev-parse HEAD >hash && # Exercise to ensure that fetching a SHA-1 from a bundle works with no diff --git a/t/t5608-clone-2gb.sh b/t/t5608-clone-2gb.sh index 4c476d2fa1..87a8cd9f98 100755 --- a/t/t5608-clone-2gb.sh +++ b/t/t5608-clone-2gb.sh @@ -26,7 +26,7 @@ test_expect_success 'setup' ' i=$(($i+1)) || echo $? > exit-status done && - echo "commit refs/heads/master" && + echo "commit refs/heads/main" && echo "author A U Thor <author@email.com> 123456789 +0000" && echo "committer C O Mitter <committer@email.com> 123456789 +0000" && echo "data 5" && diff --git a/t/t5609-clone-branch.sh b/t/t5609-clone-branch.sh index 6e7a7be052..f86a674a03 100755 --- a/t/t5609-clone-branch.sh +++ b/t/t5609-clone-branch.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='clone --branch option' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_HEAD() { @@ -20,7 +23,7 @@ test_expect_success 'setup' ' echo one >file && git add file && git commit -m one && git checkout -b two && echo two >file && git add file && git commit -m two && - git checkout master) && + git checkout main) && mkdir empty && (cd empty && git init) ' @@ -28,7 +31,7 @@ test_expect_success 'setup' ' test_expect_success 'vanilla clone chooses HEAD' ' git clone parent clone && (cd clone && - check_HEAD master && + check_HEAD main && check_file one ) ' @@ -53,7 +56,7 @@ test_expect_success 'clone -b sets up tracking' ' test_expect_success 'clone -b does not munge remotes/origin/HEAD' ' (cd clone-two && - echo refs/remotes/origin/master >expect && + echo refs/remotes/origin/main >expect && git symbolic-ref refs/remotes/origin/HEAD >actual && test_cmp expect actual ) diff --git a/t/t5610-clone-detached.sh b/t/t5610-clone-detached.sh index 8b0d607df1..a7ec21eda5 100755 --- a/t/t5610-clone-detached.sh +++ b/t/t5610-clone-detached.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test cloning a repository with detached HEAD' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh head_is_detached() { @@ -20,7 +23,7 @@ test_expect_success 'setup' ' ' test_expect_success 'clone repo (detached HEAD points to branch)' ' - git checkout master^0 && + git checkout main^0 && git clone "file://$PWD" detached-branch ' test_expect_success 'cloned HEAD matches' ' @@ -59,7 +62,7 @@ test_expect_success 'cloned HEAD is detached' ' ' test_expect_success 'clone repo (orphan detached HEAD)' ' - git checkout master^0 && + git checkout main^0 && echo four >file && git commit -a -m four && git clone "file://$PWD" detached-orphan diff --git a/t/t5611-clone-config.sh b/t/t5611-clone-config.sh index 8e0fd39823..9f555b87ec 100755 --- a/t/t5611-clone-config.sh +++ b/t/t5611-clone-config.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='tests for git clone -c key=value' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'clone -c sets config in cloned repo' ' @@ -47,16 +50,16 @@ test_expect_success 'clone -c config is available during clone' ' test_expect_success 'clone -c remote.origin.fetch=<refspec> works' ' rm -rf child && - git update-ref refs/grab/it refs/heads/master && - git update-ref refs/leave/out refs/heads/master && + git update-ref refs/grab/it refs/heads/main && + git update-ref refs/leave/out refs/heads/main && git clone -c "remote.origin.fetch=+refs/grab/*:refs/grab/*" . child && git -C child for-each-ref --format="%(refname)" >actual && cat >expect <<-\EOF && refs/grab/it - refs/heads/master + refs/heads/main refs/remotes/origin/HEAD - refs/remotes/origin/master + refs/remotes/origin/main EOF test_cmp expect actual ' @@ -68,9 +71,9 @@ test_expect_success 'git -c remote.origin.fetch=<refspec> clone works' ' cat >expect <<-\EOF && refs/grab/it - refs/heads/master + refs/heads/main refs/remotes/origin/HEAD - refs/remotes/origin/master + refs/remotes/origin/main EOF test_cmp expect actual ' @@ -85,9 +88,9 @@ test_expect_success 'clone -c remote.<remote>.fetch=<refspec> --origin=<name>' ' cat >expect <<-\EOF && refs/grab/it - refs/heads/master + refs/heads/main refs/remotes/upstream/HEAD - refs/remotes/upstream/master + refs/remotes/upstream/main EOF test_cmp expect actual ' diff --git a/t/t5612-clone-refspec.sh b/t/t5612-clone-refspec.sh index e3b436d8ae..6a6af7449c 100755 --- a/t/t5612-clone-refspec.sh +++ b/t/t5612-clone-refspec.sh @@ -1,10 +1,13 @@ #!/bin/sh test_description='test refspec written by clone-command' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' - # Make two branches, "master" and "side" + # Make two branches, "main" and "side" echo one >file && git add file && git commit -m one && @@ -16,7 +19,7 @@ test_expect_success 'setup' ' git checkout -b side && echo four >file && git commit -a -m four && - git checkout master && + git checkout main && git tag five && # default clone @@ -25,18 +28,18 @@ test_expect_success 'setup' ' # default clone --no-tags git clone --no-tags . dir_all_no_tags && - # default --single that follows HEAD=master - git clone --single-branch . dir_master && + # default --single that follows HEAD=main + git clone --single-branch . dir_main && - # default --single that follows HEAD=master with no tags - git clone --single-branch --no-tags . dir_master_no_tags && + # default --single that follows HEAD=main with no tags + git clone --single-branch --no-tags . dir_main_no_tags && # default --single that follows HEAD=side git checkout side && git clone --single-branch . dir_side && # explicit --single that follows side - git checkout master && + git checkout main && git clone --single-branch --branch side . dir_side2 && # default --single with --mirror @@ -55,11 +58,11 @@ test_expect_success 'setup' ' # explicit --single with tag and --no-tags git clone --single-branch --no-tags --branch two . dir_tag_no_tags && - # advance both "master" and "side" branches + # advance both "main" and "side" branches git checkout side && echo five >file && git commit -a -m five && - git checkout master && + git checkout main && echo six >file && git commit -a -m six && @@ -75,7 +78,7 @@ test_expect_success 'by default all branches will be kept updated' ' sed -e "/HEAD$/d" \ -e "s|/remotes/origin/|/heads/|" refs >../actual ) && - # follow both master and side + # follow both main and side git for-each-ref refs/heads >expect && test_cmp expect actual ' @@ -100,20 +103,20 @@ test_expect_success 'clone with --no-tags' ' test_must_be_empty actual ' -test_expect_success '--single-branch while HEAD pointing at master' ' +test_expect_success '--single-branch while HEAD pointing at main' ' ( - cd dir_master && + cd dir_main && git fetch --force && git for-each-ref refs/remotes/origin >refs && sed -e "/HEAD$/d" \ -e "s|/remotes/origin/|/heads/|" refs >../actual ) && - # only follow master - git for-each-ref refs/heads/master >expect && + # only follow main + git for-each-ref refs/heads/main >expect && # get & check latest tags test_cmp expect actual && ( - cd dir_master && + cd dir_main && git fetch --tags --force && git for-each-ref refs/tags >../actual ) && @@ -122,20 +125,20 @@ test_expect_success '--single-branch while HEAD pointing at master' ' test_line_count = 2 actual ' -test_expect_success '--single-branch while HEAD pointing at master and --no-tags' ' +test_expect_success '--single-branch while HEAD pointing at main and --no-tags' ' ( - cd dir_master_no_tags && + cd dir_main_no_tags && git fetch && git for-each-ref refs/remotes/origin >refs && sed -e "/HEAD$/d" \ -e "s|/remotes/origin/|/heads/|" refs >../actual ) && - # only follow master - git for-each-ref refs/heads/master >expect && + # only follow main + git for-each-ref refs/heads/main >expect && test_cmp expect actual && # get tags (noop) ( - cd dir_master_no_tags && + cd dir_main_no_tags && git fetch && git for-each-ref refs/tags >../actual ) && @@ -143,7 +146,7 @@ test_expect_success '--single-branch while HEAD pointing at master and --no-tags test_line_count = 0 actual && # get tags with --tags overrides tagOpt ( - cd dir_master_no_tags && + cd dir_main_no_tags && git fetch --tags && git for-each-ref refs/tags >../actual ) && diff --git a/t/t5614-clone-submodules-shallow.sh b/t/t5614-clone-submodules-shallow.sh index e4e6ea4d52..5504b519c7 100755 --- a/t/t5614-clone-submodules-shallow.sh +++ b/t/t5614-clone-submodules-shallow.sh @@ -7,7 +7,7 @@ test_description='Test shallow cloning of repos with submodules' pwd=$(pwd) test_expect_success 'setup' ' - git checkout -b master && + git checkout -b main && test_commit commit1 && test_commit commit2 && mkdir sub && diff --git a/t/t5616-partial-clone.sh b/t/t5616-partial-clone.sh index d98c550267..5cb415386e 100755 --- a/t/t5616-partial-clone.sh +++ b/t/t5616-partial-clone.sh @@ -2,6 +2,9 @@ test_description='git partial clone' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # create a normal "src" repo where we can later create new commits. @@ -51,14 +54,14 @@ test_expect_success 'verify that .promisor file contains refs fetched' ' test_line_count = 1 promisorlist && git -C srv.bare rev-parse --verify HEAD >headhash && grep "$(cat headhash) HEAD" $(cat promisorlist) && - grep "$(cat headhash) refs/heads/master" $(cat promisorlist) + grep "$(cat headhash) refs/heads/main" $(cat promisorlist) ' -# checkout master to force dynamic object fetch of blobs at HEAD. +# checkout main to force dynamic object fetch of blobs at HEAD. test_expect_success 'verify checkout with dynamic object fetch' ' git -C pc1 rev-list --quiet --objects --missing=print HEAD >observed && test_line_count = 4 observed && - git -C pc1 checkout master && + git -C pc1 checkout main && git -C pc1 rev-list --quiet --objects --missing=print HEAD >observed && test_line_count = 0 observed ' @@ -73,8 +76,8 @@ test_expect_success 'push new commits to server' ' git -C src add file.1.txt git -C src commit -m "mod $x" done && - git -C src blame master -- file.1.txt >expect.blame && - git -C src push -u srv master + git -C src blame main -- file.1.txt >expect.blame && + git -C src push -u srv main ' # (partial) fetch in the partial clone repo from the promisor remote. @@ -83,26 +86,26 @@ test_expect_success 'push new commits to server' ' test_expect_success 'partial fetch inherits filter settings' ' git -C pc1 fetch origin && git -C pc1 rev-list --quiet --objects --missing=print \ - master..origin/master >observed && + main..origin/main >observed && test_line_count = 5 observed ' # force dynamic object fetch using diff. -# we should only get 1 new blob (for the file in origin/master). +# we should only get 1 new blob (for the file in origin/main). test_expect_success 'verify diff causes dynamic object fetch' ' - git -C pc1 diff master..origin/master -- file.1.txt && + git -C pc1 diff main..origin/main -- file.1.txt && git -C pc1 rev-list --quiet --objects --missing=print \ - master..origin/master >observed && + main..origin/main >observed && test_line_count = 4 observed ' # force full dynamic object fetch of the file's history using blame. # we should get the intermediate blobs for the file. test_expect_success 'verify blame causes dynamic object fetch' ' - git -C pc1 blame origin/master -- file.1.txt >observed.blame && + git -C pc1 blame origin/main -- file.1.txt >observed.blame && test_cmp expect.blame observed.blame && git -C pc1 rev-list --quiet --objects --missing=print \ - master..origin/master >observed && + main..origin/main >observed && test_line_count = 0 observed ' @@ -115,7 +118,7 @@ test_expect_success 'push new commits to server for file.2.txt' ' git -C src add file.2.txt git -C src commit -m "mod $x" done && - git -C src push -u srv master + git -C src push -u srv main ' # Do FULL fetch by disabling inherited filter-spec using --no-filter. @@ -123,7 +126,7 @@ test_expect_success 'push new commits to server for file.2.txt' ' test_expect_success 'override inherited filter-spec using --no-filter' ' git -C pc1 fetch --no-filter origin && git -C pc1 rev-list --quiet --objects --missing=print \ - master..origin/master >observed && + main..origin/main >observed && test_line_count = 0 observed ' @@ -136,7 +139,7 @@ test_expect_success 'push new commits to server for file.3.txt' ' git -C src add file.3.txt git -C src commit -m "mod $x" done && - git -C src push -u srv master + git -C src push -u srv main ' # Do a partial fetch and then try to manually fetch the missing objects. @@ -146,7 +149,7 @@ test_expect_success 'manual prefetch of missing objects' ' git -C pc1 fetch --filter=blob:none origin && git -C pc1 rev-list --quiet --objects --missing=print \ - master..origin/master >revs && + main..origin/main >revs && awk -f print_1.awk revs | sed "s/?//" | sort >observed.oids && @@ -155,7 +158,7 @@ test_expect_success 'manual prefetch of missing objects' ' git -C pc1 fetch-pack --stdin "file://$(pwd)/srv.bare" <observed.oids && git -C pc1 rev-list --quiet --objects --missing=print \ - master..origin/master >revs && + main..origin/main >revs && awk -f print_1.awk revs | sed "s/?//" | sort >observed.oids && @@ -196,7 +199,7 @@ test_expect_success 'use fsck before and after manually fetching a missing subtr echo "in dir" >src/dir/file.txt && git -C src add dir/file.txt && git -C src commit -m "file in dir" && - git -C src push -u srv master && + git -C src push -u srv main && SUBTREE=$(git -C src rev-parse HEAD:dir) && rm -rf dst && @@ -204,7 +207,7 @@ test_expect_success 'use fsck before and after manually fetching a missing subtr git -C dst fsck && # Make sure we only have commits, and all trees and blobs are missing. - git -C dst rev-list --missing=allow-any --objects master \ + git -C dst rev-list --missing=allow-any --objects main \ >fetched_objects && awk -f print_1.awk fetched_objects | xargs -n1 git -C dst cat-file -t >fetched_types && @@ -221,7 +224,7 @@ test_expect_success 'use fsck before and after manually fetching a missing subtr git -C dst fsck && # Auto-fetch all remaining trees and blobs with --missing=error - git -C dst rev-list --missing=error --objects master >fetched_objects && + git -C dst rev-list --missing=error --objects main >fetched_objects && test_line_count = 70 fetched_objects && awk -f print_1.awk fetched_objects | @@ -347,7 +350,7 @@ test_expect_success 'setup src repo for sparse filter' ' test_expect_success 'partial clone with sparse filter succeeds' ' rm -rf dst.git && git clone --no-local --bare \ - --filter=sparse:oid=master:only-one \ + --filter=sparse:oid=main:only-one \ sparse-src dst.git && ( cd dst.git && @@ -360,11 +363,11 @@ test_expect_success 'partial clone with sparse filter succeeds' ' test_expect_success 'partial clone with unresolvable sparse filter fails cleanly' ' rm -rf dst.git && test_must_fail git clone --no-local --bare \ - --filter=sparse:oid=master:no-such-name \ + --filter=sparse:oid=main:no-such-name \ sparse-src dst.git 2>err && - test_i18ngrep "unable to access sparse blob in .master:no-such-name" err && + test_i18ngrep "unable to access sparse blob in .main:no-such-name" err && test_must_fail git clone --no-local --bare \ - --filter=sparse:oid=master \ + --filter=sparse:oid=main \ sparse-src dst.git 2>err && test_i18ngrep "unable to parse sparse filter data in" err ' @@ -419,7 +422,7 @@ test_expect_success 'fetch lazy-fetches only to resolve deltas' ' # promisor remote other than for the big tree (because it needs to # resolve the delta). GIT_TRACE_PACKET="$(pwd)/trace" git -C client \ - fetch "file://$(pwd)/server" master && + fetch "file://$(pwd)/server" main && # Verify the assumption that the client needed to fetch the delta base # to resolve the delta. @@ -438,7 +441,7 @@ test_expect_success 'fetch lazy-fetches only to resolve deltas, protocol v2' ' # promisor remote other than for the big blob (because it needs to # resolve the delta). GIT_TRACE_PACKET="$(pwd)/trace" git -C client \ - fetch "file://$(pwd)/server" master && + fetch "file://$(pwd)/server" main && # Verify that protocol version 2 was used. grep "fetch< version 2" trace && diff --git a/t/t5617-clone-submodules-remote.sh b/t/t5617-clone-submodules-remote.sh index 1a041df10b..e2dbb4eaba 100755 --- a/t/t5617-clone-submodules-remote.sh +++ b/t/t5617-clone-submodules-remote.sh @@ -2,12 +2,15 @@ test_description='Test cloning repos with submodules using remote-tracking branches' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh pwd=$(pwd) test_expect_success 'setup' ' - git checkout -b master && + git checkout -b main && test_commit commit1 && mkdir sub && ( @@ -39,7 +42,7 @@ test_expect_success 'clone with --remote-submodules' ' git clone --recurse-submodules --remote-submodules "file://$pwd/." super_clone && ( cd super_clone/sub && - git diff --exit-code remotes/origin/master + git diff --exit-code remotes/origin/main ) ' @@ -57,7 +60,7 @@ test_expect_success 'clone with --single-branch' ' git clone --recurse-submodules --single-branch "file://$pwd/." super_clone && ( cd super_clone/sub && - git rev-parse --verify origin/master && + git rev-parse --verify origin/main && test_must_fail git rev-parse --verify origin/other ) ' diff --git a/t/t5700-protocol-v1.sh b/t/t5700-protocol-v1.sh index 022901b9eb..468bd3e13e 100755 --- a/t/t5700-protocol-v1.sh +++ b/t/t5700-protocol-v1.sh @@ -8,6 +8,9 @@ TEST_NO_CREATE_REPO=1 GIT_TEST_PROTOCOL_VERSION=0 export GIT_TEST_PROTOCOL_VERSION +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Test protocol v1 with 'git://' transport @@ -41,7 +44,7 @@ test_expect_success 'fetch with git:// using protocol v1' ' GIT_TRACE_PACKET=1 git -C daemon_child -c protocol.version=1 \ fetch 2>log && - git -C daemon_child log -1 --format=%s origin/master >actual && + git -C daemon_child log -1 --format=%s origin/main >actual && git -C "$daemon_parent" log -1 --format=%s >expect && test_cmp expect actual && @@ -69,7 +72,7 @@ test_expect_success 'push with git:// using protocol v1' ' test_commit -C daemon_child three && # Push to another branch, as the target repository has the - # master branch checked out and we cannot push into it. + # main branch checked out and we cannot push into it. GIT_TRACE_PACKET=1 git -C daemon_child -c protocol.version=1 \ push origin HEAD:client_branch 2>log && @@ -110,7 +113,7 @@ test_expect_success 'fetch with file:// using protocol v1' ' GIT_TRACE_PACKET=1 git -C file_child -c protocol.version=1 \ fetch 2>log && - git -C file_child log -1 --format=%s origin/master >actual && + git -C file_child log -1 --format=%s origin/main >actual && git -C file_parent log -1 --format=%s >expect && test_cmp expect actual && @@ -134,7 +137,7 @@ test_expect_success 'push with file:// using protocol v1' ' test_commit -C file_child three && # Push to another branch, as the target repository has the - # master branch checked out and we cannot push into it. + # main branch checked out and we cannot push into it. GIT_TRACE_PACKET=1 git -C file_child -c protocol.version=1 \ push origin HEAD:client_branch 2>log && @@ -188,7 +191,7 @@ test_expect_success 'fetch with ssh:// using protocol v1' ' fetch 2>log && expect_ssh git-upload-pack && - git -C ssh_child log -1 --format=%s origin/master >actual && + git -C ssh_child log -1 --format=%s origin/main >actual && git -C ssh_parent log -1 --format=%s >expect && test_cmp expect actual && @@ -213,7 +216,7 @@ test_expect_success 'push with ssh:// using protocol v1' ' test_commit -C ssh_child three && # Push to another branch, as the target repository has the - # master branch checked out and we cannot push into it. + # main branch checked out and we cannot push into it. GIT_TRACE_PACKET=1 git -C ssh_child -c protocol.version=1 \ push origin HEAD:client_branch 2>log && expect_ssh git-receive-pack && @@ -257,7 +260,7 @@ test_expect_success 'fetch with http:// using protocol v1' ' GIT_TRACE_PACKET=1 git -C http_child -c protocol.version=1 \ fetch 2>log && - git -C http_child log -1 --format=%s origin/master >actual && + git -C http_child log -1 --format=%s origin/main >actual && git -C "$HTTPD_DOCUMENT_ROOT_PATH/http_parent" log -1 --format=%s >expect && test_cmp expect actual && @@ -281,7 +284,7 @@ test_expect_success 'push with http:// using protocol v1' ' test_commit -C http_child three && # Push to another branch, as the target repository has the - # master branch checked out and we cannot push into it. + # main branch checked out and we cannot push into it. GIT_TRACE_PACKET=1 git -C http_child -c protocol.version=1 \ push origin HEAD:client_branch && #2>log && diff --git a/t/t5701-git-serve.sh b/t/t5701-git-serve.sh index a1f5fdc9fd..d9143b4bd2 100755 --- a/t/t5701-git-serve.sh +++ b/t/t5701-git-serve.sh @@ -2,6 +2,9 @@ test_description='test protocol v2 server commands' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'test capability advertisement' ' @@ -83,9 +86,9 @@ test_expect_success 'wrong object-format' ' # test_expect_success 'setup some refs and tags' ' test_commit one && - git branch dev master && + git branch dev main && test_commit two && - git symbolic-ref refs/heads/release refs/heads/master && + git symbolic-ref refs/heads/release refs/heads/main && git tag -a -m "annotated tag" annotated-tag ' @@ -99,7 +102,7 @@ test_expect_success 'basics of ls-refs' ' cat >expect <<-EOF && $(git rev-parse HEAD) HEAD $(git rev-parse refs/heads/dev) refs/heads/dev - $(git rev-parse refs/heads/master) refs/heads/master + $(git rev-parse refs/heads/main) refs/heads/main $(git rev-parse refs/heads/release) refs/heads/release $(git rev-parse refs/tags/annotated-tag) refs/tags/annotated-tag $(git rev-parse refs/tags/one) refs/tags/one @@ -117,13 +120,13 @@ test_expect_success 'basic ref-prefixes' ' command=ls-refs object-format=$(test_oid algo) 0001 - ref-prefix refs/heads/master + ref-prefix refs/heads/main ref-prefix refs/tags/one 0000 EOF cat >expect <<-EOF && - $(git rev-parse refs/heads/master) refs/heads/master + $(git rev-parse refs/heads/main) refs/heads/main $(git rev-parse refs/tags/one) refs/tags/one 0000 EOF @@ -144,7 +147,7 @@ test_expect_success 'refs/heads prefix' ' cat >expect <<-EOF && $(git rev-parse refs/heads/dev) refs/heads/dev - $(git rev-parse refs/heads/master) refs/heads/master + $(git rev-parse refs/heads/main) refs/heads/main $(git rev-parse refs/heads/release) refs/heads/release 0000 EOF @@ -188,8 +191,8 @@ test_expect_success 'symrefs parameter' ' cat >expect <<-EOF && $(git rev-parse refs/heads/dev) refs/heads/dev - $(git rev-parse refs/heads/master) refs/heads/master - $(git rev-parse refs/heads/release) refs/heads/release symref-target:refs/heads/master + $(git rev-parse refs/heads/main) refs/heads/main + $(git rev-parse refs/heads/release) refs/heads/release symref-target:refs/heads/main 0000 EOF diff --git a/t/t5702-protocol-v2.sh b/t/t5702-protocol-v2.sh index 7d5b17909b..3d994e0b1b 100755 --- a/t/t5702-protocol-v2.sh +++ b/t/t5702-protocol-v2.sh @@ -4,6 +4,9 @@ test_description='test git wire-protocol version 2' TEST_NO_CREATE_REPO=1 +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Test protocol v2 with 'git://' transport @@ -36,10 +39,10 @@ test_expect_success 'ref advertisement is filtered with ls-remote using protocol test_when_finished "rm -f log" && GIT_TRACE_PACKET="$(pwd)/log" git -c protocol.version=2 \ - ls-remote "$GIT_DAEMON_URL/parent" master >actual && + ls-remote "$GIT_DAEMON_URL/parent" main >actual && cat >expect <<-EOF && - $(git -C "$daemon_parent" rev-parse refs/heads/master)$(printf "\t")refs/heads/master + $(git -C "$daemon_parent" rev-parse refs/heads/main)$(printf "\t")refs/heads/main EOF test_cmp expect actual @@ -69,7 +72,7 @@ test_expect_success 'fetch with git:// using protocol v2' ' GIT_TRACE_PACKET="$(pwd)/log" git -C daemon_child -c protocol.version=2 \ fetch && - git -C daemon_child log -1 --format=%s origin/master >actual && + git -C daemon_child log -1 --format=%s origin/main >actual && git -C "$daemon_parent" log -1 --format=%s >expect && test_cmp expect actual && @@ -118,7 +121,7 @@ test_expect_success 'push with git:// and a config of v2 does not request v2' ' test_commit -C daemon_child three && # Push to another branch, as the target repository has the - # master branch checked out and we cannot push into it. + # main branch checked out and we cannot push into it. GIT_TRACE_PACKET="$(pwd)/log" git -C daemon_child -c protocol.version=2 \ push origin HEAD:client_branch && @@ -158,10 +161,10 @@ test_expect_success 'ref advertisement is filtered with ls-remote using protocol test_when_finished "rm -f log" && GIT_TRACE_PACKET="$(pwd)/log" git -c protocol.version=2 \ - ls-remote "file://$(pwd)/file_parent" master >actual && + ls-remote "file://$(pwd)/file_parent" main >actual && cat >expect <<-EOF && - $(git -C file_parent rev-parse refs/heads/master)$(printf "\t")refs/heads/master + $(git -C file_parent rev-parse refs/heads/main)$(printf "\t")refs/heads/main EOF test_cmp expect actual @@ -171,10 +174,10 @@ test_expect_success 'server-options are sent when using ls-remote' ' test_when_finished "rm -f log" && GIT_TRACE_PACKET="$(pwd)/log" git -c protocol.version=2 \ - ls-remote -o hello -o world "file://$(pwd)/file_parent" master >actual && + ls-remote -o hello -o world "file://$(pwd)/file_parent" main >actual && cat >expect <<-EOF && - $(git -C file_parent rev-parse refs/heads/master)$(printf "\t")refs/heads/master + $(git -C file_parent rev-parse refs/heads/main)$(printf "\t")refs/heads/main EOF test_cmp expect actual && @@ -184,7 +187,7 @@ test_expect_success 'server-options are sent when using ls-remote' ' test_expect_success 'warn if using server-option with ls-remote with legacy protocol' ' test_must_fail env GIT_TEST_PROTOCOL_VERSION=0 git -c protocol.version=0 \ - ls-remote -o hello -o world "file://$(pwd)/file_parent" master 2>err && + ls-remote -o hello -o world "file://$(pwd)/file_parent" main 2>err && test_i18ngrep "see protocol.version in" err && test_i18ngrep "server options require protocol version 2 or later" err @@ -217,7 +220,7 @@ test_expect_success 'fetch with file:// using protocol v2' ' GIT_TRACE_PACKET="$(pwd)/log" git -C file_child -c protocol.version=2 \ fetch origin && - git -C file_child log -1 --format=%s origin/master >actual && + git -C file_child log -1 --format=%s origin/main >actual && git -C file_parent log -1 --format=%s >expect && test_cmp expect actual && @@ -232,13 +235,13 @@ test_expect_success 'ref advertisement is filtered during fetch using protocol v git -C file_parent branch unwanted-branch three && GIT_TRACE_PACKET="$(pwd)/log" git -C file_child -c protocol.version=2 \ - fetch origin master && + fetch origin main && - git -C file_child log -1 --format=%s origin/master >actual && + git -C file_child log -1 --format=%s origin/main >actual && git -C file_parent log -1 --format=%s >expect && test_cmp expect actual && - grep "refs/heads/master" log && + grep "refs/heads/main" log && ! grep "refs/heads/unwanted-branch" log ' @@ -248,9 +251,9 @@ test_expect_success 'server-options are sent when fetching' ' test_commit -C file_parent four && GIT_TRACE_PACKET="$(pwd)/log" git -C file_child -c protocol.version=2 \ - fetch -o hello -o world origin master && + fetch -o hello -o world origin main && - git -C file_child log -1 --format=%s origin/master >actual && + git -C file_child log -1 --format=%s origin/main >actual && git -C file_parent log -1 --format=%s >expect && test_cmp expect actual && @@ -264,7 +267,7 @@ test_expect_success 'warn if using server-option with fetch with legacy protocol git init temp_child && test_must_fail env GIT_TEST_PROTOCOL_VERSION=0 git -C temp_child -c protocol.version=0 \ - fetch -o hello -o world "file://$(pwd)/file_parent" master 2>err && + fetch -o hello -o world "file://$(pwd)/file_parent" main 2>err && test_i18ngrep "see protocol.version in" err && test_i18ngrep "server options require protocol version 2 or later" err @@ -325,7 +328,7 @@ test_expect_success 'partial clone' ' grep "version 2" trace && # Ensure that the old version of the file is missing - git -C client rev-list --quiet --objects --missing=print master \ + git -C client rev-list --quiet --objects --missing=print main \ >observed.oids && grep "$(git -C server rev-parse message1:a.txt)" observed.oids && @@ -350,7 +353,7 @@ test_expect_success 'partial fetch' ' SERVER="file://$(pwd)/server" && GIT_TRACE_PACKET="$(pwd)/trace" git -C client -c protocol.version=2 \ - fetch --filter=blob:none "$SERVER" master:refs/heads/other && + fetch --filter=blob:none "$SERVER" main:refs/heads/other && grep "version 2" trace && # Ensure that the old version of the file is missing @@ -395,7 +398,7 @@ test_expect_success 'even with handcrafted request, filter does not work if not command=fetch object-format=$(test_oid algo) 0001 - want $(git -C server rev-parse master) + want $(git -C server rev-parse main) filter blob:none 0000 EOF @@ -539,7 +542,7 @@ test_expect_success 'deepen-relative' ' test_commit -C server four && # Sanity check that only "three" is downloaded - git -C client log --pretty=tformat:%s master >actual && + git -C client log --pretty=tformat:%s main >actual && echo three >expected && test_cmp expected actual && @@ -548,7 +551,7 @@ test_expect_success 'deepen-relative' ' # Ensure that protocol v2 is used grep "fetch< version 2" trace && - git -C client log --pretty=tformat:%s origin/master >actual && + git -C client log --pretty=tformat:%s origin/main >actual && cat >expected <<-\EOF && four three @@ -670,7 +673,7 @@ test_expect_success 'fetch with http:// using protocol v2' ' GIT_TRACE_PACKET="$(pwd)/log" git -C http_child -c protocol.version=2 \ fetch && - git -C http_child log -1 --format=%s origin/master >actual && + git -C http_child log -1 --format=%s origin/main >actual && git -C "$HTTPD_DOCUMENT_ROOT_PATH/http_parent" log -1 --format=%s >expect && test_cmp expect actual && @@ -698,11 +701,11 @@ test_expect_success 'fetch from namespaced repo respects namespaces' ' test_commit -C "$HTTPD_DOCUMENT_ROOT_PATH/nsrepo" one && test_commit -C "$HTTPD_DOCUMENT_ROOT_PATH/nsrepo" two && git -C "$HTTPD_DOCUMENT_ROOT_PATH/nsrepo" \ - update-ref refs/namespaces/ns/refs/heads/master one && + update-ref refs/namespaces/ns/refs/heads/main one && GIT_TRACE_PACKET="$(pwd)/log" git -C http_child -c protocol.version=2 \ fetch "$HTTPD_URL/smart_namespace/nsrepo" \ - refs/heads/master:refs/heads/theirs && + refs/heads/main:refs/heads/theirs && # Server responded using protocol v2 grep "fetch< version 2" log && @@ -733,7 +736,7 @@ test_expect_success 'push with http:// and a config of v2 does not request v2' ' test_commit -C http_child three && # Push to another branch, as the target repository has the - # master branch checked out and we cannot push into it. + # main branch checked out and we cannot push into it. GIT_TRACE_PACKET="$(pwd)/log" git -C http_child -c protocol.version=2 \ push origin HEAD:client_branch && diff --git a/t/t5703-upload-pack-ref-in-want.sh b/t/t5703-upload-pack-ref-in-want.sh index eab966985b..64d8f99325 100755 --- a/t/t5703-upload-pack-ref-in-want.sh +++ b/t/t5703-upload-pack-ref-in-want.sh @@ -2,6 +2,9 @@ test_description='upload-pack ref-in-want' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh get_actual_refs () { diff --git a/t/t5801-remote-helpers.sh b/t/t5801-remote-helpers.sh index 0f04b6cddb..d386076dbd 100755 --- a/t/t5801-remote-helpers.sh +++ b/t/t5801-remote-helpers.sh @@ -5,6 +5,9 @@ test_description='Test remote-helper import and export commands' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-gpg.sh @@ -71,18 +74,18 @@ test_expect_success 'fetch multiple branches' ' (cd local && git fetch ) && - compare_refs server master local refs/remotes/origin/master && + compare_refs server main local refs/remotes/origin/main && compare_refs server new local refs/remotes/origin/new ' test_expect_success 'push when remote has extra refs' ' (cd local && - git reset --hard origin/master && + git reset --hard origin/main && echo content >>file && git commit -a -m six && git push ) && - compare_refs local master server master + compare_refs local main server main ' test_expect_success 'push new branch by name' ' @@ -174,7 +177,7 @@ test_expect_failure 'pushing without marks' ' test_expect_success 'push all with existing object' ' (cd local && - git branch dup2 master && + git branch dup2 main && git push origin --all ) && compare_refs local dup2 server dup2 @@ -182,7 +185,7 @@ test_expect_success 'push all with existing object' ' test_expect_success 'push ref with existing object' ' (cd local && - git branch dup master && + git branch dup main && git push origin dup ) && compare_refs local dup server dup @@ -190,7 +193,7 @@ test_expect_success 'push ref with existing object' ' test_expect_success GPG 'push signed tag' ' (cd local && - git checkout master && + git checkout main && git tag -s -m signed-tag signed-tag && git push origin signed-tag ) && @@ -200,7 +203,7 @@ test_expect_success GPG 'push signed tag' ' test_expect_success GPG 'push signed tag with signed-tags capability' ' (cd local && - git checkout master && + git checkout main && git tag -s -m signed-tag signed-tag-2 && GIT_REMOTE_TESTGIT_SIGNED_TAGS=1 git push origin signed-tag-2 ) && @@ -209,7 +212,7 @@ test_expect_success GPG 'push signed tag with signed-tags capability' ' test_expect_success 'push update refs' ' (cd local && - git checkout -b update master && + git checkout -b update main && echo update >>file && git commit -a -m update && git push origin update && @@ -260,7 +263,7 @@ test_expect_success 'proper failure checks for fetching' ' test_expect_success 'proper failure checks for pushing' ' test_when_finished "rm -rf local/git.marks local/testgit.marks" && (cd local && - git checkout -b crash master && + git checkout -b crash main && echo crash >>file && git commit -a -m crash && test_must_fail env GIT_REMOTE_TESTGIT_FAILURE=1 git push --all && @@ -272,7 +275,7 @@ test_expect_success 'proper failure checks for pushing' ' test_expect_success 'push messages' ' (cd local && - git checkout -b new_branch master && + git checkout -b new_branch main && echo new >>file && git commit -a -m new && git push origin new_branch && @@ -286,7 +289,7 @@ test_expect_success 'push messages' ' test_expect_success 'fetch HEAD' ' (cd server && - git checkout master && + git checkout main && echo more >>file && git commit -a -m more ) && @@ -298,7 +301,7 @@ test_expect_success 'fetch HEAD' ' test_expect_success 'fetch url' ' (cd server && - git checkout master && + git checkout main && echo more >>file && git commit -a -m more ) && diff --git a/t/t6000-rev-list-misc.sh b/t/t6000-rev-list-misc.sh index fc4d55dcb2..12def7bcbf 100755 --- a/t/t6000-rev-list-misc.sh +++ b/t/t6000-rev-list-misc.sh @@ -2,6 +2,9 @@ test_description='miscellaneous rev-list tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -85,7 +88,7 @@ test_expect_success 'propagate uninteresting flag down correctly' ' ' test_expect_success 'symleft flag bit is propagated down from tag' ' - git log --format="%m %s" --left-right v1.0...master >actual && + git log --format="%m %s" --left-right v1.0...main >actual && cat >expect <<-\EOF && < another < that diff --git a/t/t6001-rev-list-graft.sh b/t/t6001-rev-list-graft.sh index 7504ba4751..90d93f77fa 100755 --- a/t/t6001-rev-list-graft.sh +++ b/t/t6001-rev-list-graft.sh @@ -2,6 +2,9 @@ test_description='Revision traversal vs grafts and path limiter' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -20,7 +23,7 @@ test_expect_success setup ' git commit -a -m "Third in one history." && A2=$(git rev-parse --verify HEAD) && - rm -f .git/refs/heads/master .git/index && + rm -f .git/refs/heads/main .git/index && echo >fileA fileA again && echo >subdir/fileB fileB again && diff --git a/t/t6004-rev-list-path-optim.sh b/t/t6004-rev-list-path-optim.sh index 3e8c42ee0b..cd4f420e2a 100755 --- a/t/t6004-rev-list-path-optim.sh +++ b/t/t6004-rev-list-path-optim.sh @@ -4,7 +4,7 @@ test_description='git rev-list trivial path optimization test d/z1 b0 b1 - o------------------------*----o master + o------------------------*----o main / / o---------o----o----o----o side a0 c0 c1 a1 c2 @@ -13,6 +13,9 @@ test_description='git rev-list trivial path optimization test ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -55,18 +58,18 @@ test_expect_success 'further setup' ' git add c && test_tick && git commit -m "Side makes yet another irrelevant commit" && - git checkout master && + git checkout main && echo Another >b && echo Munged >d/z && git add b d/z && test_tick && - git commit -m "Master touches b" && - git tag master_b0 && + git commit -m "Main touches b" && + git tag main_b0 && git merge side && echo Touched >b && git add b && test_tick && - git commit -m "Master touches b again" + git commit -m "Main touches b again" ' test_expect_success 'path optimization 2' ' @@ -76,13 +79,13 @@ test_expect_success 'path optimization 2' ' ' test_expect_success 'pathspec with leading path' ' - git rev-parse master^ master_b0 side_c0 initial >expected && + git rev-parse main^ main_b0 side_c0 initial >expected && git rev-list HEAD -- d >actual && test_cmp expected actual ' test_expect_success 'pathspec with glob (1)' ' - git rev-parse master^ master_b0 side_c0 initial >expected && + git rev-parse main^ main_b0 side_c0 initial >expected && git rev-list HEAD -- "d/*" >actual && test_cmp expected actual ' diff --git a/t/t6006-rev-list-format.sh b/t/t6006-rev-list-format.sh index 99a1eaf332..35a2f62392 100755 --- a/t/t6006-rev-list-format.sh +++ b/t/t6006-rev-list-format.sh @@ -5,6 +5,9 @@ test_description='git rev-list --pretty=format test' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-terminal.sh @@ -53,7 +56,7 @@ test_expect_success 'setup' ' test_format () { cat >expect.$1 test_expect_${3:-success} "format $1" " - git rev-list --pretty=format:'$2' master >output.$1 && + git rev-list --pretty=format:'$2' main >output.$1 && test_cmp expect.$1 output.$1 " } @@ -184,13 +187,13 @@ test_expect_success 'basic colors' ' <RED>foo<GREEN>bar<BLUE>baz<RESET>xyzzy EOF format="%Credfoo%Cgreenbar%Cbluebaz%Cresetxyzzy" && - git rev-list --color --format="$format" -1 master >actual.raw && + git rev-list --color --format="$format" -1 main >actual.raw && test_decode_color <actual.raw >actual && test_cmp expect actual ' test_expect_success '%S is not a placeholder for rev-list yet' ' - git rev-list --format="%S" -1 master | grep "%S" + git rev-list --format="%S" -1 main | grep "%S" ' test_expect_success 'advanced colors' ' @@ -199,7 +202,7 @@ test_expect_success 'advanced colors' ' <BOLD;RED;BYELLOW>foo<RESET> EOF format="%C(red yellow bold)foo%C(reset)" && - git rev-list --color --format="$format" -1 master >actual.raw && + git rev-list --color --format="$format" -1 main >actual.raw && test_decode_color <actual.raw >actual && test_cmp expect actual ' @@ -406,7 +409,7 @@ test_expect_success '%x00 shows NUL' ' test_expect_success '%ad respects --date=' ' echo 2005-04-07 >expect.ad-short && - git log -1 --date=short --pretty=tformat:%ad >output.ad-short master && + git log -1 --date=short --pretty=tformat:%ad >output.ad-short main && test_cmp expect.ad-short output.ad-short ' @@ -494,8 +497,8 @@ test_expect_success '"%h %gD: %gs" is same as git-reflog (with --abbrev)' ' ' test_expect_success '%gd shortens ref name' ' - echo "master@{0}" >expect.gd-short && - git log -g -1 --format=%gd refs/heads/master >actual.gd-short && + echo "main@{0}" >expect.gd-short && + git log -g -1 --format=%gd refs/heads/main >actual.gd-short && test_cmp expect.gd-short actual.gd-short ' diff --git a/t/t6007-rev-list-cherry-pick-file.sh b/t/t6007-rev-list-cherry-pick-file.sh index f0268372d2..aebe4b69e1 100755 --- a/t/t6007-rev-list-cherry-pick-file.sh +++ b/t/t6007-rev-list-cherry-pick-file.sh @@ -2,6 +2,9 @@ test_description='test git rev-list --cherry-pick -- file' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # A---B---D---F @@ -31,7 +34,7 @@ test_expect_success setup ' test_tick && git commit -m "E" && git tag E && - git checkout master && + git checkout main && git checkout branch foo && test_tick && git commit -m "B" && @@ -233,7 +236,7 @@ test_expect_success '--cherry-pick with independent, but identical branches' ' test_tick && git commit -m "independent, too" foo && test -z "$(git rev-list --left-right --cherry-pick \ - HEAD...master -- foo)" + HEAD...main -- foo)" ' cat >expect <<EOF @@ -245,6 +248,18 @@ test_expect_success '--count --left-right' ' test_cmp expect actual ' +test_expect_success '--cherry-pick with duplicates on each side' ' + git checkout -b dup-orig && + test_commit dup-base && + git revert dup-base && + git cherry-pick dup-base && + git checkout -b dup-side HEAD~3 && + test_tick && + git cherry-pick -3 dup-orig && + git rev-list --cherry-pick dup-orig...dup-side >actual && + test_must_be_empty actual +' + # Corrupt the object store deliberately to make sure # the object is not even checked for its existence. remove_loose_object () { diff --git a/t/t6008-rev-list-submodule.sh b/t/t6008-rev-list-submodule.sh index c4af9ca0a7..3153a0d891 100755 --- a/t/t6008-rev-list-submodule.sh +++ b/t/t6008-rev-list-submodule.sh @@ -5,6 +5,9 @@ test_description='git rev-list involving submodules that this repo has' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -36,7 +39,7 @@ test_expect_success 'setup' ' ' test_expect_success "Ilari's test" ' - git rev-list --objects super master ^super^ + git rev-list --objects super main ^super^ ' test_done diff --git a/t/t6009-rev-list-parent.sh b/t/t6009-rev-list-parent.sh index 916d9692bc..63fa7c8313 100755 --- a/t/t6009-rev-list-parent.sh +++ b/t/t6009-rev-list-parent.sh @@ -2,6 +2,9 @@ test_description='ancestor culling and limiting by parent number' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_revlist () { @@ -45,7 +48,7 @@ test_expect_success 'setup roots, merges and octopuses' ' test_commit seven && git checkout -b yetanotherbranch four && test_commit eight && - git checkout master && + git checkout main && test_tick && git merge --allow-unrelated-histories -m normalmerge newroot && git tag normalmerge && @@ -56,7 +59,7 @@ test_expect_success 'setup roots, merges and octopuses' ' test_tick && git merge -m tetrapus sidebranch anotherbranch yetanotherbranch && git tag tetrapus && - git checkout master + git checkout main ' test_expect_success 'rev-list roots' ' @@ -123,7 +126,7 @@ test_expect_success 'dodecapus' ' roots="$roots root$i" || return done && - git checkout master && + git checkout main && test_tick && git merge -m dodecapus $roots && git tag dodecapus && diff --git a/t/t6012-rev-list-simplify.sh b/t/t6012-rev-list-simplify.sh index fd202fcb94..4f7fa8b6c0 100755 --- a/t/t6012-rev-list-simplify.sh +++ b/t/t6012-rev-list-simplify.sh @@ -2,6 +2,9 @@ test_description='merge simplification' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh note () { @@ -43,7 +46,7 @@ test_expect_success setup ' git add side && test_tick && git commit -m "Side root" && note J && - git checkout master && + git checkout main && echo "Hello" >file && echo "second" >lost && @@ -65,7 +68,7 @@ test_expect_success setup ' note D && test_tick && - test_must_fail git merge -m "merge" master && + test_must_fail git merge -m "merge" main && >lost && git commit -a -m "merge" && note E && @@ -74,7 +77,7 @@ test_expect_success setup ' test_tick && git commit -m "Irrelevant change" && note F && - git checkout master && + git checkout main && echo "Yet another" >elif && git add elif && test_tick && git commit -m "Another irrelevant change" && @@ -87,7 +90,7 @@ test_expect_success setup ' test_tick && git commit -a -m "Final change" && note I && - git checkout master && + git checkout main && test_tick && git merge --allow-unrelated-histories -m "Coolest" unrelated && note K && diff --git a/t/t6013-rev-list-reverse-parents.sh b/t/t6013-rev-list-reverse-parents.sh index 89458d370f..39793cbbd6 100755 --- a/t/t6013-rev-list-reverse-parents.sh +++ b/t/t6013-rev-list-reverse-parents.sh @@ -2,6 +2,9 @@ test_description='--reverse combines with --parents' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh @@ -18,24 +21,24 @@ test_expect_success 'set up --reverse example' ' commit two && git checkout -b side HEAD^ && commit three && - git checkout master && + git checkout main && git merge -s ours side && commit five ' test_expect_success '--reverse --parents --full-history combines correctly' ' - git rev-list --parents --full-history master -- foo | + git rev-list --parents --full-history main -- foo | perl -e "print reverse <>" > expected && - git rev-list --reverse --parents --full-history master -- foo \ + git rev-list --reverse --parents --full-history main -- foo \ > actual && test_cmp expected actual ' test_expect_success '--boundary does too' ' - git rev-list --boundary --parents --full-history master ^root -- foo | + git rev-list --boundary --parents --full-history main ^root -- foo | perl -e "print reverse <>" > expected && git rev-list --boundary --reverse --parents --full-history \ - master ^root -- foo > actual && + main ^root -- foo > actual && test_cmp expected actual ' diff --git a/t/t6016-rev-list-graph-simplify-history.sh b/t/t6016-rev-list-graph-simplify-history.sh index f5e6e92f5b..54b0a6f5f8 100755 --- a/t/t6016-rev-list-graph-simplify-history.sh +++ b/t/t6016-rev-list-graph-simplify-history.sh @@ -7,14 +7,23 @@ test_description='--graph and simplified history' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh +. "$TEST_DIRECTORY"/lib-log-graph.sh + +check_graph () { + cat >expect && + lib_test_cmp_graph --format=%s "$@" +} test_expect_success 'set up rev-list --graph test' ' # 3 commits on branch A test_commit A1 foo.txt && test_commit A2 bar.txt && test_commit A3 bar.txt && - git branch -m master A && + git branch -m main A && # 2 commits on branch B, started from A1 git checkout -b B A1 && @@ -28,7 +37,7 @@ test_expect_success 'set up rev-list --graph test' ' # Octopus merge B and C into branch A git checkout A && - git merge B C && + git merge B C -m A4 && git tag A4 && test_commit A5 bar.txt && @@ -38,81 +47,64 @@ test_expect_success 'set up rev-list --graph test' ' test_commit C3 foo.txt && test_commit C4 bar.txt && git checkout A && - git merge -s ours C && + git merge -s ours C -m A6 && git tag A6 && - test_commit A7 bar.txt && - - # Store commit names in variables for later use - A1=$(git rev-parse --verify A1) && - A2=$(git rev-parse --verify A2) && - A3=$(git rev-parse --verify A3) && - A4=$(git rev-parse --verify A4) && - A5=$(git rev-parse --verify A5) && - A6=$(git rev-parse --verify A6) && - A7=$(git rev-parse --verify A7) && - B1=$(git rev-parse --verify B1) && - B2=$(git rev-parse --verify B2) && - C1=$(git rev-parse --verify C1) && - C2=$(git rev-parse --verify C2) && - C3=$(git rev-parse --verify C3) && - C4=$(git rev-parse --verify C4) - ' + test_commit A7 bar.txt +' test_expect_success '--graph --all' ' - rm -f expected && - echo "* $A7" >> expected && - echo "* $A6" >> expected && - echo "|\\ " >> expected && - echo "| * $C4" >> expected && - echo "| * $C3" >> expected && - echo "* | $A5" >> expected && - echo "| | " >> expected && - echo "| \\ " >> expected && - echo "*-. | $A4" >> expected && - echo "|\\ \\| " >> expected && - echo "| | * $C2" >> expected && - echo "| | * $C1" >> expected && - echo "| * | $B2" >> expected && - echo "| * | $B1" >> expected && - echo "* | | $A3" >> expected && - echo "| |/ " >> expected && - echo "|/| " >> expected && - echo "* | $A2" >> expected && - echo "|/ " >> expected && - echo "* $A1" >> expected && - git rev-list --graph --all > actual && - test_cmp expected actual - ' + check_graph --all <<-\EOF + * A7 + * A6 + |\ + | * C4 + | * C3 + * | A5 + | | + | \ + *-. | A4 + |\ \| + | | * C2 + | | * C1 + | * | B2 + | * | B1 + * | | A3 + | |/ + |/| + * | A2 + |/ + * A1 + EOF +' # Make sure the graph_is_interesting() code still realizes # that undecorated merges are interesting, even with --simplify-by-decoration test_expect_success '--graph --simplify-by-decoration' ' - rm -f expected && git tag -d A4 && - echo "* $A7" >> expected && - echo "* $A6" >> expected && - echo "|\\ " >> expected && - echo "| * $C4" >> expected && - echo "| * $C3" >> expected && - echo "* | $A5" >> expected && - echo "| | " >> expected && - echo "| \\ " >> expected && - echo "*-. | $A4" >> expected && - echo "|\\ \\| " >> expected && - echo "| | * $C2" >> expected && - echo "| | * $C1" >> expected && - echo "| * | $B2" >> expected && - echo "| * | $B1" >> expected && - echo "* | | $A3" >> expected && - echo "| |/ " >> expected && - echo "|/| " >> expected && - echo "* | $A2" >> expected && - echo "|/ " >> expected && - echo "* $A1" >> expected && - git rev-list --graph --all --simplify-by-decoration > actual && - test_cmp expected actual - ' + check_graph --all --simplify-by-decoration <<-\EOF + * A7 + * A6 + |\ + | * C4 + | * C3 + * | A5 + | | + | \ + *-. | A4 + |\ \| + | | * C2 + | | * C1 + | * | B2 + | * | B1 + * | | A3 + | |/ + |/| + * | A2 + |/ + * A1 + EOF +' test_expect_success 'setup: get rid of decorations on B' ' git tag -d B2 && @@ -122,142 +114,133 @@ test_expect_success 'setup: get rid of decorations on B' ' # Graph with branch B simplified away test_expect_success '--graph --simplify-by-decoration prune branch B' ' - rm -f expected && - echo "* $A7" >> expected && - echo "* $A6" >> expected && - echo "|\\ " >> expected && - echo "| * $C4" >> expected && - echo "| * $C3" >> expected && - echo "* | $A5" >> expected && - echo "* | $A4" >> expected && - echo "|\\| " >> expected && - echo "| * $C2" >> expected && - echo "| * $C1" >> expected && - echo "* | $A3" >> expected && - echo "|/ " >> expected && - echo "* $A2" >> expected && - echo "* $A1" >> expected && - git rev-list --graph --simplify-by-decoration --all > actual && - test_cmp expected actual - ' + check_graph --simplify-by-decoration --all <<-\EOF + * A7 + * A6 + |\ + | * C4 + | * C3 + * | A5 + * | A4 + |\| + | * C2 + | * C1 + * | A3 + |/ + * A2 + * A1 + EOF +' test_expect_success '--graph --full-history -- bar.txt' ' - rm -f expected && - echo "* $A7" >> expected && - echo "* $A6" >> expected && - echo "|\\ " >> expected && - echo "| * $C4" >> expected && - echo "* | $A5" >> expected && - echo "* | $A4" >> expected && - echo "|\\| " >> expected && - echo "* | $A3" >> expected && - echo "|/ " >> expected && - echo "* $A2" >> expected && - git rev-list --graph --full-history --all -- bar.txt > actual && - test_cmp expected actual - ' + check_graph --full-history --all -- bar.txt <<-\EOF + * A7 + * A6 + |\ + | * C4 + * | A5 + * | A4 + |\| + * | A3 + |/ + * A2 + EOF +' test_expect_success '--graph --full-history --simplify-merges -- bar.txt' ' - rm -f expected && - echo "* $A7" >> expected && - echo "* $A6" >> expected && - echo "|\\ " >> expected && - echo "| * $C4" >> expected && - echo "* | $A5" >> expected && - echo "* | $A3" >> expected && - echo "|/ " >> expected && - echo "* $A2" >> expected && - git rev-list --graph --full-history --simplify-merges --all \ - -- bar.txt > actual && - test_cmp expected actual - ' + check_graph --full-history --simplify-merges --all -- bar.txt <<-\EOF + * A7 + * A6 + |\ + | * C4 + * | A5 + * | A3 + |/ + * A2 + EOF +' test_expect_success '--graph -- bar.txt' ' - rm -f expected && - echo "* $A7" >> expected && - echo "* $A5" >> expected && - echo "* $A3" >> expected && - echo "| * $C4" >> expected && - echo "|/ " >> expected && - echo "* $A2" >> expected && - git rev-list --graph --all -- bar.txt > actual && - test_cmp expected actual - ' + check_graph --all -- bar.txt <<-\EOF + * A7 + * A5 + * A3 + | * C4 + |/ + * A2 + EOF +' test_expect_success '--graph --sparse -- bar.txt' ' - rm -f expected && - echo "* $A7" >> expected && - echo "* $A6" >> expected && - echo "* $A5" >> expected && - echo "* $A4" >> expected && - echo "* $A3" >> expected && - echo "| * $C4" >> expected && - echo "| * $C3" >> expected && - echo "| * $C2" >> expected && - echo "| * $C1" >> expected && - echo "|/ " >> expected && - echo "* $A2" >> expected && - echo "* $A1" >> expected && - git rev-list --graph --sparse --all -- bar.txt > actual && - test_cmp expected actual - ' + check_graph --sparse --all -- bar.txt <<-\EOF + * A7 + * A6 + * A5 + * A4 + * A3 + | * C4 + | * C3 + | * C2 + | * C1 + |/ + * A2 + * A1 + EOF +' test_expect_success '--graph ^C4' ' - rm -f expected && - echo "* $A7" >> expected && - echo "* $A6" >> expected && - echo "* $A5" >> expected && - echo "* $A4" >> expected && - echo "|\\ " >> expected && - echo "| * $B2" >> expected && - echo "| * $B1" >> expected && - echo "* $A3" >> expected && - git rev-list --graph --all ^C4 > actual && - test_cmp expected actual - ' + check_graph --all ^C4 <<-\EOF + * A7 + * A6 + * A5 + * A4 + |\ + | * B2 + | * B1 + * A3 + EOF +' test_expect_success '--graph ^C3' ' - rm -f expected && - echo "* $A7" >> expected && - echo "* $A6" >> expected && - echo "|\\ " >> expected && - echo "| * $C4" >> expected && - echo "* $A5" >> expected && - echo "* $A4" >> expected && - echo "|\\ " >> expected && - echo "| * $B2" >> expected && - echo "| * $B1" >> expected && - echo "* $A3" >> expected && - git rev-list --graph --all ^C3 > actual && - test_cmp expected actual - ' + check_graph --all ^C3 <<-\EOF + * A7 + * A6 + |\ + | * C4 + * A5 + * A4 + |\ + | * B2 + | * B1 + * A3 + EOF +' # I don't think the ordering of the boundary commits is really # that important, but this test depends on it. If the ordering ever changes # in the code, we'll need to update this test. test_expect_success '--graph --boundary ^C3' ' - rm -f expected && - echo "* $A7" >> expected && - echo "* $A6" >> expected && - echo "|\\ " >> expected && - echo "| * $C4" >> expected && - echo "* | $A5" >> expected && - echo "| | " >> expected && - echo "| \\ " >> expected && - echo "*-. \\ $A4" >> expected && - echo "|\\ \\ \\ " >> expected && - echo "| * | | $B2" >> expected && - echo "| * | | $B1" >> expected && - echo "* | | | $A3" >> expected && - echo "o | | | $A2" >> expected && - echo "|/ / / " >> expected && - echo "o / / $A1" >> expected && - echo " / / " >> expected && - echo "| o $C3" >> expected && - echo "|/ " >> expected && - echo "o $C2" >> expected && - git rev-list --graph --boundary --all ^C3 > actual && - test_cmp expected actual - ' + check_graph --boundary --all ^C3 <<-\EOF + * A7 + * A6 + |\ + | * C4 + * | A5 + | | + | \ + *-. \ A4 + |\ \ \ + | * | | B2 + | * | | B1 + * | | | A3 + o | | | A2 + |/ / / + o / / A1 + / / + | o C3 + |/ + o C2 + EOF +' test_done diff --git a/t/t6017-rev-list-stdin.sh b/t/t6017-rev-list-stdin.sh index 667b37564e..05162512a0 100755 --- a/t/t6017-rev-list-stdin.sh +++ b/t/t6017-rev-list-stdin.sh @@ -5,6 +5,9 @@ test_description='log family learns --stdin' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check () { @@ -40,7 +43,7 @@ test_expect_success setup ' done && for i in $them do - git checkout -b side-$i master~$i && + git checkout -b side-$i main~$i && echo updated $i >file-$i && git add file-$i && test_tick && @@ -49,7 +52,7 @@ test_expect_success setup ' ) ' -check master +check main check side-1 ^side-4 check side-1 ^side-7 -- check side-1 ^side-7 -- file-1 @@ -66,11 +69,11 @@ test_expect_success 'not only --stdin' ' file-2 EOF cat >input <<-EOF && - ^master^ + ^main^ -- file-2 EOF - git log --pretty=tformat:%s --name-only --stdin master -- file-1 \ + git log --pretty=tformat:%s --name-only --stdin main -- file-1 \ <input >actual && test_cmp expect actual ' diff --git a/t/t6018-rev-list-glob.sh b/t/t6018-rev-list-glob.sh index fe2f3cec3d..24b34add83 100755 --- a/t/t6018-rev-list-glob.sh +++ b/t/t6018-rev-list-glob.sh @@ -2,6 +2,9 @@ test_description='rev-list/rev-parse --glob' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh commit () { @@ -20,22 +23,22 @@ compare () { test_expect_success 'setup' ' - commit master && - git checkout -b subspace/one master && + commit main && + git checkout -b subspace/one main && commit one && - git checkout -b subspace/two master && + git checkout -b subspace/two main && commit two && - git checkout -b subspace-x master && + git checkout -b subspace-x main && commit subspace-x && - git checkout -b other/three master && + git checkout -b other/three main && commit three && - git checkout -b someref master && + git checkout -b someref main && commit some && - git checkout master && + git checkout main && commit topic_2 && - git tag foo/bar master && + git tag foo/bar main && commit topic_3 && - git update-ref refs/remotes/foo/baz master && + git update-ref refs/remotes/foo/baz main && commit topic_4 && git update-ref refs/remotes/upstream/one subspace/one && git update-ref refs/remotes/upstream/two subspace/two && @@ -83,7 +86,7 @@ test_expect_failure 'rev-parse accepts --glob as detached option' ' test_expect_failure 'rev-parse is not confused by option-like glob' ' - compare rev-parse "master" "--glob --symbolic master" + compare rev-parse "main" "--glob --symbolic main" ' @@ -111,15 +114,15 @@ test_expect_success 'rev-parse --glob=heads/subspace/* --glob=heads/other/*' ' ' -test_expect_success 'rev-parse --glob=heads/someref/* master' ' +test_expect_success 'rev-parse --glob=heads/someref/* main' ' - compare rev-parse "master" "--glob=heads/someref/* master" + compare rev-parse "main" "--glob=heads/someref/* main" ' test_expect_success 'rev-parse --glob=heads/*' ' - compare rev-parse "master other/three someref subspace-x subspace/one subspace/two" "--glob=heads/*" + compare rev-parse "main other/three someref subspace-x subspace/one subspace/two" "--glob=heads/*" ' @@ -136,7 +139,7 @@ test_expect_success 'rev-parse --remotes=foo' ' ' test_expect_success 'rev-parse --exclude with --branches' ' - compare rev-parse "--exclude=*/* --branches" "master someref subspace-x" + compare rev-parse "--exclude=*/* --branches" "main someref subspace-x" ' test_expect_success 'rev-parse --exclude with --all' ' @@ -221,7 +224,7 @@ test_expect_success 'rev-list --glob refs/heads/subspace/*' ' test_expect_success 'rev-list not confused by option-like --glob arg' ' - compare rev-list "master" "--glob -0 master" + compare rev-list "main" "--glob -0 main" ' @@ -269,13 +272,13 @@ test_expect_success 'rev-list --branches=subspace' ' test_expect_success 'rev-list --branches' ' - compare rev-list "master subspace-x someref other/three subspace/one subspace/two" "--branches" + compare rev-list "main subspace-x someref other/three subspace/one subspace/two" "--branches" ' -test_expect_success 'rev-list --glob=heads/someref/* master' ' +test_expect_success 'rev-list --glob=heads/someref/* main' ' - compare rev-list "master" "--glob=heads/someref/* master" + compare rev-list "main" "--glob=heads/someref/* main" ' @@ -287,7 +290,7 @@ test_expect_success 'rev-list --glob=heads/subspace/* --glob=heads/other/*' ' test_expect_success 'rev-list --glob=heads/*' ' - compare rev-list "master other/three someref subspace-x subspace/one subspace/two" "--glob=heads/*" + compare rev-list "main other/three someref subspace-x subspace/one subspace/two" "--glob=heads/*" ' @@ -310,7 +313,7 @@ test_expect_success 'rev-list --remotes=foo' ' ' test_expect_success 'rev-list --exclude with --branches' ' - compare rev-list "--exclude=*/* --branches" "master someref subspace-x" + compare rev-list "--exclude=*/* --branches" "main someref subspace-x" ' test_expect_success 'rev-list --exclude with --all' ' @@ -354,13 +357,13 @@ test_expect_success 'shortlog accepts --glob/--tags/--remotes' ' compare shortlog "subspace/one subspace/two" --branches=subspace && compare shortlog \ - "master subspace-x someref other/three subspace/one subspace/two" \ + "main subspace-x someref other/three subspace/one subspace/two" \ --branches && - compare shortlog master "--glob=heads/someref/* master" && + compare shortlog main "--glob=heads/someref/* main" && compare shortlog "subspace/one subspace/two other/three" \ "--glob=heads/subspace/* --glob=heads/other/*" && compare shortlog \ - "master other/three someref subspace-x subspace/one subspace/two" \ + "main other/three someref subspace-x subspace/one subspace/two" \ "--glob=heads/*" && compare shortlog foo/bar --tags=foo && compare shortlog "foo/bar qux/one qux/two qux/x" --tags && @@ -371,14 +374,14 @@ test_expect_success 'shortlog accepts --glob/--tags/--remotes' ' test_expect_failure 'shortlog accepts --glob as detached option' ' compare shortlog \ - "master other/three someref subspace-x subspace/one subspace/two" \ + "main other/three someref subspace-x subspace/one subspace/two" \ "--glob heads/*" ' test_expect_failure 'shortlog --glob is not confused by option-like argument' ' - compare shortlog master "--glob -e master" + compare shortlog main "--glob -e main" ' diff --git a/t/t6019-rev-list-ancestry-path.sh b/t/t6019-rev-list-ancestry-path.sh index 353f84313f..20adbece65 100755 --- a/t/t6019-rev-list-ancestry-path.sh +++ b/t/t6019-rev-list-ancestry-path.sh @@ -21,6 +21,9 @@ test_description='--ancestry-path' # --ancestry-path G..M -- G.t == L # --ancestry-path --simplify-merges G^..M -- G.t == G L +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_merge () { @@ -128,15 +131,15 @@ test_expect_success 'setup criss-cross' ' (cd criss-cross && git init && test_commit A && - git checkout -b xb master && + git checkout -b xb main && test_commit B && - git checkout -b xc master && + git checkout -b xc main && test_commit C && git checkout -b xbc xb -- && git merge xc && git checkout -b xcb xc -- && git merge xb && - git checkout master) + git checkout main) ' # no commits in bc descend from cb diff --git a/t/t6020-bundle-misc.sh b/t/t6020-bundle-misc.sh new file mode 100755 index 0000000000..6249420a80 --- /dev/null +++ b/t/t6020-bundle-misc.sh @@ -0,0 +1,463 @@ +#!/bin/sh +# +# Copyright (c) 2021 Jiang Xin +# + +test_description='Test git-bundle' + +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + +. ./test-lib.sh +. "$TEST_DIRECTORY"/test-bundle-functions.sh + +# Create a commit or tag and set the variable with the object ID. +test_commit_setvar () { + notick= + signoff= + indir= + merge= + tag= + var= + + while test $# != 0 + do + case "$1" in + --merge) + merge=t + ;; + --tag) + tag=t + ;; + --notick) + notick=t + ;; + --signoff) + signoff="$1" + ;; + -C) + shift + indir="$1" + ;; + -*) + echo >&2 "error: unknown option $1" + return 1 + ;; + *) + break + ;; + esac + shift + done + if test $# -lt 2 + then + echo >&2 "error: test_commit_setvar must have at least 2 arguments" + return 1 + fi + var=$1 + shift + indir=${indir:+"$indir"/} + if test -z "$notick" + then + test_tick + fi && + if test -n "$merge" + then + git ${indir:+ -C "$indir"} merge --no-edit --no-ff \ + ${2:+-m "$2"} "$1" && + oid=$(git ${indir:+ -C "$indir"} rev-parse HEAD) + elif test -n "$tag" + then + git ${indir:+ -C "$indir"} tag -m "$1" "$1" "${2:-HEAD}" && + oid=$(git ${indir:+ -C "$indir"} rev-parse "$1") + else + file=${2:-"$1.t"} && + echo "${3-$1}" >"$indir$file" && + git ${indir:+ -C "$indir"} add "$file" && + git ${indir:+ -C "$indir"} commit $signoff -m "$1" && + oid=$(git ${indir:+ -C "$indir"} rev-parse HEAD) + fi && + eval $var=$oid +} + +# Format the output of git commands to make a user-friendly and stable +# text. We can easily prepare the expect text without having to worry +# about future changes of the commit ID and spaces of the output. +make_user_friendly_and_stable_output () { + sed \ + -e "s/${A%${A#???????}}[0-9a-f]*/<COMMIT-A>/g" \ + -e "s/${B%${B#???????}}[0-9a-f]*/<COMMIT-B>/g" \ + -e "s/${C%${C#???????}}[0-9a-f]*/<COMMIT-C>/g" \ + -e "s/${D%${D#???????}}[0-9a-f]*/<COMMIT-D>/g" \ + -e "s/${E%${E#???????}}[0-9a-f]*/<COMMIT-E>/g" \ + -e "s/${F%${F#???????}}[0-9a-f]*/<COMMIT-F>/g" \ + -e "s/${G%${G#???????}}[0-9a-f]*/<COMMIT-G>/g" \ + -e "s/${H%${H#???????}}[0-9a-f]*/<COMMIT-H>/g" \ + -e "s/${I%${I#???????}}[0-9a-f]*/<COMMIT-I>/g" \ + -e "s/${J%${J#???????}}[0-9a-f]*/<COMMIT-J>/g" \ + -e "s/${K%${K#???????}}[0-9a-f]*/<COMMIT-K>/g" \ + -e "s/${L%${L#???????}}[0-9a-f]*/<COMMIT-L>/g" \ + -e "s/${M%${M#???????}}[0-9a-f]*/<COMMIT-M>/g" \ + -e "s/${N%${N#???????}}[0-9a-f]*/<COMMIT-N>/g" \ + -e "s/${O%${O#???????}}[0-9a-f]*/<COMMIT-O>/g" \ + -e "s/${P%${P#???????}}[0-9a-f]*/<COMMIT-P>/g" \ + -e "s/${TAG1%${TAG1#???????}}[0-9a-f]*/<TAG-1>/g" \ + -e "s/${TAG2%${TAG2#???????}}[0-9a-f]*/<TAG-2>/g" \ + -e "s/${TAG3%${TAG3#???????}}[0-9a-f]*/<TAG-3>/g" \ + -e "s/ *\$//" +} + +# (C) (D, pull/1/head, topic/1) +# o --- o +# / \ (L) +# / \ o (H, topic/2) (M, tag:v2) +# / (F) \ / (N, tag:v3) +# / o --------- o (G, pull/2/head) o --- o --- o (release) +# / / \ \ / \ +# o --- o --- o -------- o -- o ------------------ o ------- o --- o (main) +# (A) (B) (E, tag:v1) (I) (J) (K) (O) (P) +# +test_expect_success 'setup' ' + # Try to make a stable fixed width for abbreviated commit ID, + # this fixed-width oid will be replaced with "<OID>". + git config core.abbrev 7 && + + # branch main: commit A & B + test_commit_setvar A "Commit A" main.txt && + test_commit_setvar B "Commit B" main.txt && + + # branch topic/1: commit C & D, refs/pull/1/head + git checkout -b topic/1 && + test_commit_setvar C "Commit C" topic-1.txt && + test_commit_setvar D "Commit D" topic-1.txt && + git update-ref refs/pull/1/head HEAD && + + # branch topic/1: commit E, tag v1 + git checkout main && + test_commit_setvar E "Commit E" main.txt && + test_commit_setvar --tag TAG1 v1 && + + # branch topic/2: commit F & G, refs/pull/2/head + git checkout -b topic/2 && + test_commit_setvar F "Commit F" topic-2.txt && + test_commit_setvar G "Commit G" topic-2.txt && + git update-ref refs/pull/2/head HEAD && + test_commit_setvar H "Commit H" topic-2.txt && + + # branch main: merge commit I & J + git checkout main && + test_commit_setvar --merge I topic/1 "Merge commit I" && + test_commit_setvar --merge J refs/pull/2/head "Merge commit J" && + + # branch main: commit K + git checkout main && + test_commit_setvar K "Commit K" main.txt && + + # branch release: + git checkout -b release && + test_commit_setvar L "Commit L" release.txt && + test_commit_setvar M "Commit M" release.txt && + test_commit_setvar --tag TAG2 v2 && + test_commit_setvar N "Commit N" release.txt && + test_commit_setvar --tag TAG3 v3 && + + # branch main: merge commit O, commit P + git checkout main && + test_commit_setvar --merge O tags/v2 "Merge commit O" && + test_commit_setvar P "Commit P" main.txt +' + +test_expect_success 'create bundle from special rev: main^!' ' + git bundle create special-rev.bdl "main^!" && + + git bundle list-heads special-rev.bdl | + make_user_friendly_and_stable_output >actual && + cat >expect <<-\EOF && + <COMMIT-P> refs/heads/main + EOF + test_i18ncmp expect actual && + + git bundle verify special-rev.bdl | + make_user_friendly_and_stable_output >actual && + cat >expect <<-\EOF && + The bundle contains this ref: + <COMMIT-P> refs/heads/main + The bundle requires this ref: + <COMMIT-O> + EOF + test_i18ncmp expect actual && + + test_bundle_object_count special-rev.bdl 3 +' + +test_expect_success 'create bundle with --max-count option' ' + git bundle create max-count.bdl --max-count 1 \ + main \ + "^release" \ + refs/tags/v1 \ + refs/pull/1/head \ + refs/pull/2/head && + + git bundle verify max-count.bdl | + make_user_friendly_and_stable_output >actual && + cat >expect <<-\EOF && + The bundle contains these 2 refs: + <COMMIT-P> refs/heads/main + <TAG-1> refs/tags/v1 + The bundle requires this ref: + <COMMIT-O> + EOF + test_i18ncmp expect actual && + + test_bundle_object_count max-count.bdl 4 +' + +test_expect_success 'create bundle with --since option' ' + git log -1 --pretty="%ad" $M >actual && + cat >expect <<-\EOF && + Thu Apr 7 15:26:13 2005 -0700 + EOF + test_cmp expect actual && + + git bundle create since.bdl \ + --since "Thu Apr 7 15:27:00 2005 -0700" \ + --all && + + git bundle verify since.bdl | + make_user_friendly_and_stable_output >actual && + cat >expect <<-\EOF && + The bundle contains these 5 refs: + <COMMIT-P> refs/heads/main + <COMMIT-N> refs/heads/release + <TAG-2> refs/tags/v2 + <TAG-3> refs/tags/v3 + <COMMIT-P> HEAD + The bundle requires these 2 refs: + <COMMIT-M> + <COMMIT-K> + EOF + test_i18ncmp expect actual && + + test_bundle_object_count --thin since.bdl 13 +' + +test_expect_success 'create bundle 1 - no prerequisites' ' + # create bundle from args + git bundle create 1.bdl topic/1 topic/2 && + + # create bundle from stdin + cat >input <<-\EOF && + topic/1 + topic/2 + EOF + git bundle create stdin-1.bdl --stdin <input && + + cat >expect <<-\EOF && + The bundle contains these 2 refs: + <COMMIT-D> refs/heads/topic/1 + <COMMIT-H> refs/heads/topic/2 + The bundle records a complete history. + EOF + + # verify bundle, which has no prerequisites + git bundle verify 1.bdl | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual && + + git bundle verify stdin-1.bdl | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual && + + test_bundle_object_count 1.bdl 24 && + test_bundle_object_count stdin-1.bdl 24 +' + +test_expect_success 'create bundle 2 - has prerequisites' ' + # create bundle from args + git bundle create 2.bdl \ + --ignore-missing \ + ^topic/deleted \ + ^$D \ + ^topic/2 \ + release && + + # create bundle from stdin + # input has a non-exist reference: "topic/deleted" + cat >input <<-EOF && + ^topic/deleted + ^$D + ^topic/2 + EOF + git bundle create stdin-2.bdl \ + --ignore-missing \ + --stdin \ + release <input && + + cat >expect <<-\EOF && + The bundle contains this ref: + <COMMIT-N> refs/heads/release + The bundle requires these 3 refs: + <COMMIT-D> + <COMMIT-E> + <COMMIT-G> + EOF + + git bundle verify 2.bdl | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual && + + git bundle verify stdin-2.bdl | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual && + + test_bundle_object_count 2.bdl 16 && + test_bundle_object_count stdin-2.bdl 16 +' + +test_expect_success 'fail to verify bundle without prerequisites' ' + git init --bare test1.git && + + cat >expect <<-\EOF && + error: Repository lacks these prerequisite commits: + error: <COMMIT-D> + error: <COMMIT-E> + error: <COMMIT-G> + EOF + + test_must_fail git -C test1.git bundle verify ../2.bdl 2>&1 | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual && + + test_must_fail git -C test1.git bundle verify ../stdin-2.bdl 2>&1 | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual +' + +test_expect_success 'create bundle 3 - two refs, same object' ' + # create bundle from args + git bundle create --version=3 3.bdl \ + ^release \ + ^topic/1 \ + ^topic/2 \ + main \ + HEAD && + + # create bundle from stdin + cat >input <<-\EOF && + ^release + ^topic/1 + ^topic/2 + EOF + git bundle create --version=3 stdin-3.bdl \ + --stdin \ + main HEAD <input && + + cat >expect <<-\EOF && + The bundle contains these 2 refs: + <COMMIT-P> refs/heads/main + <COMMIT-P> HEAD + The bundle requires these 2 refs: + <COMMIT-M> + <COMMIT-K> + EOF + + git bundle verify 3.bdl | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual && + + git bundle verify stdin-3.bdl | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual && + + test_bundle_object_count 3.bdl 4 && + test_bundle_object_count stdin-3.bdl 4 +' + +test_expect_success 'create bundle 4 - with tags' ' + # create bundle from args + git bundle create 4.bdl \ + ^main \ + ^release \ + ^topic/1 \ + ^topic/2 \ + --all && + + # create bundle from stdin + cat >input <<-\EOF && + ^main + ^release + ^topic/1 + ^topic/2 + EOF + git bundle create stdin-4.bdl \ + --ignore-missing \ + --stdin \ + --all <input && + + cat >expect <<-\EOF && + The bundle contains these 3 refs: + <TAG-1> refs/tags/v1 + <TAG-2> refs/tags/v2 + <TAG-3> refs/tags/v3 + The bundle records a complete history. + EOF + + git bundle verify 4.bdl | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual && + + git bundle verify stdin-4.bdl | + make_user_friendly_and_stable_output >actual && + test_i18ncmp expect actual && + + test_bundle_object_count 4.bdl 3 && + test_bundle_object_count stdin-4.bdl 3 +' + +test_expect_success 'clone from bundle' ' + git clone --mirror 1.bdl mirror.git && + git -C mirror.git show-ref | + make_user_friendly_and_stable_output >actual && + cat >expect <<-\EOF && + <COMMIT-D> refs/heads/topic/1 + <COMMIT-H> refs/heads/topic/2 + EOF + test_cmp expect actual && + + git -C mirror.git fetch ../2.bdl "+refs/*:refs/*" && + git -C mirror.git show-ref | + make_user_friendly_and_stable_output >actual && + cat >expect <<-\EOF && + <COMMIT-N> refs/heads/release + <COMMIT-D> refs/heads/topic/1 + <COMMIT-H> refs/heads/topic/2 + EOF + test_cmp expect actual && + + git -C mirror.git fetch ../3.bdl "+refs/*:refs/*" && + git -C mirror.git show-ref | + make_user_friendly_and_stable_output >actual && + cat >expect <<-\EOF && + <COMMIT-P> refs/heads/main + <COMMIT-N> refs/heads/release + <COMMIT-D> refs/heads/topic/1 + <COMMIT-H> refs/heads/topic/2 + EOF + test_cmp expect actual && + + git -C mirror.git fetch ../4.bdl "+refs/*:refs/*" && + git -C mirror.git show-ref | + make_user_friendly_and_stable_output >actual && + cat >expect <<-\EOF && + <COMMIT-P> refs/heads/main + <COMMIT-N> refs/heads/release + <COMMIT-D> refs/heads/topic/1 + <COMMIT-H> refs/heads/topic/2 + <TAG-1> refs/tags/v1 + <TAG-2> refs/tags/v2 + <TAG-3> refs/tags/v3 + EOF + test_cmp expect actual +' + +test_done diff --git a/t/t6030-bisect-porcelain.sh b/t/t6030-bisect-porcelain.sh index aa226381be..7bcde054d7 100755 --- a/t/t6030-bisect-porcelain.sh +++ b/t/t6030-bisect-porcelain.sh @@ -6,6 +6,9 @@ test_description='Tests git bisect functionality' exec </dev/null +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh add_line_into_file() @@ -89,9 +92,9 @@ test_expect_success 'bisect start without -- takes unknown arg as pathspec' ' grep bar ".git/BISECT_NAMES" ' -test_expect_success 'bisect reset: back in the master branch' ' +test_expect_success 'bisect reset: back in the main branch' ' git bisect reset && - echo "* master" > branch.expect && + echo "* main" > branch.expect && git branch > branch.output && cmp branch.expect branch.output ' @@ -102,7 +105,7 @@ test_expect_success 'bisect reset: back in another branch' ' git bisect good $HASH1 && git bisect bad $HASH3 && git bisect reset && - echo " master" > branch.expect && + echo " main" > branch.expect && echo "* other" >> branch.expect && git branch > branch.output && cmp branch.expect branch.output @@ -348,7 +351,7 @@ test_expect_success 'bisect skip many ranges' ' test_expect_success 'bisect starting with a detached HEAD' ' git bisect reset && - git checkout master^ && + git checkout main^ && HEAD=$(git rev-parse --verify HEAD) && git bisect start && test $HEAD = $(cat .git/BISECT_START) && @@ -716,7 +719,7 @@ test_expect_success 'bisect: --no-checkout - target after breakage' ' test_expect_success 'bisect: demonstrate identification of damage boundary' " git bisect reset && git checkout broken && - git bisect start broken master --no-checkout && + git bisect start broken main --no-checkout && test_must_fail git bisect run \"\$SHELL_PATH\" -c ' GOOD=\$(git for-each-ref \"--format=%(objectname)\" refs/bisect/good-*) && git rev-list --objects BISECT_HEAD --not \$GOOD >tmp.\$\$ && @@ -926,14 +929,14 @@ test_expect_success 'git bisect reset cleans bisection state properly' ' git bisect bad $HASH4 && git bisect reset && test -z "$(git for-each-ref "refs/bisect/*")" && - test_path_is_missing "$GIT_DIR/BISECT_EXPECTED_REV" && - test_path_is_missing "$GIT_DIR/BISECT_ANCESTORS_OK" && - test_path_is_missing "$GIT_DIR/BISECT_LOG" && - test_path_is_missing "$GIT_DIR/BISECT_RUN" && - test_path_is_missing "$GIT_DIR/BISECT_TERMS" && - test_path_is_missing "$GIT_DIR/head-name" && - test_path_is_missing "$GIT_DIR/BISECT_HEAD" && - test_path_is_missing "$GIT_DIR/BISECT_START" + test_path_is_missing ".git/BISECT_EXPECTED_REV" && + test_path_is_missing ".git/BISECT_ANCESTORS_OK" && + test_path_is_missing ".git/BISECT_LOG" && + test_path_is_missing ".git/BISECT_RUN" && + test_path_is_missing ".git/BISECT_TERMS" && + test_path_is_missing ".git/head-name" && + test_path_is_missing ".git/BISECT_HEAD" && + test_path_is_missing ".git/BISECT_START" ' test_done diff --git a/t/t6040-tracking-info.sh b/t/t6040-tracking-info.sh index 50a934e1b2..a160b2bf99 100755 --- a/t/t6040-tracking-info.sh +++ b/t/t6040-tracking-info.sh @@ -2,6 +2,9 @@ test_description='remote tracking stats' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh advance () { @@ -34,7 +37,7 @@ test_expect_success setup ' git branch -d brokenbase && git checkout -b b6 origin ) && - git checkout -b follower --track master && + git checkout -b follower --track main && advance h ' @@ -58,12 +61,12 @@ test_expect_success 'branch -v' ' ' cat >expect <<\EOF -b1 [origin/master: ahead 1, behind 1] d -b2 [origin/master: ahead 1, behind 1] d -b3 [origin/master: behind 1] b -b4 [origin/master: ahead 2] f +b1 [origin/main: ahead 1, behind 1] d +b2 [origin/main: ahead 1, behind 1] d +b3 [origin/main: behind 1] b +b4 [origin/main: ahead 2] f b5 [brokenbase: gone] g -b6 [origin/master] c +b6 [origin/main] c EOF test_expect_success 'branch -vv' ' @@ -83,7 +86,7 @@ test_expect_success 'checkout (diverged from upstream)' ' ' test_expect_success 'checkout with local tracked branch' ' - git checkout master && + git checkout main && git checkout follower >actual && test_i18ngrep "is ahead of" actual ' @@ -100,7 +103,7 @@ test_expect_success 'checkout (up-to-date with upstream)' ' ( cd test && git checkout b6 ) >actual && - test_i18ngrep "Your branch is up to date with .origin/master" actual + test_i18ngrep "Your branch is up to date with .origin/main" actual ' test_expect_success 'status (diverged from upstream)' ' @@ -130,11 +133,11 @@ test_expect_success 'status (up-to-date with upstream)' ' # reports nothing to commit test_must_fail git commit --dry-run ) >actual && - test_i18ngrep "Your branch is up to date with .origin/master" actual + test_i18ngrep "Your branch is up to date with .origin/main" actual ' cat >expect <<\EOF -## b1...origin/master [ahead 1, behind 1] +## b1...origin/main [ahead 1, behind 1] EOF test_expect_success 'status -s -b (diverged from upstream)' ' @@ -147,7 +150,7 @@ test_expect_success 'status -s -b (diverged from upstream)' ' ' cat >expect <<\EOF -## b1...origin/master [different] +## b1...origin/main [different] EOF test_expect_success 'status -s -b --no-ahead-behind (diverged from upstream)' ' @@ -160,7 +163,7 @@ test_expect_success 'status -s -b --no-ahead-behind (diverged from upstream)' ' ' cat >expect <<\EOF -## b1...origin/master [different] +## b1...origin/main [different] EOF test_expect_success 'status.aheadbehind=false status -s -b (diverged from upstream)' ' @@ -174,7 +177,7 @@ test_expect_success 'status.aheadbehind=false status -s -b (diverged from upstre cat >expect <<\EOF On branch b1 -Your branch and 'origin/master' have diverged, +Your branch and 'origin/main' have diverged, and have 1 and 1 different commits each, respectively. EOF @@ -198,7 +201,7 @@ test_expect_success 'status --long --branch' ' cat >expect <<\EOF On branch b1 -Your branch and 'origin/master' refer to different commits. +Your branch and 'origin/main' refer to different commits. EOF test_expect_success 'status --long --branch --no-ahead-behind' ' @@ -233,7 +236,7 @@ test_expect_success 'status -s -b (upstream is gone)' ' ' cat >expect <<\EOF -## b6...origin/master +## b6...origin/main EOF test_expect_success 'status -s -b (up-to-date with upstream)' ' @@ -246,7 +249,7 @@ test_expect_success 'status -s -b (up-to-date with upstream)' ' ' test_expect_success 'fail to track lightweight tags' ' - git checkout master && + git checkout main && git tag light && test_must_fail git branch --track lighttrack light >actual && test_i18ngrep ! "set up to track" actual && @@ -254,7 +257,7 @@ test_expect_success 'fail to track lightweight tags' ' ' test_expect_success 'fail to track annotated tags' ' - git checkout master && + git checkout main && git tag -m heavy heavy && test_must_fail git branch --track heavytrack heavy >actual && test_i18ngrep ! "set up to track" actual && @@ -262,17 +265,17 @@ 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-topic_2 master && + git branch from-main main && + git branch --set-upstream-to main from-main && + git branch from-topic_2 main && 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 branch --set-upstream-to main from-topic_2 && + git config branch.from-main.merge > actual && git rev-parse from-topic_2 >actual2 && - grep -q "^refs/heads/master$" actual && + grep -q "^refs/heads/main$" actual && cmp expect2 actual2 ' @@ -280,11 +283,11 @@ test_expect_success '--set-upstream-to @{-1}' ' git checkout follower && 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 branch --set-upstream-to @{-1} from-main && + git config branch.from-main.merge > actual && git config branch.from-topic_2.merge > actual2 && - git branch --set-upstream-to follower from-master && - git config branch.from-master.merge > expect && + git branch --set-upstream-to follower from-main && + git config branch.from-main.merge > expect && test_cmp expect2 actual2 && test_cmp expect actual ' diff --git a/t/t6050-replace.sh b/t/t6050-replace.sh index c80dc10b8f..e33d512ec1 100755 --- a/t/t6050-replace.sh +++ b/t/t6050-replace.sh @@ -4,6 +4,9 @@ # test_description='Tests replace refs functionality' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY/lib-gpg.sh" @@ -129,13 +132,13 @@ tagger T A Gger <> 0 +0000 EOF test_expect_success 'tag replaced commit' ' - git mktag <tag.sig >.git/refs/tags/mytag 2>message + git mktag <tag.sig >.git/refs/tags/mytag ' test_expect_success '"git fsck" works' ' - git fsck master >fsck_master.out && - test_i18ngrep "dangling commit $R" fsck_master.out && - test_i18ngrep "dangling tag $(git show-ref -s refs/tags/mytag)" fsck_master.out && + git fsck main >fsck_main.out && + test_i18ngrep "dangling commit $R" fsck_main.out && + test_i18ngrep "dangling tag $(git show-ref -s refs/tags/mytag)" fsck_main.out && test -z "$(git fsck)" ' @@ -218,7 +221,7 @@ test_expect_success 'create parallel branch without the bug' ' git cherry-pick $HASH6 && PARA6=$(git rev-parse --verify HEAD) && git replace $HASH6 $PARA6 && - git checkout master && + git checkout main && cur=$(git rev-parse --verify HEAD) && test "$cur" = "$HASH7" && git log --pretty=oneline | grep $PARA2 && @@ -461,7 +464,7 @@ test_expect_success GPG 'set up a merge commit with a mergetag' ' git commit -m "hello: 2 more lines from a test branch" && HASH9=$(git rev-parse --verify HEAD) && git tag -s -m "tag for testing with a mergetag" test_tag HEAD && - git checkout master && + git checkout main && git merge -s ours test_tag && HASH10=$(git rev-parse --verify HEAD) && git cat-file commit $HASH10 | grep "^mergetag object" diff --git a/t/t6101-rev-parse-parents.sh b/t/t6101-rev-parse-parents.sh index 7531262a5e..78b5851780 100755 --- a/t/t6101-rev-parse-parents.sh +++ b/t/t6101-rev-parse-parents.sh @@ -5,6 +5,9 @@ test_description='Test git rev-parse with different parent options' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_cmp_rev_output () { @@ -18,7 +21,7 @@ test_expect_success 'setup' ' test_commit second && git checkout --orphan tmp && test_commit start2 && - git checkout master && + git checkout main && git merge -m next --allow-unrelated-histories start2 && test_commit final && diff --git a/t/t6110-rev-list-sparse.sh b/t/t6110-rev-list-sparse.sh index 656ac7fe9d..13c1da5352 100755 --- a/t/t6110-rev-list-sparse.sh +++ b/t/t6110-rev-list-sparse.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='operations that cull histories in unusual ways' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -10,7 +13,7 @@ test_expect_success setup ' git checkout -b side HEAD^ && test_commit D && test_commit E && - git merge master + git merge main ' test_expect_success 'rev-list --first-parent --boundary' ' diff --git a/t/t6111-rev-list-treesame.sh b/t/t6111-rev-list-treesame.sh index 4244638285..e07b6070e0 100755 --- a/t/t6111-rev-list-treesame.sh +++ b/t/t6111-rev-list-treesame.sh @@ -13,6 +13,9 @@ test_description='TREESAME and limiting' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh note () { @@ -33,13 +36,13 @@ test_expect_success setup ' git checkout other-branch && test_commit "Added other" other "Hello" C && - git checkout master && + git checkout main && test_merge D other-branch && git checkout third-branch && test_commit "Third file" third "Nothing" E && - git checkout master && + git checkout main && test_commit "file=Blah" file "Blah" F && test_tick && git merge --no-commit third-branch && @@ -56,7 +59,7 @@ test_expect_success setup ' test_tick && git revert I && note J && - git checkout master && + git checkout main && test_tick && git merge --no-ff fiddler-branch && note K && diff --git a/t/t6112-rev-list-filters-objects.sh b/t/t6112-rev-list-filters-objects.sh index de0e5a5d36..31457d13b9 100755 --- a/t/t6112-rev-list-filters-objects.sh +++ b/t/t6112-rev-list-filters-objects.sh @@ -2,6 +2,9 @@ test_description='git rev-list using object filtering' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Test the blob:none filter. @@ -223,7 +226,7 @@ test_expect_success 'verify sparse:oid=oid-ish omits top-level files' ' sort >expected && git -C r3 rev-list --quiet --objects --filter-print-omitted \ - --filter=sparse:oid=master:pattern HEAD >revs && + --filter=sparse:oid=main:pattern HEAD >revs && awk -f print_1.awk revs | sed "s/~//" | sort >observed && @@ -436,7 +439,7 @@ test_expect_success 'add sparse pattern blobs whose paths have reserved chars' ' test_expect_success 'combine:... with more than two sub-filters' ' git -C r3 rev-list --objects \ - --filter=combine:tree:3+blob:limit=40+sparse:oid=master:pattern \ + --filter=combine:tree:3+blob:limit=40+sparse:oid=main:pattern \ HEAD >actual && expect_has HEAD "" && @@ -454,7 +457,7 @@ test_expect_success 'combine:... with more than two sub-filters' ' cp actual expect && git -C r3 rev-list --objects \ - --filter=combine:tree:3+blob:limit=40+sparse:oid=master:pattern1%2brenamed%25 \ + --filter=combine:tree:3+blob:limit=40+sparse:oid=main:pattern1%2brenamed%25 \ HEAD >actual && test_cmp expect actual && @@ -464,23 +467,23 @@ test_expect_success 'combine:... with more than two sub-filters' ' test_when_finished "rm -f trace1" && GIT_TRACE=$(pwd)/trace1 git -C r3 rev-list --objects \ --filter=tree:3 --filter=blob:limit=40 \ - --filter=sparse:oid="master:p;at%ter+n" \ + --filter=sparse:oid="main:p;at%ter+n" \ HEAD >actual && test_cmp expect actual && - grep "Add to combine filter-spec: sparse:oid=master:p%3bat%25ter%2bn" \ + grep "Add to combine filter-spec: sparse:oid=main:p%3bat%25ter%2bn" \ trace1 && # Repeat the above test, but this time, the characters to encode are in # the LHS of the combined filter. test_when_finished "rm -f trace2" && GIT_TRACE=$(pwd)/trace2 git -C r3 rev-list --objects \ - --filter=sparse:oid=master:^~pattern \ + --filter=sparse:oid=main:^~pattern \ --filter=tree:3 --filter=blob:limit=40 \ HEAD >actual && test_cmp expect actual && - grep "Add to combine filter-spec: sparse:oid=master:%5e%7epattern" \ + grep "Add to combine filter-spec: sparse:oid=main:%5e%7epattern" \ trace2 ' diff --git a/t/t6120-describe.sh b/t/t6120-describe.sh index f822d5d328..546796f847 100755 --- a/t/t6120-describe.sh +++ b/t/t6120-describe.sh @@ -11,6 +11,9 @@ test_description='test describe' # # First parent of a merge commit is on the same line, second parent below. +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_describe () { @@ -102,7 +105,7 @@ check_describe c-* --tags HEAD^^2 check_describe B --tags HEAD^^2^ check_describe e --tags HEAD^^^ -check_describe heads/master --all HEAD +check_describe heads/main --all HEAD check_describe tags/c-* --all HEAD^ check_describe tags/e --all HEAD^^^ @@ -403,15 +406,15 @@ test_expect_success ULIMIT_STACK_SIZE 'name-rev works in a deep repo' ' i=1 && while test $i -lt 8000 do - echo "commit refs/heads/master + echo "commit refs/heads/main committer A U Thor <author@example.com> $((1000000000 + $i * 100)) +0200 data <<EOF commit #$i EOF" - test $i = 1 && echo "from refs/heads/master^0" + test $i = 1 && echo "from refs/heads/main^0" i=$(($i + 1)) done | git fast-import && - git checkout master && + git checkout main && git tag far-far-away HEAD^ && echo "HEAD~4000 tags/far-far-away~3999" >expect && git name-rev HEAD~4000 >actual && @@ -442,7 +445,7 @@ test_expect_success 'describe complains about missing object' ' ' test_expect_success 'name-rev a rev shortly after epoch' ' - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && git checkout --orphan no-timestamp-underflow && # Any date closer to epoch than the CUTOFF_DATE_SLOP constant @@ -456,7 +459,7 @@ test_expect_success 'name-rev a rev shortly after epoch' ' test_cmp expect actual ' -# A--------------master +# A--------------main # \ / # \----------M2 # \ / @@ -487,10 +490,10 @@ test_expect_success 'name-rev covers all conditions while looking at parents' ' git checkout $A && git merge --no-ff HEAD@{1} && # M2 - git checkout master && + git checkout main && git merge --no-ff HEAD@{1} && - echo "$B master^2^2~1^2" >expect && + echo "$B main^2^2~1^2" >expect && git name-rev $B >actual && test_cmp expect actual @@ -516,7 +519,7 @@ test_expect_success 'describe commits with disjoint bases' ' git checkout --orphan branch && rm file && echo B > file2 && git add file2 && git commit -m B && git tag B -a -m B && - git merge --no-ff --allow-unrelated-histories master -m x && + git merge --no-ff --allow-unrelated-histories main -m x && check_describe "A-3-*" HEAD ) @@ -542,7 +545,7 @@ test_expect_success 'describe commits with disjoint bases 2' ' echo o >> file2 && git add file2 && GIT_COMMITTER_DATE="2020-01-01 15:01" git commit -m o && echo B >> file2 && git add file2 && GIT_COMMITTER_DATE="2020-01-01 15:02" git commit -m B && git tag B -a -m B && - git merge --no-ff --allow-unrelated-histories master -m x && + git merge --no-ff --allow-unrelated-histories main -m x && check_describe "B-3-*" HEAD ) diff --git a/t/t6200-fmt-merge-msg.sh b/t/t6200-fmt-merge-msg.sh index f3e66eaf9b..44f55d93fe 100755 --- a/t/t6200-fmt-merge-msg.sh +++ b/t/t6200-fmt-merge-msg.sh @@ -5,6 +5,9 @@ test_description='fmt-merge-msg test' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY/lib-gpg.sh" @@ -81,7 +84,7 @@ test_expect_success GPG 'set up a signed tag' ' test_expect_success 'message for merging local branch' ' echo "Merge branch ${apos}left${apos}" >expected && - git checkout master && + git checkout main && git fetch . left && git fmt-merge-msg <.git/FETCH_HEAD >actual && @@ -89,7 +92,7 @@ test_expect_success 'message for merging local branch' ' ' test_expect_success GPG 'message for merging local tag signed by good key' ' - git checkout master && + git checkout main && git fetch . signed-good-tag && git fmt-merge-msg <.git/FETCH_HEAD >actual 2>&1 && grep "^Merge tag ${apos}signed-good-tag${apos}" actual && @@ -98,7 +101,7 @@ test_expect_success GPG 'message for merging local tag signed by good key' ' ' test_expect_success GPG 'message for merging local tag signed by unknown key' ' - git checkout master && + git checkout main && git fetch . signed-good-tag && GNUPGHOME=. git fmt-merge-msg <.git/FETCH_HEAD >actual 2>&1 && grep "^Merge tag ${apos}signed-good-tag${apos}" actual && @@ -109,7 +112,7 @@ test_expect_success GPG 'message for merging local tag signed by unknown key' ' test_expect_success 'message for merging external branch' ' echo "Merge branch ${apos}left${apos} of $(pwd)" >expected && - git checkout master && + git checkout main && git fetch "$(pwd)" left && git fmt-merge-msg <.git/FETCH_HEAD >actual && @@ -133,7 +136,7 @@ test_expect_success '[merge] summary/log configuration' ' test_config merge.log true && test_unconfig merge.summary && - git checkout master && + git checkout main && test_tick && git fetch . left && @@ -142,7 +145,7 @@ test_expect_success '[merge] summary/log configuration' ' test_unconfig merge.log && test_config merge.summary true && - git checkout master && + git checkout main && test_tick && git fetch . left && @@ -153,7 +156,7 @@ test_expect_success '[merge] summary/log configuration' ' ' test_expect_success 'setup FETCH_HEAD' ' - git checkout master && + git checkout main && test_tick && git fetch . left ' @@ -281,7 +284,7 @@ test_expect_success 'fmt-merge-msg -m' ' test_unconfig merge.log && test_unconfig merge.summary && - git checkout master && + git checkout main && git fetch "$(pwd)" left && git fmt-merge-msg -m "Sync with left" <.git/FETCH_HEAD >actual && git fmt-merge-msg --log -m "Sync with left" \ @@ -323,28 +326,28 @@ test_expect_success 'setup: expected shortlog for two branches' ' test_expect_success 'shortlog for two branches' ' test_config merge.log true && test_unconfig merge.summary && - git checkout master && + git checkout main && test_tick && git fetch . left right && git fmt-merge-msg <.git/FETCH_HEAD >actual1 && test_unconfig merge.log && test_config merge.summary true && - git checkout master && + git checkout main && test_tick && git fetch . left right && git fmt-merge-msg <.git/FETCH_HEAD >actual2 && test_config merge.log yes && test_unconfig merge.summary && - git checkout master && + git checkout main && test_tick && git fetch . left right && git fmt-merge-msg <.git/FETCH_HEAD >actual3 && test_unconfig merge.log && test_config merge.summary yes && - git checkout master && + git checkout main && test_tick && git fetch . left right && git fmt-merge-msg <.git/FETCH_HEAD >actual4 && @@ -358,7 +361,7 @@ test_expect_success 'shortlog for two branches' ' test_expect_success 'merge-msg -F' ' test_unconfig merge.log && test_config merge.summary yes && - git checkout master && + git checkout main && test_tick && git fetch . left right && git fmt-merge-msg -F .git/FETCH_HEAD >actual && @@ -368,7 +371,7 @@ test_expect_success 'merge-msg -F' ' test_expect_success 'merge-msg -F in subdirectory' ' test_unconfig merge.log && test_config merge.summary yes && - git checkout master && + git checkout main && test_tick && git fetch . left right && mkdir sub && @@ -408,7 +411,7 @@ test_expect_success 'merge-msg tag' ' test_unconfig merge.log && test_config merge.summary yes && - git checkout master && + git checkout main && test_tick && git fetch . tag tag-r3 && @@ -438,7 +441,7 @@ test_expect_success 'merge-msg two tags' ' test_unconfig merge.log && test_config merge.summary yes && - git checkout master && + git checkout main && test_tick && git fetch . tag tag-r3 tag tag-l5 && @@ -468,7 +471,7 @@ test_expect_success 'merge-msg tag and branch' ' test_unconfig merge.log && test_config merge.summary yes && - git checkout master && + git checkout main && test_tick && git fetch . tag tag-r3 left && @@ -495,7 +498,7 @@ test_expect_success 'merge-msg lots of commits' ' test_config merge.summary yes && - git checkout master && + git checkout main && test_tick && git fetch . long && @@ -506,11 +509,11 @@ test_expect_success 'merge-msg lots of commits' ' test_expect_success 'merge-msg with "merging" an annotated tag' ' test_config merge.log true && - git checkout master^0 && + git checkout main^0 && git commit --allow-empty -m "One step ahead" && git tag -a -m "An annotated one" annote HEAD && - git checkout master && + git checkout main && git fetch . annote && git fmt-merge-msg <.git/FETCH_HEAD >actual && @@ -543,23 +546,23 @@ test_expect_success 'merge-msg with "merging" an annotated tag' ' ' test_expect_success 'merge.suppressDest configuration' ' - git checkout -B side master && + git checkout -B side main && git commit --allow-empty -m "One step ahead" && - git checkout master && + git checkout main && git fetch . side && git -c merge.suppressDest="" fmt-merge-msg <.git/FETCH_HEAD >full.1 && head -n1 full.1 >actual && - grep -e "Merge branch .side. into master" actual && + grep -e "Merge branch .side. into main" actual && git -c merge.suppressDest="mast" fmt-merge-msg <.git/FETCH_HEAD >full.2 && head -n1 full.2 >actual && - grep -e "Merge branch .side. into master$" actual && + grep -e "Merge branch .side. into main$" actual && git -c merge.suppressDest="ma?*[rn]" fmt-merge-msg <.git/FETCH_HEAD >full.3 && head -n1 full.3 >actual && grep -e "Merge branch .side." actual && - ! grep -e " into master$" actual + ! grep -e " into main$" actual ' test_done diff --git a/t/t6300-for-each-ref.sh b/t/t6300-for-each-ref.sh index 810cdbb6f8..ca62e764b5 100755 --- a/t/t6300-for-each-ref.sh +++ b/t/t6300-for-each-ref.sh @@ -5,6 +5,9 @@ test_description='for-each-ref test' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=master +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-gpg.sh . "$TEST_DIRECTORY"/lib-terminal.sh diff --git a/t/t6302-for-each-ref-filter.sh b/t/t6302-for-each-ref-filter.sh index 9b8c8b2842..9866b1b573 100755 --- a/t/t6302-for-each-ref-filter.sh +++ b/t/t6302-for-each-ref-filter.sh @@ -2,6 +2,9 @@ test_description='test for-each-refs usage of ref-filter APIs' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-gpg.sh diff --git a/t/t6400-merge-df.sh b/t/t6400-merge-df.sh index 9da0838216..38700d29b5 100755 --- a/t/t6400-merge-df.sh +++ b/t/t6400-merge-df.sh @@ -4,6 +4,9 @@ # test_description='Test merge with directory/file conflicts' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'prepare repository' ' @@ -24,12 +27,12 @@ test_expect_success 'prepare repository' ' ' test_expect_success 'Merge with d/f conflicts' ' - test_expect_code 1 git merge -m "merge msg" master + test_expect_code 1 git merge -m "merge msg" main ' test_expect_success 'F/D conflict' ' git reset --hard && - git checkout master && + git checkout main && rm .git/index && mkdir before && @@ -47,7 +50,7 @@ test_expect_success 'F/D conflict' ' git add . && git commit -m para && - git merge master + git merge main ' test_expect_success 'setup modify/delete + directory/file conflict' ' diff --git a/t/t6402-merge-rename.sh b/t/t6402-merge-rename.sh index 3f64f62224..425dad97d5 100755 --- a/t/t6402-merge-rename.sh +++ b/t/t6402-merge-rename.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='Merge-recursive merging renames' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh modify () { @@ -54,9 +57,9 @@ test_expect_success 'setup' ' git branch change && git branch change+rename && - sed -e "/^g /s/.*/g : master changes a line/" <A >A+ && + sed -e "/^g /s/.*/g : main changes a line/" <A >A+ && mv A+ A && - git commit -a -m "master updates A" && + git commit -a -m "main updates A" && git checkout yellow && rm -f M && @@ -94,7 +97,7 @@ test_expect_success 'setup' ' git update-index --add B && git commit -q -a -m "changed and renamed" && - git checkout master + git checkout main ' test_expect_success 'pull renaming branch into unrenaming one' \ @@ -109,7 +112,7 @@ test_expect_success 'pull renaming branch into unrenaming one' \ sed -ne "/^g/{ p q - }" B | grep master && + }" B | grep main && git diff --exit-code white N ' @@ -134,7 +137,7 @@ test_expect_success 'pull unrenaming branch into renaming one' \ ' git reset --hard && git show-branch && - test_expect_code 1 git pull . master && + test_expect_code 1 git pull . main && git ls-files -u B >b.stages && test_line_count = 3 b.stages && git ls-files -s N >n.stages && @@ -187,7 +190,7 @@ test_expect_success 'interference with untracked working tree file' ' test_expect_success 'interference with untracked working tree file' ' git reset --hard && rm -f A M && - git checkout -f master && + git checkout -f main && git tag -f anchor && git show-branch && git pull . yellow && @@ -198,7 +201,7 @@ test_expect_success 'interference with untracked working tree file' ' test_expect_success 'updated working tree file should prevent the merge' ' git reset --hard && rm -f A M && - git checkout -f master && + git checkout -f main && git tag -f anchor && git show-branch && echo >>M one line addition && @@ -211,7 +214,7 @@ test_expect_success 'updated working tree file should prevent the merge' ' test_expect_success 'updated working tree file should prevent the merge' ' git reset --hard && rm -f A M && - git checkout -f master && + git checkout -f main && git tag -f anchor && git show-branch && echo >>M one line addition && @@ -229,7 +232,7 @@ test_expect_success 'interference with untracked working tree file' ' git tag -f anchor && git show-branch && echo >M this file should not matter && - git pull . master && + git pull . main && test_path_is_file M && ! { git ls-files -s | @@ -764,7 +767,7 @@ test_expect_success 'setup avoid unnecessary update, dir->(file,nothing)' ' git rm -rf df && git commit -mB && - git checkout master && + git checkout main && git rm -rf df && echo bla >df && git add -A && @@ -772,7 +775,7 @@ test_expect_success 'setup avoid unnecessary update, dir->(file,nothing)' ' ' test_expect_success 'avoid unnecessary update, dir->(file,nothing)' ' - git checkout -q master^0 && + git checkout -q main^0 && test-tool chmtime --get -3600 df >expect && git merge side && test-tool chmtime --get df >actual && @@ -794,14 +797,14 @@ test_expect_success 'setup avoid unnecessary update, modify/delete' ' git rm -f file && git commit -m "Delete file" && - git checkout master && + git checkout main && echo bla >file && git add -A && git commit -m "Modify file" ' test_expect_success 'avoid unnecessary update, modify/delete' ' - git checkout -q master^0 && + git checkout -q main^0 && test-tool chmtime --get -3600 file >expect && test_must_fail git merge side && test-tool chmtime --get file >actual && @@ -823,13 +826,13 @@ test_expect_success 'setup avoid unnecessary update, rename/add-dest' ' git add -A && git commit -m "Add file copy" && - git checkout master && + git checkout main && git mv file newfile && git commit -m "Rename file" ' test_expect_success 'avoid unnecessary update, rename/add-dest' ' - git checkout -q master^0 && + git checkout -q main^0 && test-tool chmtime --get -3600 newfile >expect && git merge side && test-tool chmtime --get newfile >actual && @@ -879,15 +882,15 @@ test_expect_success 'setup for use of extended merge markers' ' git mv original_file renamed_file && git commit -mB && - git checkout master && + git checkout main && echo 8.5 >>original_file && git add original_file && git commit -mC ' -test_expect_success 'merge master into rename has correct extended markers' ' +test_expect_success 'merge main into rename has correct extended markers' ' git checkout rename^0 && - test_must_fail git merge -s recursive master^0 && + test_must_fail git merge -s recursive main^0 && cat >expected <<-\EOF && 1 @@ -902,14 +905,14 @@ test_expect_success 'merge master into rename has correct extended markers' ' 9 ======= 8.5 - >>>>>>> master^0:original_file + >>>>>>> main^0:original_file EOF test_cmp expected renamed_file ' -test_expect_success 'merge rename into master has correct extended markers' ' +test_expect_success 'merge rename into main has correct extended markers' ' git reset --hard && - git checkout master^0 && + git checkout main^0 && test_must_fail git merge -s recursive rename^0 && cat >expected <<-\EOF && @@ -945,13 +948,13 @@ test_expect_success 'setup spurious "refusing to lose untracked" message' ' git mv original_file renamed_file && git commit -mB && - git checkout master && + git checkout main && git rm original_file && git commit -mC ' test_expect_success 'no spurious "refusing to lose untracked" message' ' - git checkout master^0 && + git checkout main^0 && test_must_fail git merge rename^0 2>errors.txt && ! grep "refusing to lose untracked file" errors.txt ' diff --git a/t/t6404-recursive-merge.sh b/t/t6404-recursive-merge.sh index b1c3d4dda4..c7ab7048f5 100755 --- a/t/t6404-recursive-merge.sh +++ b/t/t6404-recursive-merge.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='Test merge without common ancestors' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # This scenario is based on a real-world repository of Shawn Pearce. @@ -19,11 +22,11 @@ test_expect_success 'setup tests' ' git add a1 && GIT_AUTHOR_DATE="2006-12-12 23:00:00" git commit -m 1 a1 && - git checkout -b A master && + git checkout -b A main && echo A >a1 && GIT_AUTHOR_DATE="2006-12-12 23:00:01" git commit -m A a1 && - git checkout -b B master && + git checkout -b B main && echo B >a1 && GIT_AUTHOR_DATE="2006-12-12 23:00:02" git commit -m B a1 && diff --git a/t/t6405-merge-symlinks.sh b/t/t6405-merge-symlinks.sh index 6c0a90d044..7435fce71e 100755 --- a/t/t6405-merge-symlinks.sh +++ b/t/t6405-merge-symlinks.sh @@ -8,6 +8,9 @@ test_description='merging symlinks on filesystem w/o symlink support. This tests that git merge-recursive writes merge results as plain files if core.symlinks is false.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -19,7 +22,7 @@ test_expect_success 'setup' ' git branch b-file && l=$(printf file | git hash-object -t blob -w --stdin) && echo "120000 $l symlink" | git update-index --index-info && - git commit -m master && + git commit -m main && git checkout b-symlink && l=$(printf file-different | git hash-object -t blob -w --stdin) && echo "120000 $l symlink" | git update-index --index-info && @@ -30,28 +33,28 @@ test_expect_success 'setup' ' git commit -m b-file ' -test_expect_success 'merge master into b-symlink, which has a different symbolic link' ' +test_expect_success 'merge main into b-symlink, which has a different symbolic link' ' git checkout b-symlink && - test_must_fail git merge master + test_must_fail git merge main ' test_expect_success 'the merge result must be a file' ' test_path_is_file symlink ' -test_expect_success 'merge master into b-file, which has a file instead of a symbolic link' ' +test_expect_success 'merge main into b-file, which has a file instead of a symbolic link' ' git reset --hard && git checkout b-file && - test_must_fail git merge master + test_must_fail git merge main ' test_expect_success 'the merge result must be a file' ' test_path_is_file symlink ' -test_expect_success 'merge b-file, which has a file instead of a symbolic link, into master' ' +test_expect_success 'merge b-file, which has a file instead of a symbolic link, into main' ' git reset --hard && - git checkout master && + git checkout main && test_must_fail git merge b-file ' diff --git a/t/t6406-merge-attr.sh b/t/t6406-merge-attr.sh index 76a55f838c..d5a4ac2d81 100755 --- a/t/t6406-merge-attr.sh +++ b/t/t6406-merge-attr.sh @@ -5,6 +5,9 @@ test_description='per path merge controlled by merge attribute' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -19,10 +22,10 @@ test_expect_success setup ' git branch side && for f in text binary union do - echo Master >>$f && git add $f || return 1 + echo Main >>$f && git add $f || return 1 done && test_tick && - git commit -m Master && + git commit -m Main && git checkout side && for f in text binary union @@ -64,7 +67,7 @@ test_expect_success merge ' echo "union merge=union" } >.gitattributes && - if git merge master + if git merge main then echo Gaah, should have conflicted false @@ -87,7 +90,7 @@ test_expect_success 'check merge result in working tree' ' grep "<<<<<<<" text && cmp binary-orig binary && ! grep "<<<<<<<" union && - grep Master union && + grep Main union && grep Side union ' @@ -115,13 +118,13 @@ test_expect_success 'custom merge backend' ' git config --replace-all \ merge.custom.name "custom merge driver for testing" && - git merge master && + git merge main && cmp binary union && sed -e 1,3d text >check-1 && - o=$(git unpack-file master^:text) && + o=$(git unpack-file main^:text) && a=$(git unpack-file side^:text) && - b=$(git unpack-file master:text) && + b=$(git unpack-file main:text) && sh -c "./custom-merge $o $a $b 0 text" && sed -e 1,3d $a >check-2 && cmp check-1 check-2 && @@ -136,7 +139,7 @@ test_expect_success 'custom merge backend' ' git config --replace-all \ merge.custom.name "custom merge driver for testing" && - if git merge master + if git merge main then echo "Eh? should have conflicted" false @@ -146,9 +149,9 @@ test_expect_success 'custom merge backend' ' cmp binary union && sed -e 1,3d text >check-1 && - o=$(git unpack-file master^:text) && + o=$(git unpack-file main^:text) && a=$(git unpack-file anchor:text) && - b=$(git unpack-file master:text) && + b=$(git unpack-file main:text) && sh -c "./custom-merge $o $a $b 0 text" && sed -e 1,3d $a >check-2 && cmp check-1 check-2 && @@ -176,7 +179,7 @@ test_expect_success 'up-to-date merge without common ancestor' ' test_tick && ( cd repo1 && - git fetch ../repo2 master && + git fetch ../repo2 main && git merge --allow-unrelated-histories FETCH_HEAD ) ' @@ -201,7 +204,7 @@ test_expect_success 'custom merge does not lock index' ' # By packaging the command in test_when_finished, we get both # the correctness check and the clean-up. test_when_finished "kill \$(cat sleep.pid)" && - git merge master + git merge main ' test_done diff --git a/t/t6407-merge-binary.sh b/t/t6407-merge-binary.sh index 4e6c7cb77e..d4273f2575 100755 --- a/t/t6407-merge-binary.sh +++ b/t/t6407-merge-binary.sh @@ -2,6 +2,9 @@ test_description='ask merge-recursive to merge binary files' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -20,7 +23,7 @@ test_expect_success setup ' git ls-files -s a >E0 && git ls-files -s m | sed -e "s/ 0 / 3 /" >E3 && test_tick && - git commit -m "master adds some" && + git commit -m "main adds some" && git checkout side && echo rezrov >>m && @@ -39,7 +42,7 @@ test_expect_success resolve ' rm -f a* m* && git reset --hard anchor && - if git merge -s resolve master + if git merge -s resolve main then echo Oops, should not have succeeded false @@ -54,7 +57,7 @@ test_expect_success recursive ' rm -f a* m* && git reset --hard anchor && - if git merge -s recursive master + if git merge -s recursive main then echo Oops, should not have succeeded false diff --git a/t/t6409-merge-subtree.sh b/t/t6409-merge-subtree.sh index b8e8b6f642..d406b2343c 100755 --- a/t/t6409-merge-subtree.sh +++ b/t/t6409-merge-subtree.sh @@ -2,6 +2,9 @@ test_description='subtree merge strategy' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -14,10 +17,10 @@ test_expect_success setup ' echo >>hello world && git add hello && git commit -m second && - git checkout master && + git checkout main && for i in mundo $s; do echo $i; done >hello && git add hello && - git commit -m master + git commit -m main ' @@ -36,7 +39,7 @@ test_expect_success 'setup branch sub' ' ' test_expect_success 'setup topic branch' ' - git checkout -b topic master && + git checkout -b topic main && git merge -s ours --no-commit --allow-unrelated-histories sub && git read-tree --prefix=dir/ -u sub && git commit -m "initial merge of sub into topic" && @@ -77,8 +80,8 @@ test_expect_success 'setup' ' test_expect_success 'initial merge' ' git remote add -f gui ../git-gui && - git merge -s ours --no-commit --allow-unrelated-histories gui/master && - git read-tree --prefix=git-gui/ -u gui/master && + git merge -s ours --no-commit --allow-unrelated-histories gui/main && + git read-tree --prefix=git-gui/ -u gui/main && git commit -m "Merge git-gui as our subdirectory" && git checkout -b work && git ls-files -s >actual && @@ -108,10 +111,10 @@ test_expect_success 'merge update' ' test_expect_success 'initial ambiguous subtree' ' cd ../git && - git reset --hard master && + git reset --hard main && git checkout -b topic_2 && - git merge -s ours --no-commit gui/master && - git read-tree --prefix=git-gui2/ -u gui/master && + git merge -s ours --no-commit gui/main && + git read-tree --prefix=git-gui2/ -u gui/main && git commit -m "Merge git-gui2 as our subdirectory" && git checkout -b work2 && git ls-files -s >actual && diff --git a/t/t6411-merge-filemode.sh b/t/t6411-merge-filemode.sh index 87741efad3..f54c915d6a 100755 --- a/t/t6411-merge-filemode.sh +++ b/t/t6411-merge-filemode.sh @@ -1,17 +1,20 @@ #!/bin/sh test_description='merge: handle file mode' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'set up mode change in one branch' ' : >file1 && git add file1 && git commit -m initial && - git checkout -b a1 master && + git checkout -b a1 main && : >dummy && git add dummy && git commit -m a && - git checkout -b b1 master && + git checkout -b b1 main && test_chmod +x file1 && git add file1 && git commit -m b1 @@ -39,12 +42,12 @@ do_one_mode resolve b1 a1 test_expect_success 'set up mode change in both branches' ' git reset --hard HEAD && - git checkout -b a2 master && + git checkout -b a2 main && : >file2 && H=$(git hash-object file2) && test_chmod +x file2 && git commit -m a2 && - git checkout -b b2 master && + git checkout -b b2 main && : >file2 && git add file2 && git commit -m b2 && @@ -76,7 +79,7 @@ do_both_modes resolve test_expect_success 'set up delete/modechange scenario' ' git reset --hard && - git checkout -b deletion master && + git checkout -b deletion main && git rm file1 && git commit -m deletion ' diff --git a/t/t6412-merge-large-rename.sh b/t/t6412-merge-large-rename.sh index 80777386dc..c50d315722 100755 --- a/t/t6412-merge-large-rename.sh +++ b/t/t6412-merge-large-rename.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='merging with large rename matrix' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh count() { @@ -30,7 +33,7 @@ test_rename() { test_expect_success "rename ($1, $2)" ' n='$1' && expect='$2' && - git checkout -f master && + git checkout -f main && test_might_fail git branch -D test$n && git reset --hard initial && for i in $(count $n); do @@ -50,8 +53,8 @@ test_rename() { git add . && git commit -m change+rename=$n && case "$expect" in - ok) git merge master ;; - *) test_must_fail git merge master ;; + ok) git merge main ;; + *) test_must_fail git merge main ;; esac ' } diff --git a/t/t6413-merge-crlf.sh b/t/t6413-merge-crlf.sh index e8d65eefb5..affea255fe 100755 --- a/t/t6413-merge-crlf.sh +++ b/t/t6413-merge-crlf.sh @@ -8,6 +8,9 @@ test_description='merge conflict in crlf repo ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -24,7 +27,7 @@ test_expect_success setup ' echo line from b | append_cr >file && git commit -m "add line from b" file && git tag b && - git checkout master + git checkout main ' test_expect_success 'Check "ours" is CRLF' ' diff --git a/t/t6414-merge-rename-nocruft.sh b/t/t6414-merge-rename-nocruft.sh index a25e730460..d7e3c1fa6e 100755 --- a/t/t6414-merge-rename-nocruft.sh +++ b/t/t6414-merge-rename-nocruft.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='Merge-recursive merging renames' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -65,7 +68,7 @@ test_expect_success 'setup' ' git update-index A && git commit -m "blue modify A" && - git checkout master + git checkout main ' # This test broke in 65ac6e9c3f47807cb603af07a6a9e1a43bc119ae diff --git a/t/t6415-merge-dir-to-symlink.sh b/t/t6415-merge-dir-to-symlink.sh index 2eddcc7664..2ce104aca7 100755 --- a/t/t6415-merge-dir-to-symlink.sh +++ b/t/t6415-merge-dir-to-symlink.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='merging when a directory was replaced with a symlink' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'create a commit where dir a/b changed to symlink' ' @@ -19,7 +22,7 @@ test_expect_success 'create a commit where dir a/b changed to symlink' ' test_expect_success 'checkout does not clobber untracked symlink' ' git checkout HEAD^0 && - git reset --hard master && + git reset --hard main && git rm --cached a/b && git commit -m "untracked symlink remains" && test_must_fail git checkout start^0 @@ -27,7 +30,7 @@ test_expect_success 'checkout does not clobber untracked symlink' ' test_expect_success 'a/b-2/c/d is kept when clobbering symlink b' ' git checkout HEAD^0 && - git reset --hard master && + git reset --hard main && git rm --cached a/b && git commit -m "untracked symlink remains" && git checkout -f start^0 && @@ -36,7 +39,7 @@ test_expect_success 'a/b-2/c/d is kept when clobbering symlink b' ' test_expect_success 'checkout should not have deleted a/b-2/c/d' ' git checkout HEAD^0 && - git reset --hard master && + git reset --hard main && git checkout start^0 && test_path_is_file a/b-2/c/d ' @@ -53,7 +56,7 @@ test_expect_success 'setup for merge test' ' test_expect_success 'Handle D/F conflict, do not lose a/b-2/c/d in merge (resolve)' ' git reset --hard && git checkout baseline^0 && - git merge -s resolve master && + git merge -s resolve main && test_path_is_file a/b-2/c/d ' @@ -64,7 +67,7 @@ test_expect_success SYMLINKS 'a/b was resolved as symlink' ' test_expect_success 'Handle D/F conflict, do not lose a/b-2/c/d in merge (recursive)' ' git reset --hard && git checkout baseline^0 && - git merge -s recursive master && + git merge -s recursive main && test_path_is_file a/b-2/c/d ' @@ -74,7 +77,7 @@ test_expect_success SYMLINKS 'a/b was resolved as symlink' ' test_expect_success 'Handle F/D conflict, do not lose a/b-2/c/d in merge (resolve)' ' git reset --hard && - git checkout master^0 && + git checkout main^0 && git merge -s resolve baseline^0 && test_path_is_file a/b-2/c/d ' @@ -85,7 +88,7 @@ test_expect_success SYMLINKS 'a/b was resolved as symlink' ' test_expect_success 'Handle F/D conflict, do not lose a/b-2/c/d in merge (recursive)' ' git reset --hard && - git checkout master^0 && + git checkout main^0 && git merge -s recursive baseline^0 && test_path_is_file a/b-2/c/d ' @@ -98,7 +101,7 @@ test_expect_failure 'do not lose untracked in merge (resolve)' ' git reset --hard && git checkout baseline^0 && >a/b/c/e && - test_must_fail git merge -s resolve master && + test_must_fail git merge -s resolve main && test_path_is_file a/b/c/e && test_path_is_file a/b-2/c/d ' @@ -107,7 +110,7 @@ test_expect_success 'do not lose untracked in merge (recursive)' ' git reset --hard && git checkout baseline^0 && >a/b/c/e && - test_must_fail git merge -s recursive master && + test_must_fail git merge -s recursive main && test_path_is_file a/b/c/e && test_path_is_file a/b-2/c/d ' @@ -116,14 +119,14 @@ test_expect_success 'do not lose modifications in merge (resolve)' ' git reset --hard && git checkout baseline^0 && echo more content >>a/b/c/d && - test_must_fail git merge -s resolve master + test_must_fail git merge -s resolve main ' test_expect_success 'do not lose modifications in merge (recursive)' ' git reset --hard && git checkout baseline^0 && echo more content >>a/b/c/d && - test_must_fail git merge -s recursive master + test_must_fail git merge -s recursive main ' test_expect_success 'setup a merge where dir a/b-2 changed to symlink' ' diff --git a/t/t6416-recursive-corner-cases.sh b/t/t6416-recursive-corner-cases.sh index 887c2195a9..84f5082366 100755 --- a/t/t6416-recursive-corner-cases.sh +++ b/t/t6416-recursive-corner-cases.sh @@ -2,6 +2,9 @@ test_description='recursive merge corner cases involving criss-cross merges' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-merge.sh @@ -385,7 +388,7 @@ test_expect_success 'git detects conflict merging criss-cross+modify/delete' ' test_line_count = 2 out && git rev-parse >expect \ - master:file B:file && + main:file B:file && git rev-parse >actual \ :1:file :2:file && test_cmp expect actual @@ -407,7 +410,7 @@ test_expect_success 'git detects conflict merging criss-cross+modify/delete, rev test_line_count = 2 out && git rev-parse >expect \ - master:file B:file && + main:file B:file && git rev-parse >actual \ :1:file :3:file && test_cmp expect actual @@ -1553,12 +1556,12 @@ test_expect_failure 'check conflicting modes for regular file' ' # Setup: # L1---L2 # / \ / \ -# master X ? +# main X ? # \ / \ / # R1---R2 # # Where: -# master has two files, named 'b' and 'a' +# main has two files, named 'b' and 'a' # branches L1 and R1 both modify each of the two files in conflicting ways # # L2 is a merge of R1 into L1; more on it later. @@ -1663,7 +1666,7 @@ test_expect_success 'check nested conflicts' ' cd nested_conflicts && git clean -f && - MASTER=$(git rev-parse --short master) && + MAIN=$(git rev-parse --short main) && git checkout L2^0 && # Merge must fail; there is a conflict @@ -1679,24 +1682,24 @@ test_expect_success 'check nested conflicts' ' test_line_count = 1 out && # Create a and b from virtual merge base X - git cat-file -p master:a >base && + git cat-file -p main:a >base && git cat-file -p L1:a >ours && git cat-file -p R1:a >theirs && test_must_fail git merge-file --diff3 \ -L "Temporary merge branch 1" \ - -L "$MASTER" \ + -L "$MAIN" \ -L "Temporary merge branch 2" \ ours \ base \ theirs && sed -e "s/^\([<|=>]\)/\1\1/" ours >vmb_a && - git cat-file -p master:b >base && + git cat-file -p main:b >base && git cat-file -p L1:b >ours && git cat-file -p R1:b >theirs && test_must_fail git merge-file --diff3 \ -L "Temporary merge branch 1" \ - -L "$MASTER" \ + -L "$MAIN" \ -L "Temporary merge branch 2" \ ours \ base \ @@ -1748,12 +1751,12 @@ test_expect_success 'check nested conflicts' ' # Setup: # L1---L2---L3 # / \ / \ / \ -# master X1 X2 ? +# main X1 X2 ? # \ / \ / \ / # R1---R2---R3 # # Where: -# master has one file named 'content' +# main has one file named 'content' # branches L1 and R1 both modify each of the two files in conflicting ways # # L<n> (n>1) is a merge of R<n-1> into L<n-1> @@ -1834,7 +1837,7 @@ test_expect_success 'check virtual merge base with nested conflicts' ' ( cd virtual_merge_base_has_nested_conflicts && - MASTER=$(git rev-parse --short master) && + MAIN=$(git rev-parse --short main) && git checkout L3^0 && # Merge must fail; there is a conflict @@ -1857,13 +1860,13 @@ test_expect_success 'check virtual merge base with nested conflicts' ' # Imitate X1 merge base, except without long enough conflict # markers because a subsequent sed will modify them. Put # result into vmb. - git cat-file -p master:content >base && + git cat-file -p main:content >base && git cat-file -p L:content >left && git cat-file -p R:content >right && cp left merged-once && test_must_fail git merge-file --diff3 \ -L "Temporary merge branch 1" \ - -L "$MASTER" \ + -L "$MAIN" \ -L "Temporary merge branch 2" \ merged-once \ base \ diff --git a/t/t6417-merge-ours-theirs.sh b/t/t6417-merge-ours-theirs.sh index 0aebc6c028..ac9aee9a66 100755 --- a/t/t6417-merge-ours-theirs.sh +++ b/t/t6417-merge-ours-theirs.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='Merge-recursive ours and theirs variants' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -20,11 +23,11 @@ test_expect_success setup ' sed -e "s/9/nueve/" >file <elif && git commit -a -m theirs && - git checkout master^0 + git checkout main^0 ' test_expect_success 'plain recursive - should conflict' ' - git reset --hard master && + git reset --hard main && test_must_fail git merge -s recursive side && grep nine file && grep nueve file && @@ -34,7 +37,7 @@ test_expect_success 'plain recursive - should conflict' ' ' test_expect_success 'recursive favouring theirs' ' - git reset --hard master && + git reset --hard main && git merge -s recursive -Xtheirs side && ! grep nine file && grep nueve file && @@ -44,7 +47,7 @@ test_expect_success 'recursive favouring theirs' ' ' test_expect_success 'recursive favouring ours' ' - git reset --hard master && + git reset --hard main && git merge -s recursive -X ours side && grep nine file && ! grep nueve file && @@ -56,26 +59,26 @@ test_expect_success 'recursive favouring ours' ' test_expect_success 'binary file with -Xours/-Xtheirs' ' echo file binary >.gitattributes && - git reset --hard master && + git reset --hard main && git merge -s recursive -X theirs side && git diff --exit-code side HEAD -- file && - git reset --hard master && + git reset --hard main && git merge -s recursive -X ours side && - git diff --exit-code master HEAD -- file + git diff --exit-code main HEAD -- file ' test_expect_success 'pull passes -X to underlying merge' ' - git reset --hard master && git pull -s recursive -Xours . side && - git reset --hard master && git pull -s recursive -X ours . side && - git reset --hard master && git pull -s recursive -Xtheirs . side && - git reset --hard master && git pull -s recursive -X theirs . side && - git reset --hard master && test_must_fail git pull -s recursive -X bork . side + git reset --hard main && git pull -s recursive -Xours . side && + git reset --hard main && git pull -s recursive -X ours . side && + git reset --hard main && git pull -s recursive -Xtheirs . side && + git reset --hard main && git pull -s recursive -X theirs . side && + git reset --hard main && test_must_fail git pull -s recursive -X bork . side ' test_expect_success SYMLINKS 'symlink with -Xours/-Xtheirs' ' - git reset --hard master && - git checkout -b two master && + git reset --hard main && + git checkout -b two main && ln -s target-zero link && git add link && git commit -m "add link pointing to zero" && diff --git a/t/t6418-merge-text-auto.sh b/t/t6418-merge-text-auto.sh index 30983d18b1..1e0296dd17 100755 --- a/t/t6418-merge-text-auto.sh +++ b/t/t6418-merge-text-auto.sh @@ -2,16 +2,19 @@ test_description='CRLF merge conflict across text=auto change -* [master] remove .gitattributes +* [main] remove .gitattributes ! [side] add line from b -- + [side] add line from b -* [master] remove .gitattributes -* [master^] add line from a -* [master~2] normalize file +* [main] remove .gitattributes +* [main^] add line from a +* [main~2] normalize file *+ [side^] Initial ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_have_prereq SED_STRIPS_CR && SED_OPTIONS=-b @@ -64,7 +67,7 @@ test_expect_success setup ' git commit -m "add line from b" && git tag b && - git checkout master + git checkout main ' test_expect_success 'set up fuzz_conflict() helper' ' @@ -195,7 +198,7 @@ test_expect_success 'Test delete/normalize conflict' ' git reset --hard initial && git rm file && git commit -m "remove file" && - git checkout master && + git checkout main && git reset --hard a^ && git merge side && test_path_is_missing file diff --git a/t/t6419-merge-ignorecase.sh b/t/t6419-merge-ignorecase.sh index 531850d834..b64b75acf5 100755 --- a/t/t6419-merge-ignorecase.sh +++ b/t/t6419-merge-ignorecase.sh @@ -2,6 +2,9 @@ test_description='git-merge with case-changing rename on case-insensitive file system' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh if ! test_have_prereq CASE_INSENSITIVE_FS @@ -20,18 +23,18 @@ test_expect_success 'merge with case-changing rename' ' >foo && git add foo && git commit -m "intervening commit" && - git checkout master && + git checkout main && git rm TestCase && >testcase && git add testcase && git commit -m "rename to testcase" && git checkout with-camel && - git merge master -m "merge" && + git merge main -m "merge" && test_path_is_file testcase ' test_expect_success 'merge with case-changing rename on both sides' ' - git checkout master && + git checkout main && git reset --hard baseline && git branch -D with-camel && git checkout -b with-camel && @@ -40,13 +43,13 @@ test_expect_success 'merge with case-changing rename on both sides' ' >foo && git add foo && git commit -m "intervening commit" && - git checkout master && + git checkout main && git rm TestCase && >testcase && git add testcase && git commit -m "rename to testcase" && git checkout with-camel && - git merge master -m "merge" && + git merge main -m "merge" && test_path_is_file testcase ' diff --git a/t/t6422-merge-rename-corner-cases.sh b/t/t6422-merge-rename-corner-cases.sh index 78bfaf17f0..bf4ce3c63d 100755 --- a/t/t6422-merge-rename-corner-cases.sh +++ b/t/t6422-merge-rename-corner-cases.sh @@ -3,6 +3,9 @@ test_description="recursive merge corner cases w/ renames but not criss-crosses" # t6036 has corner cases that involve both criss-cross merges and renames +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-merge.sh @@ -1130,7 +1133,7 @@ test_conflicts_with_adds_and_renames() { # Setup: # L # / \ - # master ? + # main ? # \ / # R # @@ -1260,7 +1263,7 @@ test_conflicts_with_adds_and_renames() { :2:three \ :3:three && git rev-parse >expected \ - master:irrelevant_file \ + main:irrelevant_file \ file_v2 \ file_v4 && test_cmp expected actual && @@ -1290,12 +1293,12 @@ test_conflicts_with_adds_and_renames add add # Setup: # L # / \ -# master ? +# main ? # \ / # R # # Where: -# master has two files, named 'one' and 'two'. +# main has two files, named 'one' and 'two'. # branches L and R both modify 'one', in conflicting ways. # branches L and R both modify 'two', in conflicting ways. # branch L also renames 'one' to 'three'. @@ -1376,7 +1379,7 @@ test_expect_success 'check nested conflicts from rename/rename(2to1)' ' test_line_count = 1 out && # Compare :2:three to expected values - git cat-file -p master:one >base && + git cat-file -p main:one >base && git cat-file -p L:three >ours && git cat-file -p R:one >theirs && test_must_fail git merge-file \ @@ -1387,7 +1390,7 @@ test_expect_success 'check nested conflicts from rename/rename(2to1)' ' test_cmp expect L-three && # Compare :2:three to expected values - git cat-file -p master:two >base && + git cat-file -p main:two >base && git cat-file -p L:two >ours && git cat-file -p R:three >theirs && test_must_fail git merge-file \ diff --git a/t/t6425-merge-rename-delete.sh b/t/t6425-merge-rename-delete.sh index f79d021590..459b431a60 100755 --- a/t/t6425-merge-rename-delete.sh +++ b/t/t6425-merge-rename-delete.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='Merge-recursive rename/delete conflict message' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'rename/delete' ' @@ -12,7 +15,7 @@ test_expect_success 'rename/delete' ' git mv A B && git commit -m "rename" && - git checkout master && + git checkout main && git rm A && git commit -m "delete" && diff --git a/t/t6427-diff3-conflict-markers.sh b/t/t6427-diff3-conflict-markers.sh index f4655bb358..25c4b720e7 100755 --- a/t/t6427-diff3-conflict-markers.sh +++ b/t/t6427-diff3-conflict-markers.sh @@ -2,6 +2,9 @@ test_description='recursive merge diff3 style conflict markers' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Setup: @@ -43,7 +46,7 @@ test_expect_success 'check no merge base' ' # Setup: # L1 # / \ -# master ? +# main ? # \ / # R1 # @@ -90,18 +93,18 @@ test_expect_success 'check unique merge base' ' cd unique_merge_base && git checkout L^0 && - MASTER=$(git rev-parse --short master) && + MAIN=$(git rev-parse --short main) && test_must_fail git -c merge.conflictstyle=diff3 merge -s recursive R^0 && - grep "|||||| $MASTER:content" renamed + grep "|||||| $MAIN:content" renamed ) ' # Setup: # L1---L2--L3 # / \ / \ -# master X1 ? +# main X1 ? # \ / \ / # R1---R2--R3 # @@ -191,10 +194,10 @@ test_expect_success 'rebase --merge describes parent of commit being picked' ' ( cd rebase && test_commit base file && - test_commit master file && + test_commit main file && git checkout -b side HEAD^ && test_commit side file && - test_must_fail git -c merge.conflictstyle=diff3 rebase --merge master && + test_must_fail git -c merge.conflictstyle=diff3 rebase --merge main && grep "||||||| parent of" file ) ' @@ -203,7 +206,7 @@ test_expect_success 'rebase --apply describes fake ancestor base' ' ( cd rebase && git rebase --abort && - test_must_fail git -c merge.conflictstyle=diff3 rebase --apply master && + test_must_fail git -c merge.conflictstyle=diff3 rebase --apply main && grep "||||||| constructed merge base" file ) ' diff --git a/t/t6430-merge-recursive.sh b/t/t6430-merge-recursive.sh index 9c08e63af2..ffcc01fe65 100755 --- a/t/t6430-merge-recursive.sh +++ b/t/t6430-merge-recursive.sh @@ -2,6 +2,9 @@ test_description='merge-recursive backend test' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-merge.sh @@ -35,7 +38,7 @@ test_expect_success 'setup 1' ' git add a d/e && test_tick && - git commit -m "master modifies a and d/e" && + git commit -m "main modifies a and d/e" && c1=$(git rev-parse --verify HEAD) && ( git ls-tree -r HEAD && git ls-files -s ) >actual && ( @@ -466,7 +469,7 @@ test_expect_success SYMLINKS 'dir in working tree with symlink ancestor does not git checkout -b branch1 && git commit --allow-empty -m "empty commit" && - git checkout master && + git checkout main && git rm foo && mkdir foo && >foo/bar && @@ -475,7 +478,7 @@ test_expect_success SYMLINKS 'dir in working tree with symlink ancestor does not git checkout branch1 && - git cherry-pick master && + git cherry-pick main && test_path_is_dir foo && test_path_is_file foo/bar ) @@ -490,8 +493,8 @@ test_expect_success 'reset and 3-way merge' ' test_expect_success 'reset and bind merge' ' - git reset --hard master && - git read-tree --prefix=M/ master && + git reset --hard main && + git read-tree --prefix=M/ main && git ls-files -s >actual && ( echo "100644 $o1 0 M/a" && @@ -505,7 +508,7 @@ test_expect_success 'reset and bind merge' ' ) >expected && test_cmp expected actual && - git read-tree --prefix=a1/ master && + git read-tree --prefix=a1/ main && git ls-files -s >actual && ( echo "100644 $o1 0 M/a" && @@ -523,7 +526,7 @@ test_expect_success 'reset and bind merge' ' ) >expected && test_cmp expected actual && - git read-tree --prefix=z/ master && + git read-tree --prefix=z/ main && git ls-files -s >actual && ( echo "100644 $o1 0 M/a" && @@ -599,11 +602,11 @@ test_expect_success 'merge-recursive w/ empty work tree - theirs has rename' ' test_expect_success 'merge removes empty directories' ' - git reset --hard master && + git reset --hard main && git checkout -b rm && git rm d/e && git commit -mremoved-d/e && - git checkout master && + git checkout main && git merge -s recursive rm && test_path_is_missing d ' diff --git a/t/t6432-merge-recursive-space-options.sh b/t/t6432-merge-recursive-space-options.sh index b56180ee4a..db4b77e63d 100755 --- a/t/t6432-merge-recursive-space-options.sh +++ b/t/t6432-merge-recursive-space-options.sh @@ -2,15 +2,18 @@ test_description='merge-recursive space options -* [master] Clarify +* [main] Clarify ! [remote] Remove cruft -- + [remote] Remove cruft -* [master] Clarify +* [main] Clarify *+ [remote^] Initial revision * ok 1: setup ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_have_prereq SED_STRIPS_CR && SED_OPTIONS=-b @@ -87,7 +90,7 @@ test_expect_success 'setup' ' mv text.txt+ text.txt && git commit -a -m "Remove cruft" && - git checkout master && + git checkout main && sed -e " s/\(not in his right mind\),\(.*\)/\1;\2Q/ s/Quite correct\(.*\)/It is too correct\1Q/ diff --git a/t/t6433-merge-toplevel.sh b/t/t6433-merge-toplevel.sh index e29c284b9b..b16031465f 100755 --- a/t/t6433-merge-toplevel.sh +++ b/t/t6433-merge-toplevel.sh @@ -2,10 +2,13 @@ test_description='"git merge" top-level frontend' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh t3033_reset () { - git checkout -B master two && + git checkout -B main two && git branch -f left three && git branch -f right four } @@ -21,7 +24,7 @@ test_expect_success setup ' test_commit four && git checkout --orphan newroot && test_commit five && - git checkout master + git checkout main ' # Local branches @@ -61,7 +64,7 @@ test_expect_success 'merge octopus, non-fast-forward (ff)' ' test_expect_success 'merge octopus, fast-forward (does not ff)' ' t3033_reset && git merge left right && - # two (master) is not an ancestor of three (left) and four (right) + # two (main) is not an ancestor of three (left) and four (right) test_must_fail git rev-parse --verify HEAD^4 && git rev-parse HEAD^1 HEAD^2 HEAD^3 | sort >actual && git rev-parse two three four | sort >expect && @@ -118,7 +121,7 @@ test_expect_success 'merge FETCH_HEAD octopus fast-forward (does not ff)' ' t3033_reset && git fetch . left right && git merge FETCH_HEAD && - # two (master) is not an ancestor of three (left) and four (right) + # two (main) is not an ancestor of three (left) and four (right) test_must_fail git rev-parse --verify HEAD^4 && git rev-parse HEAD^1 HEAD^2 HEAD^3 | sort >actual && git rev-parse two three four | sort >expect && diff --git a/t/t6434-merge-recursive-rename-options.sh b/t/t6434-merge-recursive-rename-options.sh index 3d9fae68c4..a11707835b 100755 --- a/t/t6434-merge-recursive-rename-options.sh +++ b/t/t6434-merge-recursive-rename-options.sh @@ -5,11 +5,11 @@ test_description='merge-recursive rename options Test rename detection by examining rename/delete conflicts. * (HEAD -> rename) rename -| * (master) delete +| * (main) delete |/ * base -git diff --name-status base master +git diff --name-status base main D 0-old D 1-old D 2-old @@ -26,6 +26,9 @@ they are rounded down (see, e.g., Documentation/diff-generate-patch.txt, which mentions this in a different context). ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh get_expected_stages () { @@ -118,7 +121,7 @@ test_expect_success 'setup repo' ' get_expected_stages 2 && get_expected_stages 3 && check_50="false" && - tail="HEAD^ -- HEAD master" + tail="HEAD^ -- HEAD main" ' test_expect_success 'setup thresholds' ' diff --git a/t/t6436-merge-overwrite.sh b/t/t6436-merge-overwrite.sh index dd9376842f..362ae37a12 100755 --- a/t/t6436-merge-overwrite.sh +++ b/t/t6436-merge-overwrite.sh @@ -4,6 +4,9 @@ test_description='git-merge Do not overwrite changes.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -193,7 +196,7 @@ test_expect_success 'set up unborn branch and content' ' ' test_expect_success 'will not clobber WT/index when merging into unborn' ' - git merge master && + git merge main && grep foo tracked-file && git show :tracked-file >expect && grep foo expect && diff --git a/t/t6437-submodule-merge.sh b/t/t6437-submodule-merge.sh index 3ead2b726f..0f92bcf326 100755 --- a/t/t6437-submodule-merge.sh +++ b/t/t6437-submodule-merge.sh @@ -2,6 +2,9 @@ test_description='merging with submodules' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # @@ -27,7 +30,7 @@ test_expect_success setup ' test_tick && git commit -m root && - git checkout -b a master && + git checkout -b a main && (cd sub && echo A > file && git add file && @@ -37,7 +40,7 @@ test_expect_success setup ' test_tick && git commit -m a && - git checkout -b b master && + git checkout -b b main && (cd sub && echo B > file && git add file && @@ -254,22 +257,22 @@ test_expect_success 'setup for recursive merge with submodule' ' (cd sub && git init && test_commit a && - git checkout -b sub-b master && + git checkout -b sub-b main && test_commit b && - git checkout -b sub-c master && + git checkout -b sub-c main && test_commit c && git checkout -b sub-bc sub-b && git merge sub-c && git checkout -b sub-cb sub-c && git merge sub-b && - git checkout master) && + git checkout main) && git add sub && git commit -m a && - git checkout -b top-b master && + git checkout -b top-b main && (cd sub && git checkout sub-b) && git add sub && git commit -m b && - git checkout -b top-c master && + git checkout -b top-c main && (cd sub && git checkout sub-c) && git add sub && git commit -m c && diff --git a/t/t6439-merge-co-error-msgs.sh b/t/t6439-merge-co-error-msgs.sh index 5c8894d94f..e176475ed5 100755 --- a/t/t6439-merge-co-error-msgs.sh +++ b/t/t6439-merge-co-error-msgs.sh @@ -2,6 +2,9 @@ test_description='unpack-trees error messages' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh @@ -18,7 +21,7 @@ test_expect_success 'setup' ' git add two three four five && git commit -m Second && - git checkout master && + git checkout main && echo other >two && echo other >three && echo other >four && @@ -83,7 +86,7 @@ test_expect_success 'cannot switch branches because of local changes' ' echo two >rep/two && git add rep/one rep/two && git commit -m Fourth && - git checkout master && + git checkout main && echo uno >rep/one && echo dos >rep/two && test_must_fail git checkout branch 2>out && @@ -128,7 +131,7 @@ test_expect_success 'not_uptodate_dir porcelain checkout error' ' >rep2 && git add rep rep2 && git commit -m "added test as a file" && - git checkout master && + git checkout main && >rep/untracked-file && >rep2/untracked-file && test_must_fail git checkout branch 2>out && diff --git a/t/t6501-freshen-objects.sh b/t/t6501-freshen-objects.sh index 8a3bb4105b..75210f012b 100755 --- a/t/t6501-freshen-objects.sh +++ b/t/t6501-freshen-objects.sh @@ -25,6 +25,9 @@ # to refer to an existing tree). test_description='check pruning of dependent objects' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # We care about reachability, so we do not want to use @@ -67,7 +70,7 @@ for repack in '' true; do git checkout -b experiment && commit abandon && maybe_repack && - git checkout master && + git checkout main && git branch -D experiment ' diff --git a/t/t7003-filter-branch.sh b/t/t7003-filter-branch.sh index 36477cb1f4..1c55695034 100755 --- a/t/t7003-filter-branch.sh +++ b/t/t7003-filter-branch.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git filter-branch' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY/lib-gpg.sh" @@ -13,7 +16,7 @@ test_expect_success 'setup' ' mkdir dir && test_commit dir/D && test_commit E && - git checkout master && + git checkout main && test_commit C && git checkout branch && git merge C && @@ -25,7 +28,7 @@ test_expect_success 'setup' ' # * G # * Merge commit 'C' into branch # |\ -# | * (master) C +# | * (main) C # * | E # * | dir/D # * | D @@ -162,15 +165,15 @@ test_expect_success 'subdirectory filter result looks okay' ' ' test_expect_success 'more setup' ' - git checkout master && + git checkout main && mkdir subdir && echo A > subdir/new && git add subdir/new && test_tick && - git commit -m "subdir on master" subdir/new && + git commit -m "subdir on main" subdir/new && git rm A.t && test_tick && - git commit -m "again subdir on master" && + git commit -m "again subdir on main" && git merge branch ' @@ -199,7 +202,7 @@ test_expect_success 'author information is preserved' ' git branch preserved-author && (sane_unset GIT_AUTHOR_NAME && git filter-branch -f --msg-filter "cat; \ - test \$GIT_COMMIT != $(git rev-parse master) || \ + test \$GIT_COMMIT != $(git rev-parse main) || \ echo Hallo" \ preserved-author) && git rev-list --author="B V Uips" preserved-author >actual && @@ -218,7 +221,7 @@ test_expect_success "remove a certain author's commits" ' else\ git commit-tree \"\$@\";\ fi" removed-author && - cnt1=$(git rev-list master | wc -l) && + cnt1=$(git rev-list main | wc -l) && cnt2=$(git rev-list removed-author | wc -l) && test $cnt1 -eq $(($cnt2 + 1)) && git rev-list --author="B V Uips" removed-author >actual && @@ -226,7 +229,7 @@ test_expect_success "remove a certain author's commits" ' ' test_expect_success 'barf on invalid name' ' - test_must_fail git filter-branch -f master xy-problem && + test_must_fail git filter-branch -f main xy-problem && test_must_fail git filter-branch -f HEAD^ ' @@ -236,8 +239,8 @@ test_expect_success '"map" works in commit filter' ' mapped=\$(map \$parent) && actual=\$(echo \"\$@\" | sed \"s/^.*-p //\") && test \$mapped = \$actual && - git commit-tree \"\$@\";" master~2..master && - git rev-parse --verify master + git commit-tree \"\$@\";" main~2..main && + git rev-parse --verify main ' test_expect_success 'Name needing quotes' ' @@ -256,7 +259,7 @@ test_expect_success 'Name needing quotes' ' test_expect_success 'Subdirectory filter with disappearing trees' ' git reset --hard && - git checkout master && + git checkout main && mkdir foo && touch foo/bar && @@ -275,7 +278,7 @@ test_expect_success 'Subdirectory filter with disappearing trees' ' git commit -m "Re-adding foo" && git filter-branch -f --subdirectory-filter foo && - git rev-list master >actual && + git rev-list main >actual && test_line_count = 3 actual ' @@ -332,7 +335,7 @@ test_expect_success 'Tag name filtering allows slashes in tag names' ' test_cmp expect actual ' test_expect_success 'setup --prune-empty comparisons' ' - git checkout --orphan master-no-a && + git checkout --orphan main-no-a && git rm -rf . && unset test_tick && test_tick && @@ -343,7 +346,7 @@ test_expect_success 'setup --prune-empty comparisons' ' mkdir dir && test_commit dir/D dir/D.t dir/D dir/Dx && test_commit E E.t E Ex && - git checkout master-no-a && + git checkout main-no-a && test_commit C C.t C Cx && git checkout branch-no-a && git merge Cx -m "Merge tag '\''C'\'' into branch" && @@ -397,7 +400,7 @@ test_expect_success '--prune-empty is able to prune entire branch' ' ' test_expect_success '--remap-to-ancestor with filename filters' ' - git checkout master && + git checkout main && git reset --hard A && test_commit add-foo foo 1 && git branch moved-foo && @@ -407,15 +410,15 @@ test_expect_success '--remap-to-ancestor with filename filters' ' git branch moved-bar && test_commit change-foo foo 2 && git filter-branch -f --remap-to-ancestor \ - moved-foo moved-bar A..master \ + moved-foo moved-bar A..main \ -- -- foo && test $(git rev-parse moved-foo) = $(git rev-parse moved-bar) && - test $(git rev-parse moved-foo) = $(git rev-parse master^) && + test $(git rev-parse moved-foo) = $(git rev-parse main^) && test $orig_invariant = $(git rev-parse invariant) ' test_expect_success 'automatic remapping to ancestor with filename filters' ' - git checkout master && + git checkout main && git reset --hard A && test_commit add-foo2 foo 1 && git branch moved-foo2 && @@ -425,10 +428,10 @@ test_expect_success 'automatic remapping to ancestor with filename filters' ' git branch moved-bar2 && test_commit change-foo2 foo 2 && git filter-branch -f \ - moved-foo2 moved-bar2 A..master \ + moved-foo2 moved-bar2 A..main \ -- -- foo && test $(git rev-parse moved-foo2) = $(git rev-parse moved-bar2) && - test $(git rev-parse moved-foo2) = $(git rev-parse master^) && + test $(git rev-parse moved-foo2) = $(git rev-parse main^) && test $orig_invariant = $(git rev-parse invariant2) ' diff --git a/t/t7004-tag.sh b/t/t7004-tag.sh index 05f411c821..943a7d5c1d 100755 --- a/t/t7004-tag.sh +++ b/t/t7004-tag.sh @@ -7,6 +7,9 @@ test_description='git tag Tests for operations with tags.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-gpg.sh . "$TEST_DIRECTORY"/lib-terminal.sh @@ -1583,7 +1586,7 @@ test_expect_success 'checking that branch head with --no-contains lists all but " test_expect_success 'merging original branch into this branch' ' - git merge --strategy=ours master && + git merge --strategy=ours main && git tag v4.0 ' @@ -1944,15 +1947,15 @@ test_expect_success ULIMIT_STACK_SIZE '--contains and --no-contains work in a de i=1 && while test $i -lt 8000 do - echo "commit refs/heads/master + echo "commit refs/heads/main committer A U Thor <author@example.com> $((1000000000 + $i * 100)) +0200 data <<EOF commit #$i EOF" - test $i = 1 && echo "from refs/heads/master^0" + test $i = 1 && echo "from refs/heads/main^0" i=$(($i + 1)) done | git fast-import && - git checkout master && + git checkout main && git tag far-far-away HEAD^ && run_with_limited_stack git tag --contains HEAD >actual && test_must_be_empty actual && diff --git a/t/t7012-skip-worktree-writing.sh b/t/t7012-skip-worktree-writing.sh index 7476781979..e5c6a038fb 100755 --- a/t/t7012-skip-worktree-writing.sh +++ b/t/t7012-skip-worktree-writing.sh @@ -149,6 +149,94 @@ test_expect_success '--ignore-skip-worktree-entries leaves worktree alone' ' --diff-filter=D -- keep-me.t ' +test_expect_success 'stash restore in sparse checkout' ' + test_create_repo stash-restore && + ( + cd stash-restore && + + mkdir subdir && + echo A >subdir/A && + echo untouched >untouched && + echo removeme >removeme && + echo modified >modified && + git add . && + git commit -m Initial && + + echo AA >>subdir/A && + echo addme >addme && + echo tweaked >>modified && + rm removeme && + git add addme && + + git stash push && + + git sparse-checkout set subdir && + + # Ensure after sparse-checkout we only have expected files + cat >expect <<-EOF && + S modified + S removeme + H subdir/A + S untouched + EOF + git ls-files -t >actual && + test_cmp expect actual && + + test_path_is_missing addme && + test_path_is_missing modified && + test_path_is_missing removeme && + test_path_is_file subdir/A && + test_path_is_missing untouched && + + # Put a file in the working directory in the way + echo in the way >modified && + git stash apply && + + # Ensure stash vivifies modifies paths... + cat >expect <<-EOF && + H addme + H modified + H removeme + H subdir/A + S untouched + EOF + git ls-files -t >actual && + test_cmp expect actual && + + # ...and that the paths show up in status as changed... + cat >expect <<-EOF && + A addme + M modified + D removeme + M subdir/A + ?? actual + ?? expect + ?? modified.stash.XXXXXX + EOF + git status --porcelain | \ + sed -e s/stash......./stash.XXXXXX/ >actual && + test_cmp expect actual && + + # ...and that working directory reflects the files correctly + test_path_is_file addme && + test_path_is_file modified && + test_path_is_missing removeme && + test_path_is_file subdir/A && + test_path_is_missing untouched && + + # ...including that we have the expected "modified" file... + cat >expect <<-EOF && + modified + tweaked + EOF + test_cmp expect modified && + + # ...and that the other "modified" file is still present... + echo in the way >expect && + test_cmp expect modified.stash.* + ) +' + #TODO test_expect_failure 'git-apply adds file' false #TODO test_expect_failure 'git-apply updates file' false #TODO test_expect_failure 'git-apply removes file' false diff --git a/t/t7030-verify-tag.sh b/t/t7030-verify-tag.sh index 5c5bc32ccb..3cefde9602 100755 --- a/t/t7030-verify-tag.sh +++ b/t/t7030-verify-tag.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='signed tag tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY/lib-gpg.sh" @@ -17,7 +20,7 @@ test_expect_success GPG 'create signed tags' ' echo 3 >elif && git add elif && test_tick && git commit -m "third on side" && - git checkout master && + git checkout main && test_tick && git merge -S side && git tag -s -m merge merge && diff --git a/t/t7060-wtstatus.sh b/t/t7060-wtstatus.sh index d5218743e9..72fb418b89 100755 --- a/t/t7060-wtstatus.sh +++ b/t/t7060-wtstatus.sh @@ -2,6 +2,9 @@ test_description='basic work tree status reporting' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -51,7 +54,7 @@ EOF git checkout -b side HEAD^ && git rm foo && git commit -m delete && - test_must_fail git merge master && + test_must_fail git merge main && test_must_fail git commit --dry-run >../actual && test_i18ncmp ../expect ../actual && git status >../actual && @@ -124,18 +127,18 @@ test_expect_success 'git diff-index --cached -C shows 2 copies + 1 unmerged' ' test_expect_success 'status when conflicts with add and rm advice (deleted by them)' ' git reset --hard && - git checkout master && + git checkout main && test_commit init main.txt init && git checkout -b second_branch && git rm main.txt && git commit -m "main.txt deleted on second_branch" && test_commit second conflict.txt second && - git checkout master && + git checkout main && test_commit on_second main.txt on_second && - test_commit master conflict.txt master && + test_commit main conflict.txt main && test_must_fail git merge second_branch && cat >expected <<\EOF && -On branch master +On branch main You have unmerged paths. (fix conflicts and run "git commit") (use "git merge --abort" to abort the merge) @@ -157,8 +160,8 @@ test_expect_success 'prepare for conflicts' ' git checkout -b conflict && test_commit one main.txt one && git branch conflict_second && - git mv main.txt sub_master.txt && - git commit -m "main.txt renamed in sub_master.txt" && + git mv main.txt sub_main.txt && + git commit -m "main.txt renamed in sub_main.txt" && git checkout conflict_second && git mv main.txt sub_second.txt && git commit -m "main.txt renamed in sub_second.txt" @@ -176,7 +179,7 @@ You have unmerged paths. Unmerged paths: (use "git add/rm <file>..." as appropriate to mark resolution) both deleted: main.txt - added by them: sub_master.txt + added by them: sub_main.txt added by us: sub_second.txt no changes added to commit (use "git add" and/or "git commit -a") @@ -189,7 +192,7 @@ EOF test_expect_success 'status when conflicts with only rm advice (both deleted)' ' git reset --hard conflict_second && test_must_fail git merge conflict && - git add sub_master.txt && + git add sub_main.txt && git add sub_second.txt && cat >expected <<\EOF && On branch conflict_second @@ -198,7 +201,7 @@ You have unmerged paths. (use "git merge --abort" to abort the merge) Changes to be committed: - new file: sub_master.txt + new file: sub_main.txt Unmerged paths: (use "git rm <file>..." to mark resolution) @@ -209,12 +212,12 @@ EOF git status --untracked-files=no >actual && test_i18ncmp expected actual && git reset --hard && - git checkout master + git checkout main ' test_expect_success 'status --branch with detached HEAD' ' git reset --hard && - git checkout master^0 && + git checkout main^0 && git status --branch --porcelain >actual && cat >expected <<-EOF && ## HEAD (no branch) @@ -230,7 +233,7 @@ test_expect_success 'status --branch with detached HEAD' ' ## Duplicate the above test and verify --porcelain=v1 arg parsing. test_expect_success 'status --porcelain=v1 --branch with detached HEAD' ' git reset --hard && - git checkout master^0 && + git checkout main^0 && git status --branch --porcelain=v1 >actual && cat >expected <<-EOF && ## HEAD (no branch) diff --git a/t/t7063-status-untracked-cache.sh b/t/t7063-status-untracked-cache.sh index a682a3d826..f01bf27727 100755 --- a/t/t7063-status-untracked-cache.sh +++ b/t/t7063-status-untracked-cache.sh @@ -2,6 +2,9 @@ test_description='test untracked cache' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # On some filesystems (e.g. FreeBSD's ext2 and ufs) directory mtime @@ -475,7 +478,7 @@ EOF test_expect_success 'set up sparse checkout' ' echo "done/[a-z]*" >.git/info/sparse-checkout && test_config core.sparsecheckout true && - git checkout master && + git checkout main && git update-index --force-untracked-cache && git status --porcelain >/dev/null && # prime the cache test_path_is_missing done/.gitignore && @@ -734,13 +737,13 @@ test_expect_success 'test ident field is working' ' test_expect_success 'untracked cache survives a checkout' ' git commit --allow-empty -m empty && test-tool dump-untracked-cache >../before && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && git checkout -b other_branch && test-tool dump-untracked-cache >../after && test_cmp ../before ../after && test_commit test && test-tool dump-untracked-cache >../before && - git checkout master && + git checkout main && test-tool dump-untracked-cache >../after && test_cmp ../before ../after ' @@ -775,7 +778,7 @@ test_expect_success SYMLINKS '"status" after symlink replacement should be clean git checkout HEAD~ && status_is_clean && status_is_clean && - git checkout master && + git checkout main && avoid_racy && status_is_clean && status_is_clean @@ -786,7 +789,7 @@ test_expect_success SYMLINKS '"status" after symlink replacement should be clean git checkout HEAD~ && status_is_clean && status_is_clean && - git checkout master && + git checkout main && avoid_racy && status_is_clean && status_is_clean @@ -810,7 +813,7 @@ test_expect_success '"status" after file replacement should be clean with UC=tru git checkout HEAD~ && status_is_clean && status_is_clean && - git checkout master && + git checkout main && avoid_racy && status_is_clean && test-tool dump-untracked-cache >../actual && @@ -828,7 +831,7 @@ test_expect_success '"status" after file replacement should be clean with UC=fal git checkout HEAD~ && status_is_clean && status_is_clean && - git checkout master && + git checkout main && avoid_racy && status_is_clean && status_is_clean diff --git a/t/t7064-wtstatus-pv2.sh b/t/t7064-wtstatus-pv2.sh index 601b47830b..4613882caf 100755 --- a/t/t7064-wtstatus-pv2.sh +++ b/t/t7064-wtstatus-pv2.sh @@ -5,6 +5,9 @@ test_description='git status --porcelain=v2 This test exercises porcelain V2 output for git status.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=master +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh diff --git a/t/t7102-reset.sh b/t/t7102-reset.sh index b1affb001f..7d8fb188ee 100755 --- a/t/t7102-reset.sh +++ b/t/t7102-reset.sh @@ -7,6 +7,9 @@ test_description='git reset Documented tests for git reset' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh commit_msg () { @@ -145,7 +148,7 @@ test_expect_success 'trying to do reset --soft with pending merge should fail' ' printf "1st line 2nd file\n2nd line 2nd file\n3rd line" >secondfile && git commit -a -m "the change in branch2" && - git checkout master && + git checkout main && git branch -D branch1 branch2 && check_changes $head5 ' @@ -167,7 +170,7 @@ test_expect_success 'trying to do reset --soft with pending checkout merge shoul printf "1st line 2nd file\n2nd line 2nd file\n3rd line" >secondfile && git commit -a -m "the line in branch3" && - git checkout master && + git checkout main && git branch -D branch3 branch4 && check_changes $head5 ' @@ -380,7 +383,7 @@ test_expect_success '--hard reset to ORIG_HEAD should clear a fast-forward merge git reset --hard ORIG_HEAD && check_changes $head5 && - git checkout master && + git checkout main && git branch -D branch1 branch2 && check_changes $head5 ' diff --git a/t/t7113-post-index-change-hook.sh b/t/t7113-post-index-change-hook.sh index f011ad7eec..688fa995c9 100755 --- a/t/t7113-post-index-change-hook.sh +++ b/t/t7113-post-index-change-hook.sh @@ -2,6 +2,9 @@ test_description='post index change hook' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -85,7 +88,7 @@ test_expect_success 'test checkout and reset trigger the hook' ' EOF : force index to be dirty && test-tool chmtime +60 dir1/file1.txt && - git checkout master && + git checkout main && test_path_is_file testsuccess && rm -f testsuccess && test_path_is_missing testfailure && test-tool chmtime +60 dir1/file1.txt && diff --git a/t/t7201-co.sh b/t/t7201-co.sh index b36a93056f..daf8678b8a 100755 --- a/t/t7201-co.sh +++ b/t/t7201-co.sh @@ -5,10 +5,10 @@ test_description='git checkout tests. -Creates master, forks renamer and side branches from it. +Creates main, forks renamer and side branches from it. Test switching across them. - ! [master] Initial A one, A two + ! [main] Initial A one, A two * [renamer] Renamer R one->uno, M two ! [side] Side M one, D two, A three ! [simple] Simple D one, M two @@ -16,10 +16,13 @@ Test switching across them. + [simple] Simple D one, M two + [side] Side M one, D two, A three * [renamer] Renamer R one->uno, M two - +*++ [master] Initial A one, A two + +*++ [main] Initial A one, A two ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_tick @@ -46,27 +49,27 @@ test_expect_success setup ' fill a b c d e f >two && git commit -a -m "Renamer R one->uno, M two" && - git checkout -b side master && + git checkout -b side main && fill 1 2 3 4 5 6 7 >one && fill A B C D E >three && rm -f two && git update-index --add --remove one two three && git commit -m "Side M one, D two, A three" && - git checkout -b simple master && + git checkout -b simple main && rm -f one && fill a c e >two && git commit -a -m "Simple D one, M two" && - git checkout master + git checkout main ' test_expect_success 'checkout from non-existing branch' ' - git checkout -b delete-me master && + git checkout -b delete-me main && git update-ref -d --no-deref refs/heads/delete-me && test refs/heads/delete-me = "$(git symbolic-ref HEAD)" && - git checkout master && - test refs/heads/master = "$(git symbolic-ref HEAD)" + git checkout main && + test refs/heads/main = "$(git symbolic-ref HEAD)" ' test_expect_success 'checkout with dirty tree without -m' ' @@ -81,7 +84,7 @@ test_expect_success 'checkout with dirty tree without -m' ' ' test_expect_success 'checkout with unrelated dirty tree without -m' ' - git checkout -f master && + git checkout -f main && fill 0 1 2 3 4 5 6 7 8 >same && cp same kept && git checkout side >messages && @@ -91,7 +94,7 @@ test_expect_success 'checkout with unrelated dirty tree without -m' ' ' test_expect_success 'checkout -m with dirty tree' ' - git checkout -f master && + git checkout -f main && git clean -f && fill 0 1 2 3 4 5 6 7 8 >one && @@ -102,9 +105,9 @@ test_expect_success 'checkout -m with dirty tree' ' printf "M\t%s\n" one >expect.messages && test_cmp expect.messages messages && - fill "M one" "A three" "D two" >expect.master && - git diff --name-status master >current.master && - test_cmp expect.master current.master && + fill "M one" "A three" "D two" >expect.main && + git diff --name-status main >current.main && + test_cmp expect.main current.main && fill "M one" >expect.side && git diff --name-status side >current.side && @@ -115,7 +118,7 @@ test_expect_success 'checkout -m with dirty tree' ' ' test_expect_success 'checkout -m with dirty tree, renamed' ' - git checkout -f master && git clean -f && + git checkout -f main && git clean -f && fill 1 2 3 4 5 7 8 >one && if git checkout renamer @@ -135,7 +138,7 @@ test_expect_success 'checkout -m with dirty tree, renamed' ' ' test_expect_success 'checkout -m with merge conflict' ' - git checkout -f master && git clean -f && + git checkout -f main && git clean -f && fill 1 T 3 4 5 6 S 8 >one && if git checkout renamer @@ -148,7 +151,7 @@ test_expect_success 'checkout -m with merge conflict' ' git checkout -m renamer && - git diff master:one :3:uno | + git diff main:one :3:uno | sed -e "1,/^@@/d" -e "/^ /d" -e "s/^-/d/" -e "s/^+/a/" >current && fill d2 aT d7 aS >expect && test_cmp expect current && @@ -157,7 +160,7 @@ test_expect_success 'checkout -m with merge conflict' ' ' test_expect_success 'format of merge conflict from checkout -m' ' - git checkout -f master && + git checkout -f main && git clean -f && fill b d >two && @@ -181,7 +184,7 @@ test_expect_success 'format of merge conflict from checkout -m' ' ' test_expect_success 'checkout --merge --conflict=diff3 <branch>' ' - git checkout -f master && + git checkout -f main && git reset --hard && git clean -f && @@ -193,7 +196,7 @@ test_expect_success 'checkout --merge --conflict=diff3 <branch>' ' a c e - ||||||| master + ||||||| main a b c @@ -208,7 +211,7 @@ test_expect_success 'checkout --merge --conflict=diff3 <branch>' ' ' test_expect_success 'switch to another branch while carrying a deletion' ' - git checkout -f master && + git checkout -f main && git reset --hard && git clean -f && git rm two && @@ -229,7 +232,7 @@ test_expect_success 'checkout to detach HEAD (with advice declined)' ' test_i18ngrep "HEAD is now at $rev" messages && test_line_count = 1 messages && H=$(git rev-parse --verify HEAD) && - M=$(git show-ref -s --verify refs/heads/master) && + M=$(git show-ref -s --verify refs/heads/main) && test "z$H" = "z$M" && if git symbolic-ref HEAD >/dev/null 2>&1 then @@ -249,7 +252,7 @@ test_expect_success 'checkout to detach HEAD' ' grep "HEAD is now at $rev" messages && test_line_count -gt 1 messages && H=$(git rev-parse --verify HEAD) && - M=$(git show-ref -s --verify refs/heads/master) && + M=$(git show-ref -s --verify refs/heads/main) && test "z$H" = "z$M" && if git symbolic-ref HEAD >/dev/null 2>&1 then @@ -261,11 +264,11 @@ test_expect_success 'checkout to detach HEAD' ' ' test_expect_success 'checkout to detach HEAD with branchname^' ' - git checkout -f master && + git checkout -f main && git clean -f && git checkout renamer^ && H=$(git rev-parse --verify HEAD) && - M=$(git show-ref -s --verify refs/heads/master) && + M=$(git show-ref -s --verify refs/heads/main) && test "z$H" = "z$M" && if git symbolic-ref HEAD >/dev/null 2>&1 then @@ -277,11 +280,11 @@ test_expect_success 'checkout to detach HEAD with branchname^' ' ' test_expect_success 'checkout to detach HEAD with :/message' ' - git checkout -f master && + git checkout -f main && git clean -f && git checkout ":/Initial" && H=$(git rev-parse --verify HEAD) && - M=$(git show-ref -s --verify refs/heads/master) && + M=$(git show-ref -s --verify refs/heads/main) && test "z$H" = "z$M" && if git symbolic-ref HEAD >/dev/null 2>&1 then @@ -293,11 +296,11 @@ test_expect_success 'checkout to detach HEAD with :/message' ' ' test_expect_success 'checkout to detach HEAD with HEAD^0' ' - git checkout -f master && + git checkout -f main && git clean -f && git checkout HEAD^0 && H=$(git rev-parse --verify HEAD) && - M=$(git show-ref -s --verify refs/heads/master) && + M=$(git show-ref -s --verify refs/heads/main) && test "z$H" = "z$M" && if git symbolic-ref HEAD >/dev/null 2>&1 then @@ -310,13 +313,13 @@ test_expect_success 'checkout to detach HEAD with HEAD^0' ' test_expect_success 'checkout with ambiguous tag/branch names' ' git tag both side && - git branch both master && + git branch both main && git reset --hard && - git checkout master && + git checkout main && git checkout both && H=$(git rev-parse --verify HEAD) && - M=$(git show-ref -s --verify refs/heads/master) && + M=$(git show-ref -s --verify refs/heads/main) && test "z$H" = "z$M" && name=$(git symbolic-ref HEAD 2>/dev/null) && test "z$name" = zrefs/heads/both @@ -324,12 +327,12 @@ test_expect_success 'checkout with ambiguous tag/branch names' ' test_expect_success 'checkout with ambiguous tag/branch names' ' git reset --hard && - git checkout master && + git checkout main && git tag frotz side && - git branch frotz master && + git branch frotz main && git reset --hard && - git checkout master && + git checkout main && git checkout tags/frotz && H=$(git rev-parse --verify HEAD) && @@ -346,7 +349,7 @@ test_expect_success 'checkout with ambiguous tag/branch names' ' test_expect_success 'switch branches while in subdirectory' ' git reset --hard && - git checkout master && + git checkout main && mkdir subs && git -C subs checkout side && @@ -362,7 +365,7 @@ test_expect_success 'checkout specific path while in subdirectory' ' git add subs/bero && git commit -m "add subs/bero" && - git checkout master && + git checkout main && mkdir -p subs && git -C subs checkout side -- bero && test -f subs/bero @@ -370,7 +373,7 @@ test_expect_success 'checkout specific path while in subdirectory' ' test_expect_success 'checkout w/--track sets up tracking' ' git config branch.autosetupmerge false && - git checkout master && + git checkout main && git checkout --track -b track1 && test "$(git config branch.track1.remote)" && test "$(git config branch.track1.merge)" @@ -379,40 +382,40 @@ test_expect_success 'checkout w/--track sets up tracking' ' test_expect_success 'checkout w/autosetupmerge=always sets up tracking' ' test_when_finished git config branch.autosetupmerge false && git config branch.autosetupmerge always && - git checkout master && + git checkout main && git checkout -b track2 && test "$(git config branch.track2.remote)" && test "$(git config branch.track2.merge)" ' test_expect_success 'checkout w/--track from non-branch HEAD fails' ' - git checkout master^0 && + git checkout main^0 && test_must_fail git symbolic-ref HEAD && test_must_fail git checkout --track -b track && test_must_fail git rev-parse --verify track && test_must_fail git symbolic-ref HEAD && - test "z$(git rev-parse master^0)" = "z$(git rev-parse HEAD)" + test "z$(git rev-parse main^0)" = "z$(git rev-parse HEAD)" ' test_expect_success 'checkout w/--track from tag fails' ' - git checkout master^0 && + git checkout main^0 && test_must_fail git symbolic-ref HEAD && test_must_fail git checkout --track -b track frotz && test_must_fail git rev-parse --verify track && test_must_fail git symbolic-ref HEAD && - test "z$(git rev-parse master^0)" = "z$(git rev-parse HEAD)" + test "z$(git rev-parse main^0)" = "z$(git rev-parse HEAD)" ' test_expect_success 'detach a symbolic link HEAD' ' - git checkout master && + git checkout main && git config --bool core.prefersymlinkrefs yes && git checkout side && - git checkout master && + git checkout main && it=$(git symbolic-ref HEAD) && - test "z$it" = zrefs/heads/master && - here=$(git rev-parse --verify refs/heads/master) && + test "z$it" = zrefs/heads/main && + here=$(git rev-parse --verify refs/heads/main) && git checkout side^ && - test "z$(git rev-parse --verify refs/heads/master)" = "z$here" + test "z$(git rev-parse --verify refs/heads/main)" = "z$here" ' test_expect_success 'checkout with --track fakes a sensible -b <name>' ' @@ -423,13 +426,13 @@ test_expect_success 'checkout with --track fakes a sensible -b <name>' ' test "refs/heads/koala/bear" = "$(git symbolic-ref HEAD)" && test "$(git rev-parse HEAD)" = "$(git rev-parse renamer)" && - git checkout master && git branch -D koala/bear && + git checkout main && git branch -D koala/bear && git checkout --track refs/remotes/origin/koala/bear && test "refs/heads/koala/bear" = "$(git symbolic-ref HEAD)" && test "$(git rev-parse HEAD)" = "$(git rev-parse renamer)" && - git checkout master && git branch -D koala/bear && + git checkout main && git branch -D koala/bear && git checkout --track remotes/origin/koala/bear && test "refs/heads/koala/bear" = "$(git symbolic-ref HEAD)" && @@ -582,17 +585,17 @@ test_expect_success 'checkout --conflict=diff3' ' ' test_expect_success 'failing checkout -b should not break working tree' ' - git reset --hard master && - git symbolic-ref HEAD refs/heads/master && + git reset --hard main && + git symbolic-ref HEAD refs/heads/main && test_must_fail git checkout -b renamer side^ && - test $(git symbolic-ref HEAD) = refs/heads/master && + test $(git symbolic-ref HEAD) = refs/heads/main && git diff --exit-code && git diff --cached --exit-code ' test_expect_success 'switch out of non-branch' ' - git reset --hard master && - git checkout master^0 && + git reset --hard main && + git checkout main^0 && echo modified >one && test_must_fail git checkout renamer 2>error.log && ! grep "^Previous HEAD" error.log diff --git a/t/t7400-submodule-basic.sh b/t/t7400-submodule-basic.sh index fec7e0299d..d44f696293 100755 --- a/t/t7400-submodule-basic.sh +++ b/t/t7400-submodule-basic.sh @@ -9,6 +9,9 @@ This test tries to verify basic sanity of the init, update and status subcommands of git submodule. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'submodule deinit works on empty repository' ' @@ -124,7 +127,7 @@ inspect() { } test_expect_success 'submodule add' ' - echo "refs/heads/master" >expect && + echo "refs/heads/main" >expect && ( cd addtest && @@ -223,7 +226,7 @@ test_expect_success 'submodule add --branch' ' echo "refs/heads/initial" >expect-head && cat <<-\EOF >expect-heads && refs/heads/initial - refs/heads/master + refs/heads/main EOF ( @@ -241,7 +244,7 @@ test_expect_success 'submodule add --branch' ' ' test_expect_success 'submodule add with ./ in path' ' - echo "refs/heads/master" >expect && + echo "refs/heads/main" >expect && ( cd addtest && @@ -257,7 +260,7 @@ test_expect_success 'submodule add with ./ in path' ' ' test_expect_success 'submodule add with /././ in path' ' - echo "refs/heads/master" >expect && + echo "refs/heads/main" >expect && ( cd addtest && @@ -273,7 +276,7 @@ test_expect_success 'submodule add with /././ in path' ' ' test_expect_success 'submodule add with // in path' ' - echo "refs/heads/master" >expect && + echo "refs/heads/main" >expect && ( cd addtest && @@ -289,7 +292,7 @@ test_expect_success 'submodule add with // in path' ' ' test_expect_success 'submodule add with /.. in path' ' - echo "refs/heads/master" >expect && + echo "refs/heads/main" >expect && ( cd addtest && @@ -305,7 +308,7 @@ test_expect_success 'submodule add with /.. in path' ' ' test_expect_success 'submodule add with ./, /.. and // in path' ' - echo "refs/heads/master" >expect && + echo "refs/heads/main" >expect && ( cd addtest && @@ -335,7 +338,7 @@ test_expect_success !CYGWIN 'submodule add with \\ in path' ' ' test_expect_success 'submodule add in subdirectory' ' - echo "refs/heads/master" >expect && + echo "refs/heads/main" >expect && mkdir addtest/sub && ( @@ -557,7 +560,7 @@ test_expect_success 'status should be "up-to-date" after update' ' test_expect_success 'checkout superproject with subproject already present' ' git checkout initial && - git checkout master + git checkout main ' test_expect_success 'apply submodule diff' ' @@ -574,7 +577,7 @@ test_expect_success 'apply submodule diff' ' git checkout second && git apply --index P.diff && - git diff --cached master >staged && + git diff --cached main >staged && test_must_be_empty staged ' diff --git a/t/t7403-submodule-sync.sh b/t/t7403-submodule-sync.sh index 0726799e74..7d2ac3322b 100755 --- a/t/t7403-submodule-sync.sh +++ b/t/t7403-submodule-sync.sh @@ -8,6 +8,9 @@ test_description='git submodule sync These tests exercise the "git submodule sync" subcommand. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success setup ' @@ -78,7 +81,7 @@ test_expect_success 'change submodule url' ' ( cd super && cd submodule && - git checkout master && + git checkout main && git pull ) && mv submodule moved-submodule && @@ -112,7 +115,7 @@ test_expect_success '"git submodule sync" should update submodule URLs' ' )" && ( cd super-clone/submodule && - git checkout master && + git checkout main && git pull ) && ( @@ -140,7 +143,7 @@ test_expect_success '"git submodule sync --recursive" should update all submodul )" && ( cd super-clone/submodule/sub-submodule && - git checkout master && + git checkout main && git pull ) ' @@ -168,7 +171,7 @@ test_expect_success '"git submodule sync" should update submodule URLs - subdire )" && ( cd super-clone/submodule && - git checkout master && + git checkout main && git pull ) && ( @@ -199,7 +202,7 @@ test_expect_success '"git submodule sync --recursive" should update all submodul )" && ( cd super-clone/submodule/sub-submodule && - git checkout master && + git checkout main && git pull ) ' diff --git a/t/t7406-submodule-update.sh b/t/t7406-submodule-update.sh index acb8766ac2..b9c1624fba 100755 --- a/t/t7406-submodule-update.sh +++ b/t/t7406-submodule-update.sh @@ -9,15 +9,18 @@ This test verifies that "git submodule update" detaches the HEAD of the submodule and "git submodule update --rebase/--merge" does not detach the HEAD. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh compare_head() { - sha_master=$(git rev-list --max-count=1 master) + sha_main=$(git rev-list --max-count=1 main) sha_head=$(git rev-list --max-count=1 HEAD) - test "$sha_master" = "$sha_head" + test "$sha_main" = "$sha_head" } @@ -262,14 +265,14 @@ test_expect_success 'submodule update --remote should fetch upstream changes wit cd super && git submodule update --remote --force submodule && git -C submodule log -1 --oneline >actual && - git -C ../submodule log -1 --oneline master >expect && + git -C ../submodule log -1 --oneline main >expect && test_cmp expect actual && git checkout -b test-branch && git submodule update --remote --force submodule && git -C submodule log -1 --oneline >actual && git -C ../submodule log -1 --oneline test-branch >expect && test_cmp expect actual && - git checkout master && + git checkout main && git branch -d test-branch && git reset --hard HEAD^ ) @@ -282,7 +285,7 @@ test_expect_success 'local config should override .gitmodules branch' ' git add file && test_tick && git commit -m "upstream line5" && - git checkout master + git checkout main ) && (cd super && git config submodule.submodule.branch test-branch && @@ -292,9 +295,9 @@ test_expect_success 'local config should override .gitmodules branch' ' ) ' -test_expect_success 'submodule update --rebase staying on master' ' +test_expect_success 'submodule update --rebase staying on main' ' (cd super/submodule && - git checkout master + git checkout main ) && (cd super && (cd submodule && @@ -306,7 +309,7 @@ test_expect_success 'submodule update --rebase staying on master' ' ) ' -test_expect_success 'submodule update --merge staying on master' ' +test_expect_success 'submodule update --merge staying on main' ' (cd super/submodule && git reset --hard HEAD~1 ) && @@ -609,7 +612,7 @@ test_expect_success 'submodule update - update=none in .git/config' ' (cd super && git config submodule.submodule.update none && (cd submodule && - git checkout master && + git checkout main && compare_head ) && git diff --name-only >out && @@ -629,7 +632,7 @@ test_expect_success 'submodule update - update=none in .git/config but --checkou (cd super && git config submodule.submodule.update none && (cd submodule && - git checkout master && + git checkout main && compare_head ) && git diff --name-only >out && @@ -689,7 +692,7 @@ test_expect_success 'submodule update continues after checkout error' ' test_expect_success 'submodule update continues after recursive checkout error' ' (cd super && git reset --hard HEAD && - git checkout master && + git checkout main && git submodule update && (cd submodule && git submodule add ../submodule subsubmodule && @@ -733,7 +736,7 @@ test_expect_success 'submodule update continues after recursive checkout error' test_expect_success 'submodule update exit immediately in case of merge conflict' ' (cd super && - git checkout master && + git checkout main && git reset --hard HEAD && (cd submodule && (cd subsubmodule && @@ -751,7 +754,7 @@ test_expect_success 'submodule update exit immediately in case of merge conflict git add submodule2 && git commit -m "two_new_submodule_commits" && (cd submodule && - git checkout master && + git checkout main && test_commit "conflict" file && echo "conflict" > file ) && @@ -770,7 +773,7 @@ test_expect_success 'submodule update exit immediately in case of merge conflict test_expect_success 'submodule update exit immediately after recursive rebase error' ' (cd super && - git checkout master && + git checkout main && git reset --hard HEAD && (cd submodule && git reset --hard HEAD && @@ -786,7 +789,7 @@ test_expect_success 'submodule update exit immediately after recursive rebase er git add submodule2 && git commit -m "two_new_submodule_commits" && (cd submodule && - git checkout master && + git checkout main && test_commit "conflict2" file && echo "conflict" > file ) && @@ -878,21 +881,21 @@ test_expect_success 'submodule update places git-dir in superprojects git-dir re git clone subsubsuper_update_r subsubsuper_update_r2 && (cd subsubsuper_update_r2 && test_commit "update_subsubsuper" file && - git push origin master + git push origin main ) && git clone subsuper_update_r subsuper_update_r2 && (cd subsuper_update_r2 && test_commit "update_subsuper" file && git submodule add ../subsubsuper_update_r subsubmodule && git commit -am "subsubmodule" && - git push origin master + git push origin main ) && git clone super_update_r super_update_r2 && (cd super_update_r2 && test_commit "update_super" file && git submodule add ../subsuper_update_r submodule && git commit -am "submodule" && - git push origin master + git push origin main ) && rm -rf super_update_r2 && git clone super_update_r super_update_r2 && @@ -911,7 +914,7 @@ test_expect_success 'submodule update places git-dir in superprojects git-dir re test_expect_success 'submodule add properly re-creates deeper level submodules' ' (cd super && - git reset --hard master && + git reset --hard main && rm -rf deeper/ && git submodule add --force ../submodule deeper/submodule ) diff --git a/t/t7407-submodule-foreach.sh b/t/t7407-submodule-foreach.sh index 6b2aa917e1..79981b51eb 100755 --- a/t/t7407-submodule-foreach.sh +++ b/t/t7407-submodule-foreach.sh @@ -9,6 +9,9 @@ This test verifies that "git submodule foreach" correctly visits all submodules that are currently checked out. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh @@ -277,13 +280,13 @@ sub1sha1_short=$(cd clone3/sub1 && git rev-parse --short HEAD) sub2sha1_short=$(cd clone3/sub2 && git rev-parse --short HEAD) cat > expect <<EOF - $nested1sha1 nested1 (heads/master) - $nested2sha1 nested1/nested2 (heads/master) - $nested3sha1 nested1/nested2/nested3 (heads/master) - $submodulesha1 nested1/nested2/nested3/submodule (heads/master) + $nested1sha1 nested1 (heads/main) + $nested2sha1 nested1/nested2 (heads/main) + $nested3sha1 nested1/nested2/nested3 (heads/main) + $submodulesha1 nested1/nested2/nested3/submodule (heads/main) $sub1sha1 sub1 ($sub1sha1_short) $sub2sha1 sub2 ($sub2sha1_short) - $sub3sha1 sub3 (heads/master) + $sub3sha1 sub3 (heads/main) EOF test_expect_success 'test "status --recursive"' ' @@ -295,10 +298,10 @@ test_expect_success 'test "status --recursive"' ' ' cat > expect <<EOF - $nested1sha1 nested1 (heads/master) + $nested1sha1 nested1 (heads/main) +$nested2sha1 nested1/nested2 (file2~1) - $nested3sha1 nested1/nested2/nested3 (heads/master) - $submodulesha1 nested1/nested2/nested3/submodule (heads/master) + $nested3sha1 nested1/nested2/nested3 (heads/main) + $submodulesha1 nested1/nested2/nested3/submodule (heads/main) EOF test_expect_success 'ensure "status --cached --recursive" preserves the --cached flag' ' @@ -316,13 +319,13 @@ test_expect_success 'ensure "status --cached --recursive" preserves the --cached nested2sha1=$(git -C clone3/nested1/nested2 rev-parse HEAD) cat > expect <<EOF - $nested1sha1 ../nested1 (heads/master) + $nested1sha1 ../nested1 (heads/main) +$nested2sha1 ../nested1/nested2 (file2) - $nested3sha1 ../nested1/nested2/nested3 (heads/master) - $submodulesha1 ../nested1/nested2/nested3/submodule (heads/master) + $nested3sha1 ../nested1/nested2/nested3 (heads/main) + $submodulesha1 ../nested1/nested2/nested3/submodule (heads/main) $sub1sha1 ../sub1 ($sub1sha1_short) $sub2sha1 ../sub2 ($sub2sha1_short) - $sub3sha1 ../sub3 (heads/master) + $sub3sha1 ../sub3 (heads/main) EOF test_expect_success 'test "status --recursive" from sub directory' ' diff --git a/t/t7409-submodule-detached-work-tree.sh b/t/t7409-submodule-detached-work-tree.sh index fc018e3638..e17ac81a89 100755 --- a/t/t7409-submodule-detached-work-tree.sh +++ b/t/t7409-submodule-detached-work-tree.sh @@ -10,6 +10,9 @@ on detached working trees ' TEST_NO_CREATE_REPO=1 +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'submodule on detached working tree' ' @@ -35,7 +38,7 @@ test_expect_success 'submodule on detached working tree' ' git rev-parse --verify HEAD >actual && test_cmp ../../../../expect actual ) && - git push origin master + git push origin main ) && mkdir home2 && ( @@ -44,7 +47,7 @@ test_expect_success 'submodule on detached working tree' ' GIT_WORK_TREE="$(pwd)" && GIT_DIR="$(pwd)/.dotfiles" && export GIT_WORK_TREE GIT_DIR && - git checkout master && + git checkout main && git submodule update --init && ( unset GIT_WORK_TREE GIT_DIR && @@ -64,10 +67,10 @@ test_expect_success 'submodule on detached working pointed by core.worktree' ' git clone --bare ../remote "$GIT_DIR" && git config core.bare false && git config core.worktree .. && - git checkout master && + git checkout main && git submodule add ../bundle1 .vim/bundle/dupe && test_commit "dupe" && - git push origin master + git push origin main ) && ( cd home && diff --git a/t/t7416-submodule-dash-url.sh b/t/t7416-submodule-dash-url.sh index eec96e0ba9..d21dc8b009 100755 --- a/t/t7416-submodule-dash-url.sh +++ b/t/t7416-submodule-dash-url.sh @@ -201,4 +201,19 @@ test_expect_success 'fsck rejects embedded newline in relative url' ' grep gitmodulesUrl err ' +test_expect_success 'fsck rejects embedded newline in git url' ' + git checkout --orphan git-newline && + cat >.gitmodules <<-\EOF && + [submodule "foo"] + url = "git://example.com:1234/repo%0a.git" + EOF + git add .gitmodules && + git commit -m "git url with newline" && + test_when_finished "rm -rf dst" && + git init --bare dst && + git -C dst config transfer.fsckObjects true && + test_must_fail git push dst HEAD 2>err && + grep gitmodulesUrl err +' + test_done diff --git a/t/t7417-submodule-path-url.sh b/t/t7417-submodule-path-url.sh index f7e7e94d7b..f0f6b9fa9e 100755 --- a/t/t7417-submodule-path-url.sh +++ b/t/t7417-submodule-path-url.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='check handling of .gitmodule path with dash' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'create submodule with dash in path' ' @@ -36,7 +39,7 @@ test_expect_success MINGW 'submodule paths disallows trailing spaces' ' sed "s/sub/sub /" <tree >tree.new && tree=$(git -C super mktree <tree.new) && commit=$(echo with space | git -C super commit-tree $tree) && - git -C super update-ref refs/heads/master $commit && + git -C super update-ref refs/heads/main $commit && test_must_fail git clone --recurse-submodules super dst 2>err && test_i18ngrep "sub " err diff --git a/t/t7501-commit-basic-functionality.sh b/t/t7501-commit-basic-functionality.sh index 110b4bf459..0f936182e4 100755 --- a/t/t7501-commit-basic-functionality.sh +++ b/t/t7501-commit-basic-functionality.sh @@ -7,6 +7,9 @@ # signoff test_description='git commit' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY/diff-lib.sh" @@ -603,7 +606,7 @@ test_expect_success 'same tree (merge and amend merge)' ' echo zero >zero && git add zero && git commit -m "add zero" && - git checkout master && + git checkout main && git merge -s ours side -m "empty ok" && git diff HEAD^ HEAD >actual && diff --git a/t/t7502-commit-porcelain.sh b/t/t7502-commit-porcelain.sh index 14c92e4c25..e5332adc9a 100755 --- a/t/t7502-commit-porcelain.sh +++ b/t/t7502-commit-porcelain.sh @@ -2,6 +2,9 @@ test_description='git commit porcelain-ish' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh commit_msg_is () { @@ -76,7 +79,7 @@ test_expect_success 'output summary format for merges' ' output_tests_cleanup() { # this is needed for "do not fire editor in the presence of conflicts" - git checkout master && + git checkout main && # this is needed for the "partial removal" test to pass git rm file1 && @@ -440,7 +443,7 @@ test_expect_success 'do not fire editor in the presence of conflicts' ' git add g && git commit -m "add g" && git branch second && - echo master >g && + echo main >g && echo g >h && git add g h && git commit -m "modify g and add h" && @@ -449,7 +452,7 @@ test_expect_success 'do not fire editor in the presence of conflicts' ' git add g && git commit -m second && # Must fail due to conflict - test_must_fail git cherry-pick -n master && + test_must_fail git cherry-pick -n main && echo "editor not started" >.git/result && ( GIT_EDITOR="\"$(pwd)/.git/FAKE_EDITOR\"" && @@ -478,9 +481,9 @@ git reset -q --hard test_expect_success 'Hand committing of a redundant merge removes dups' ' - git rev-parse second master >expect && - test_must_fail git merge second master && - git checkout master g && + git rev-parse second main >expect && + test_must_fail git merge second main && + git checkout main g && EDITOR=: git commit -a && git cat-file commit HEAD >raw && sed -n -e "s/^parent //p" -e "/^$/q" raw >actual && diff --git a/t/t7503-pre-commit-and-pre-merge-commit-hooks.sh b/t/t7503-pre-commit-and-pre-merge-commit-hooks.sh index b3485450a2..606d8d0f08 100755 --- a/t/t7503-pre-commit-and-pre-merge-commit-hooks.sh +++ b/t/t7503-pre-commit-and-pre-merge-commit-hooks.sh @@ -2,6 +2,9 @@ test_description='pre-commit and pre-merge-commit hooks' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh HOOKDIR="$(git rev-parse --git-dir)/hooks" @@ -44,16 +47,16 @@ test_expect_success 'root commit' ' git add foo && git commit -m "make it non-ff" && git branch side-orig side && - git checkout master + git checkout main ' test_expect_success 'setup conflicting branches' ' - test_when_finished "git checkout master" && - git checkout -b conflicting-a master && + test_when_finished "git checkout main" && + git checkout -b conflicting-a main && echo a >conflicting && git add conflicting && git commit -m conflicting-a && - git checkout -b conflicting-b master && + git checkout -b conflicting-b main && echo b >conflicting && git add conflicting && git commit -m conflicting-b @@ -71,8 +74,8 @@ test_expect_success 'with no hook (merge)' ' test_when_finished "rm -f actual_hooks" && git branch -f side side-orig && git checkout side && - git merge -m "merge master" master && - git checkout master && + git merge -m "merge main" main && + git checkout main && test_path_is_missing actual_hooks ' @@ -88,8 +91,8 @@ test_expect_success '--no-verify with no hook (merge)' ' test_when_finished "rm -f actual_hooks" && git branch -f side side-orig && git checkout side && - git merge --no-verify -m "merge master" master && - git checkout master && + git merge --no-verify -m "merge main" main && + git checkout main && test_path_is_missing actual_hooks ' @@ -108,15 +111,15 @@ test_expect_success 'with succeeding hook (merge)' ' cp "$HOOKDIR/success.sample" "$PREMERGE" && echo "$PREMERGE" >expected_hooks && git checkout side && - git merge -m "merge master" master && - git checkout master && + git merge -m "merge main" main && + git checkout main && test_cmp expected_hooks actual_hooks ' test_expect_success 'automatic merge fails; both hooks are available' ' test_when_finished "rm -f \"$PREMERGE\" \"$PRECOMMIT\"" && test_when_finished "rm -f expected_hooks actual_hooks" && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && cp "$HOOKDIR/success.sample" "$PREMERGE" && cp "$HOOKDIR/success.sample" "$PRECOMMIT" && @@ -145,8 +148,8 @@ test_expect_success '--no-verify with succeeding hook (merge)' ' cp "$HOOKDIR/success.sample" "$PREMERGE" && git branch -f side side-orig && git checkout side && - git merge --no-verify -m "merge master" master && - git checkout master && + git merge --no-verify -m "merge main" main && + git checkout main && test_path_is_missing actual_hooks ' @@ -174,8 +177,8 @@ test_expect_success 'with failing hook (merge)' ' cp "$HOOKDIR/fail.sample" "$PREMERGE" && echo "$PREMERGE" >expected_hooks && git checkout side && - test_must_fail git merge -m "merge master" master && - git checkout master && + test_must_fail git merge -m "merge main" main && + git checkout main && test_cmp expected_hooks actual_hooks ' @@ -184,8 +187,8 @@ test_expect_success '--no-verify with failing hook (merge)' ' cp "$HOOKDIR/fail.sample" "$PREMERGE" && git branch -f side side-orig && git checkout side && - git merge --no-verify -m "merge master" master && - git checkout master && + git merge --no-verify -m "merge main" main && + git checkout main && test_path_is_missing actual_hooks ' @@ -212,8 +215,8 @@ test_expect_success POSIXPERM 'with non-executable hook (merge)' ' cp "$HOOKDIR/non-exec.sample" "$PREMERGE" && git branch -f side side-orig && git checkout side && - git merge -m "merge master" master && - git checkout master && + git merge -m "merge main" main && + git checkout main && test_path_is_missing actual_hooks ' @@ -222,8 +225,8 @@ test_expect_success POSIXPERM '--no-verify with non-executable hook (merge)' ' cp "$HOOKDIR/non-exec.sample" "$PREMERGE" && git branch -f side side-orig && git checkout side && - git merge --no-verify -m "merge master" master && - git checkout master && + git merge --no-verify -m "merge main" main && + git checkout main && test_path_is_missing actual_hooks ' diff --git a/t/t7504-commit-msg-hook.sh b/t/t7504-commit-msg-hook.sh index 31b9c6a2c1..4e7592522a 100755 --- a/t/t7504-commit-msg-hook.sh +++ b/t/t7504-commit-msg-hook.sh @@ -2,6 +2,9 @@ test_description='commit-msg hook' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'with no hook' ' @@ -142,12 +145,12 @@ test_expect_success '--no-verify with failing hook (editor)' ' test_expect_success 'merge fails with failing hook' ' test_when_finished "git branch -D newbranch" && - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git checkout --orphan newbranch && : >file2 && git add file2 && git commit --no-verify file2 -m in-side-branch && - test_must_fail git merge --allow-unrelated-histories master && + test_must_fail git merge --allow-unrelated-histories main && commit_msg_is "in-side-branch" # HEAD before merge ' @@ -155,14 +158,14 @@ test_expect_success 'merge fails with failing hook' ' test_expect_success 'merge bypasses failing hook with --no-verify' ' test_when_finished "git branch -D newbranch" && - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git checkout --orphan newbranch && git rm -f file && : >file2 && git add file2 && git commit --no-verify file2 -m in-side-branch && - git merge --no-verify --allow-unrelated-histories master && - commit_msg_is "Merge branch '\''master'\'' into newbranch" + git merge --no-verify --allow-unrelated-histories main && + commit_msg_is "Merge branch '\''main'\'' into newbranch" ' @@ -248,28 +251,28 @@ test_expect_success "hook doesn't edit commit message (editor)" ' test_expect_success 'hook called in git-merge picks up commit message' ' test_when_finished "git branch -D newbranch" && - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git checkout --orphan newbranch && git rm -f file && : >file2 && git add file2 && git commit --no-verify file2 -m in-side-branch && - git merge --allow-unrelated-histories master && + git merge --allow-unrelated-histories main && commit_msg_is "new message" ' test_expect_failure 'merge --continue remembers --no-verify' ' test_when_finished "git branch -D newbranch" && - test_when_finished "git checkout -f master" && - git checkout master && + test_when_finished "git checkout -f main" && + git checkout main && echo a >file2 && git add file2 && - git commit --no-verify -m "add file2 to master" && - git checkout -b newbranch master^ && + git commit --no-verify -m "add file2 to main" && + git checkout -b newbranch main^ && echo b >file2 && git add file2 && git commit --no-verify file2 -m in-side-branch && - git merge --no-verify -m not-rewritten-by-hook master && + git merge --no-verify -m not-rewritten-by-hook main && # resolve conflict: echo c >file2 && git add file2 && diff --git a/t/t7505-prepare-commit-msg-hook.sh b/t/t7505-prepare-commit-msg-hook.sh index 94f85cdf83..321b4bc0fc 100755 --- a/t/t7505-prepare-commit-msg-hook.sh +++ b/t/t7505-prepare-commit-msg-hook.sh @@ -2,6 +2,9 @@ test_description='prepare-commit-msg hook' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'set up commits for rebasing' ' @@ -15,7 +18,7 @@ test_expect_success 'set up commits for rebasing' ' do test_commit rebase-$i c $i done && - git checkout master && + git checkout main && cat >rebase-todo <<-EOF pick $(git rev-parse rebase-a) @@ -190,7 +193,7 @@ test_expect_success 'with hook (-c)' ' test_expect_success 'with hook (merge)' ' - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git checkout -B other HEAD@{1} && echo "more" >>file && git add file && @@ -202,7 +205,7 @@ test_expect_success 'with hook (merge)' ' test_expect_success 'with hook and editor (merge)' ' - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git checkout -B other HEAD@{1} && echo "more" >>file && git add file && @@ -218,7 +221,7 @@ test_rebase () { test_expect_$expect C_LOCALE_OUTPUT "with hook (rebase ${mode:--i})" ' test_when_finished "\ git rebase --abort - git checkout -f master + git checkout -f main git branch -D tmp" && git checkout -b tmp rebase-me && GIT_SEQUENCE_EDITOR="cp rebase-todo" && @@ -250,14 +253,14 @@ test_rebase success test_have_prereq !REBASE_P || test_rebase success -p test_expect_success 'with hook (cherry-pick)' ' - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git checkout -B other b && git cherry-pick rebase-1 && test "$(git log -1 --pretty=format:%s)" = "message (no editor)" ' test_expect_success 'with hook and editor (cherry-pick)' ' - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git checkout -B other b && git cherry-pick -e rebase-1 && test "$(git log -1 --pretty=format:%s)" = merge @@ -270,7 +273,7 @@ EOF test_expect_success 'with failing hook' ' - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && head=$(git rev-parse HEAD) && echo "more" >> file && git add file && @@ -280,7 +283,7 @@ test_expect_success 'with failing hook' ' test_expect_success 'with failing hook (--no-verify)' ' - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && head=$(git rev-parse HEAD) && echo "more" >> file && git add file && @@ -290,7 +293,7 @@ test_expect_success 'with failing hook (--no-verify)' ' test_expect_success 'with failing hook (merge)' ' - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git checkout -B other HEAD@{1} && echo "more" >> file && git add file && @@ -305,7 +308,7 @@ test_expect_success 'with failing hook (merge)' ' ' test_expect_success C_LOCALE_OUTPUT 'with failing hook (cherry-pick)' ' - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git checkout -B other b && test_must_fail git cherry-pick rebase-1 2>actual && test $(grep -c prepare-commit-msg actual) = 1 diff --git a/t/t7508-status.sh b/t/t7508-status.sh index 963fed6821..d01aacb66b 100755 --- a/t/t7508-status.sh +++ b/t/t7508-status.sh @@ -37,11 +37,11 @@ test_expect_success 'create upstream branch' ' git checkout -b upstream && test_commit upstream1 && test_commit upstream2 && - # leave the first commit on master as root because several + # leave the first commit on main as root because several # tests depend on this case; for our upstream we only # care about commit counts anyway, so a totally divergent # history is OK - git checkout --orphan master + git checkout --orphan main ' test_expect_success 'setup' ' @@ -88,7 +88,7 @@ EOF test_expect_success 'status --column' ' cat >expect <<\EOF && -# On branch master +# On branch main # Your branch and '\''upstream'\'' have diverged, # and have 1 and 2 different commits each, respectively. # (use "git pull" to merge the remote branch into yours) @@ -119,7 +119,7 @@ test_expect_success 'status --column status.displayCommentPrefix=false' ' ' cat >expect <<\EOF -# On branch master +# On branch main # Your branch and 'upstream' have diverged, # and have 1 and 2 different commits each, respectively. # (use "git pull" to merge the remote branch into yours) @@ -193,7 +193,7 @@ test_expect_success 'commit ignores status.displayCommentPrefix=false in COMMIT_ ' cat >expect <<\EOF -On branch master +On branch main Your branch and 'upstream' have diverged, and have 1 and 2 different commits each, respectively. @@ -266,7 +266,7 @@ test_expect_success 'status with gitignore' ' test_cmp expect output && cat >expect <<\EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -331,7 +331,7 @@ test_expect_success 'status with gitignore (nothing untracked)' ' test_cmp expect output && cat >expect <<\EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -368,7 +368,7 @@ output* EOF cat >expect <<\EOF -## master...upstream [ahead 1, behind 2] +## main...upstream [ahead 1, behind 2] M dir1/modified A dir2/added ?? dir1/untracked @@ -401,7 +401,7 @@ test_expect_success 'setup dir3' ' test_expect_success 'status -uno' ' cat >expect <<EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -429,7 +429,7 @@ test_expect_success 'status (status.showUntrackedFiles no)' ' test_expect_success 'status -uno (advice.statusHints false)' ' cat >expect <<EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. @@ -463,7 +463,7 @@ test_expect_success 'status -s (status.showUntrackedFiles no)' ' test_expect_success 'status -unormal' ' cat >expect <<EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -518,7 +518,7 @@ test_expect_success 'status -s (status.showUntrackedFiles normal)' ' test_expect_success 'status -uall' ' cat >expect <<EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -578,7 +578,7 @@ test_expect_success 'status -s (status.showUntrackedFiles all)' ' test_expect_success 'status with relative paths' ' cat >expect <<\EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -646,7 +646,7 @@ test_expect_success 'setup unique colors' ' test_expect_success TTY 'status with color.ui' ' cat >expect <<\EOF && -On branch <GREEN>master<RESET> +On branch <GREEN>main<RESET> Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -706,7 +706,7 @@ test_expect_success TTY 'status -s with color.status' ' ' cat >expect <<\EOF -## <YELLOW>master<RESET>...<CYAN>upstream<RESET> [ahead <YELLOW>1<RESET>, behind <CYAN>2<RESET>] +## <YELLOW>main<RESET>...<CYAN>upstream<RESET> [ahead <YELLOW>1<RESET>, behind <CYAN>2<RESET>] <RED>M<RESET> dir1/modified <GREEN>A<RESET> dir2/added <BLUE>??<RESET> dir1/untracked @@ -757,7 +757,7 @@ test_expect_success 'status --porcelain respects -b' ' git status --porcelain -b >output && { - echo "## master...upstream [ahead 1, behind 2]" && + echo "## main...upstream [ahead 1, behind 2]" && cat expect } >tmp && mv tmp expect && @@ -769,7 +769,7 @@ test_expect_success 'status --porcelain respects -b' ' test_expect_success 'status without relative paths' ' cat >expect <<\EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -843,7 +843,7 @@ test_expect_success 'status -s without relative paths' ' test_expect_success 'dry-run of partial commit excluding new file in index' ' cat >expect <<EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -897,7 +897,7 @@ test_expect_success 'setup status submodule summary' ' test_expect_success 'status submodule summary is disabled by default' ' cat >expect <<EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -954,7 +954,7 @@ head=$(cd sm && git rev-parse --short=7 --verify HEAD) test_expect_success 'status submodule summary' ' cat >expect <<EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 1 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -1013,7 +1013,7 @@ test_expect_success 'status -s submodule summary' ' test_expect_success 'status submodule summary (clean submodule): commit' ' cat >expect <<EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 2 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -1061,7 +1061,7 @@ test_expect_success 'status -z implies porcelain' ' test_expect_success 'commit --dry-run submodule summary (--amend)' ' cat >expect <<EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 2 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -1113,7 +1113,7 @@ touch .gitmodules test_expect_success '--ignore-submodules=untracked suppresses submodules with untracked content' ' cat > expect << EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 2 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -1222,7 +1222,7 @@ test_expect_success '.git/config ignore=dirty suppresses submodules with modifie test_expect_success "--ignore-submodules=untracked doesn't suppress submodules with modified content" ' cat > expect << EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 2 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -1279,7 +1279,7 @@ head2=$(cd sm && git commit -q -m "2nd commit" foo && git rev-parse --short=7 -- test_expect_success "--ignore-submodules=untracked doesn't suppress submodule summary" ' cat > expect << EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 2 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -1360,7 +1360,7 @@ test_expect_success ".git/config ignore=dirty doesn't suppress submodule summary ' cat > expect << EOF -; On branch master +; On branch main ; Your branch and 'upstream' have diverged, ; and have 2 and 2 different commits each, respectively. ; (use "git pull" to merge the remote branch into yours) @@ -1408,7 +1408,7 @@ test_expect_success "status (core.commentchar with two chars with submodule summ test_expect_success "--ignore-submodules=all suppresses submodule summary" ' cat > expect << EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 2 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -1434,7 +1434,7 @@ EOF test_expect_success '.gitmodules ignore=all suppresses unstaged submodule summary' ' cat > expect << EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 2 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) @@ -1554,7 +1554,7 @@ test_expect_success 'git commit --dry-run will show a staged but ignored submodu git reset HEAD^ && git add sm && cat >expect << EOF && -On branch master +On branch main Your branch and '\''upstream'\'' have diverged, and have 2 and 2 different commits each, respectively. (use "git pull" to merge the remote branch into yours) diff --git a/t/t7509-commit-authorship.sh b/t/t7509-commit-authorship.sh index 500ab2fe72..ee6c47416e 100755 --- a/t/t7509-commit-authorship.sh +++ b/t/t7509-commit-authorship.sh @@ -18,11 +18,8 @@ message_body () { } test_expect_success '-C option copies authorship and message' ' - echo "Initial" >foo && - git add foo && - test_tick && - git commit -m "Initial Commit" --author Frigate\ \<flying@over.world\> && - git tag Initial && + test_commit --author Frigate\ \<flying@over.world\> \ + "Initial Commit" foo Initial Initial && echo "Test 1" >>foo && test_tick && git commit -a -C Initial && diff --git a/t/t7510-signed-commit.sh b/t/t7510-signed-commit.sh index 6baaa1ad91..f4bf925bdd 100755 --- a/t/t7510-signed-commit.sh +++ b/t/t7510-signed-commit.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='signed commit tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh GNUPGHOME_NOT_USED=$GNUPGHOME . "$TEST_DIRECTORY/lib-gpg.sh" @@ -25,7 +28,7 @@ test_expect_success GPG 'create signed commits' ' echo 3 >elif && git add elif && test_tick && git commit -m "third on side" && - git checkout master && + git checkout main && test_tick && git merge -S side && git tag merge && diff --git a/t/t7512-status-help.sh b/t/t7512-status-help.sh index 29518e0949..9f5e3ce793 100755 --- a/t/t7512-status-help.sh +++ b/t/t7512-status-help.sh @@ -7,6 +7,9 @@ test_description='git status advice' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-rebase.sh @@ -17,14 +20,14 @@ test_expect_success 'prepare for conflicts' ' git config --global advice.statusuoption false && test_commit init main.txt init && git branch conflicts && - test_commit on_master main.txt on_master && + test_commit on_main main.txt on_main && git checkout conflicts && test_commit on_conflicts main.txt on_conflicts ' test_expect_success 'status when conflicts unresolved' ' - test_must_fail git merge master && + test_must_fail git merge main && cat >expected <<\EOF && On branch conflicts You have unmerged paths. @@ -44,7 +47,7 @@ EOF test_expect_success 'status when conflicts resolved before commit' ' git reset --hard conflicts && - test_must_fail git merge master && + test_must_fail git merge main && echo one >main.txt && git add main.txt && cat >expected <<\EOF && @@ -63,7 +66,7 @@ EOF test_expect_success 'prepare for rebase conflicts' ' - git reset --hard master && + git reset --hard main && git checkout -b rebase_conflicts && test_commit one_rebase main.txt one && test_commit two_rebase main.txt two && @@ -118,11 +121,11 @@ EOF test_expect_success 'prepare for rebase_i_conflicts' ' - git reset --hard master && + git reset --hard main && git checkout -b rebase_i_conflicts && test_commit one_unmerge main.txt one_unmerge && git branch rebase_i_conflicts_second && - test_commit one_master main.txt one_master && + test_commit one_main main.txt one_main && git checkout rebase_i_conflicts_second && test_commit one_second main.txt one_second ' @@ -182,7 +185,7 @@ EOF test_expect_success 'status when rebasing -i in edit mode' ' - git reset --hard master && + git reset --hard main && git checkout -b rebase_i_edit && test_commit one_rebase_i main.txt one && test_commit two_rebase_i main.txt two && @@ -212,7 +215,7 @@ EOF test_expect_success 'status when splitting a commit' ' - git reset --hard master && + git reset --hard main && git checkout -b split_commit && test_commit one_split main.txt one && test_commit two_split main.txt two && @@ -251,7 +254,7 @@ EOF test_expect_success 'status after editing the last commit with --amend during a rebase -i' ' - git reset --hard master && + git reset --hard main && git checkout -b amend_last && test_commit one_amend main.txt one && test_commit two_amend main.txt two && @@ -284,7 +287,7 @@ EOF test_expect_success 'prepare for several edits' ' - git reset --hard master && + git reset --hard main && git checkout -b several_edits && test_commit one_edits main.txt one && test_commit two_edits main.txt two && @@ -593,7 +596,7 @@ EOF test_expect_success 'prepare am_session' ' - git reset --hard master && + git reset --hard main && git checkout -b am_session && test_commit one_am one.txt "one" && test_commit two_am two.txt "two" && @@ -666,7 +669,7 @@ EOF test_expect_success 'status when bisecting' ' - git reset --hard master && + git reset --hard main && git checkout -b bisect && test_commit one_bisect main.txt one && test_commit two_bisect main.txt two && @@ -689,7 +692,7 @@ EOF test_expect_success 'status when rebase --apply conflicts with statushints disabled' ' - git reset --hard master && + git reset --hard main && git checkout -b statushints_disabled && test_when_finished "git config --local advice.statushints true" && git config --local advice.statushints false && @@ -714,7 +717,7 @@ EOF test_expect_success 'prepare for cherry-pick conflicts' ' - git reset --hard master && + git reset --hard main && git checkout -b cherry_branch && test_commit one_cherry main.txt one && test_commit two_cherries main.txt two && @@ -825,7 +828,7 @@ EOF ' test_expect_success 'status while reverting commit (conflicts)' ' - git checkout master && + git checkout main && echo before >to-revert.txt && test_commit before to-revert.txt && echo old >to-revert.txt && @@ -835,7 +838,7 @@ test_expect_success 'status while reverting commit (conflicts)' ' TO_REVERT=$(git rev-parse --short HEAD^) && test_must_fail git revert $TO_REVERT && cat >expected <<EOF && -On branch master +On branch main You are currently reverting commit $TO_REVERT. (fix conflicts and run "git revert --continue") (use "git revert --skip" to skip this patch) @@ -856,7 +859,7 @@ test_expect_success 'status while reverting commit (conflicts resolved)' ' echo reverted >to-revert.txt && git add to-revert.txt && cat >expected <<EOF && -On branch master +On branch main You are currently reverting commit $TO_REVERT. (all conflicts fixed: run "git revert --continue") (use "git revert --skip" to skip this patch) @@ -875,7 +878,7 @@ EOF test_expect_success 'status after reverting commit' ' git revert --continue && cat >expected <<\EOF && -On branch master +On branch main nothing to commit (use -u to show untracked files) EOF git status --untracked-files=no >actual && @@ -889,7 +892,7 @@ test_expect_success 'status while reverting after committing conflict resolution echo reverted >to-revert.txt && git commit -a && cat >expected <<EOF && -On branch master +On branch main Revert currently in progress. (run "git revert --continue" to continue) (use "git revert --skip" to skip this patch) @@ -902,7 +905,7 @@ EOF ' test_expect_success 'prepare for different number of commits rebased' ' - git reset --hard master && + git reset --hard main && git checkout -b several_commits && test_commit one_commit main.txt one && test_commit two_commit main.txt two && diff --git a/t/t7517-per-repo-email.sh b/t/t7517-per-repo-email.sh index b2401cec3e..405420ae4d 100755 --- a/t/t7517-per-repo-email.sh +++ b/t/t7517-per-repo-email.sh @@ -6,6 +6,9 @@ test_description='per-repo forced setting of email address' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup a likely user.useConfigOnly use case' ' @@ -47,24 +50,24 @@ test_expect_success 'set up rebase scenarios' ' test_expect_success 'fast-forward rebase does not care about ident' ' git checkout -B tmp side-without-commit && - git rebase master + git rebase main ' test_expect_success 'non-fast-forward rebase refuses to write commits' ' test_when_finished "git rebase --abort || true" && git checkout -B tmp side-with-commit && - test_must_fail git rebase master + test_must_fail git rebase main ' test_expect_success 'fast-forward rebase does not care about ident (interactive)' ' git checkout -B tmp side-without-commit && - git rebase -i master + git rebase -i main ' test_expect_success 'non-fast-forward rebase refuses to write commits (interactive)' ' test_when_finished "git rebase --abort || true" && git checkout -B tmp side-with-commit && - test_must_fail git rebase -i master + test_must_fail git rebase -i main ' test_expect_success 'noop interactive rebase does not care about ident' ' @@ -75,14 +78,14 @@ test_expect_success 'noop interactive rebase does not care about ident' ' test_expect_success REBASE_P \ 'fast-forward rebase does not care about ident (preserve)' ' git checkout -B tmp side-without-commit && - git rebase -p master + git rebase -p main ' test_expect_success REBASE_P \ 'non-fast-forward rebase refuses to write commits (preserve)' ' test_when_finished "git rebase --abort || true" && git checkout -B tmp side-with-commit && - test_must_fail git rebase -p master + test_must_fail git rebase -p main ' test_expect_success 'author.name overrides user.name' ' diff --git a/t/t7600-merge.sh b/t/t7600-merge.sh index 1c85f75555..b2c1d861dc 100755 --- a/t/t7600-merge.sh +++ b/t/t7600-merge.sh @@ -14,9 +14,9 @@ Testing basic merge operations/option parsing. ! [c4] c4 ! [c5] c5 ! [c6] c6 - * [master] Merge commit 'c1' + * [main] Merge commit 'c1' -------- - - [master] Merge commit 'c1' + - [main] Merge commit 'c1' + * [c1] commit 1 + [c6] c6 + [c5] c5 @@ -26,6 +26,9 @@ Testing basic merge operations/option parsing. +++++++* [c0] commit 0 ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/lib-gpg.sh @@ -203,13 +206,13 @@ test_expect_success 'merge c0 with c1 with --ff-only' ' test_debug 'git log --graph --decorate --oneline --all' test_expect_success 'merge from unborn branch' ' - git checkout -f master && + git checkout -f main && test_might_fail git branch -D kid && echo "OBJID HEAD@{0}: initial pull" >reflog.expected && git checkout --orphan kid && - test_when_finished "git checkout -f master" && + test_when_finished "git checkout -f main" && git rm -fr . && test_tick && git merge --ff-only c1 && @@ -413,7 +416,7 @@ test_debug 'git log --graph --decorate --oneline --all' test_expect_success 'merge c1 with c2 (no-commit in config)' ' git reset --hard c1 && - test_config branch.master.mergeoptions "--no-commit" && + test_config branch.main.mergeoptions "--no-commit" && git merge c2 && verify_merge file result.1-5 && verify_head $c1 && @@ -427,7 +430,7 @@ test_expect_success 'merge c1 with c2 (log in config)' ' git merge --log c2 && git show -s --pretty=tformat:%s%n%b >expect && - test_config branch.master.mergeoptions "--log" && + test_config branch.main.mergeoptions "--log" && git reset --hard c1 && git merge c2 && git show -s --pretty=tformat:%s%n%b >actual && @@ -440,7 +443,7 @@ test_expect_success 'merge c1 with c2 (log in config gets overridden)' ' git merge c2 && git show -s --pretty=tformat:%s%n%b >expect && - test_config branch.master.mergeoptions "--no-log" && + test_config branch.main.mergeoptions "--no-log" && test_config merge.log "true" && git reset --hard c1 && git merge c2 && @@ -451,7 +454,7 @@ test_expect_success 'merge c1 with c2 (log in config gets overridden)' ' test_expect_success 'merge c1 with c2 (squash in config)' ' git reset --hard c1 && - test_config branch.master.mergeoptions "--squash" && + test_config branch.main.mergeoptions "--squash" && git merge c2 && verify_merge file result.1-5 && verify_head $c1 && @@ -463,7 +466,7 @@ test_debug 'git log --graph --decorate --oneline --all' test_expect_success 'override config option -n with --summary' ' git reset --hard c1 && - test_config branch.master.mergeoptions "-n" && + test_config branch.main.mergeoptions "-n" && test_tick && git merge --summary c2 >diffstat.txt && verify_merge file result.1-5 msg.1-5 && @@ -477,7 +480,7 @@ test_expect_success 'override config option -n with --summary' ' test_expect_success 'override config option -n with --stat' ' git reset --hard c1 && - test_config branch.master.mergeoptions "-n" && + test_config branch.main.mergeoptions "-n" && test_tick && git merge --stat c2 >diffstat.txt && verify_merge file result.1-5 msg.1-5 && @@ -493,7 +496,7 @@ test_debug 'git log --graph --decorate --oneline --all' test_expect_success 'override config option --stat' ' git reset --hard c1 && - test_config branch.master.mergeoptions "--stat" && + test_config branch.main.mergeoptions "--stat" && test_tick && git merge -n c2 >diffstat.txt && verify_merge file result.1-5 msg.1-5 && @@ -509,7 +512,7 @@ test_debug 'git log --graph --decorate --oneline --all' test_expect_success 'merge c1 with c2 (override --no-commit)' ' git reset --hard c1 && - test_config branch.master.mergeoptions "--no-commit" && + test_config branch.main.mergeoptions "--no-commit" && test_tick && git merge --commit c2 && verify_merge file result.1-5 msg.1-5 && @@ -520,7 +523,7 @@ test_debug 'git log --graph --decorate --oneline --all' test_expect_success 'merge c1 with c2 (override --squash)' ' git reset --hard c1 && - test_config branch.master.mergeoptions "--squash" && + test_config branch.main.mergeoptions "--squash" && test_tick && git merge --no-squash c2 && verify_merge file result.1-5 msg.1-5 && @@ -549,9 +552,9 @@ test_expect_success 'merge c0 with c1 (merge.ff=false)' ' ' test_debug 'git log --graph --decorate --oneline --all' -test_expect_success 'combine branch.master.mergeoptions with merge.ff' ' +test_expect_success 'combine branch.main.mergeoptions with merge.ff' ' git reset --hard c0 && - test_config branch.master.mergeoptions "--ff" && + test_config branch.main.mergeoptions "--ff" && test_config merge.ff "false" && test_tick && git merge c1 && @@ -593,7 +596,7 @@ test_expect_success 'option --no-ff overrides merge.ff=only config' ' test_expect_success 'merge c0 with c1 (ff overrides no-ff)' ' git reset --hard c0 && - test_config branch.master.mergeoptions "--no-ff" && + test_config branch.main.mergeoptions "--no-ff" && git merge --ff c1 && verify_merge file result.1 && verify_head $c1 @@ -606,7 +609,7 @@ test_expect_success 'merge log message' ' test_must_be_empty msg.act && git reset --hard c0 && - test_config branch.master.mergeoptions "--no-ff" && + test_config branch.main.mergeoptions "--no-ff" && git merge --no-log c2 && git show -s --pretty=format:%b HEAD >msg.act && test_must_be_empty msg.act && @@ -950,10 +953,10 @@ test_expect_success 'set up mod-256 conflict scenario' ' git add file && git commit -m base && - # one side changes the first line of each to "master" - sed s/-1/-master/ file >tmp && + # one side changes the first line of each to "main" + sed s/-1/-main/ file >tmp && mv tmp file && - git commit -am master && + git commit -am main && # and the other to "side"; merging the two will # yield 256 separate conflicts @@ -965,12 +968,12 @@ test_expect_success 'set up mod-256 conflict scenario' ' test_expect_success 'merge detects mod-256 conflicts (recursive)' ' git reset --hard && - test_must_fail git merge -s recursive master + test_must_fail git merge -s recursive main ' test_expect_success 'merge detects mod-256 conflicts (resolve)' ' git reset --hard && - test_must_fail git merge -s resolve master + test_must_fail git merge -s resolve main ' test_expect_success 'merge nothing into void' ' diff --git a/t/t7601-merge-pull-config.sh b/t/t7601-merge-pull-config.sh index 6774e9d86f..52e8ccc933 100755 --- a/t/t7601-merge-pull-config.sh +++ b/t/t7601-merge-pull-config.sh @@ -29,11 +29,8 @@ test_expect_success 'setup' ' test_expect_success 'pull.rebase not set' ' git reset --hard c0 && - git -c color.advice=always pull . c1 2>err && - test_decode_color <err >decoded && - test_i18ngrep "<YELLOW>hint: " decoded && - test_i18ngrep "Pulling without specifying how to reconcile" decoded - + git pull . c1 2>err && + test_i18ngrep ! "Pulling without specifying how to reconcile" err ' test_expect_success 'pull.rebase not set and pull.ff=true' ' @@ -87,6 +84,65 @@ test_expect_success 'pull.rebase not set and --ff-only given' ' test_i18ngrep ! "Pulling without specifying how to reconcile" err ' +test_expect_success 'pull.rebase not set (not-fast-forward)' ' + git reset --hard c2 && + git -c color.advice=always pull . c1 2>err && + test_decode_color <err >decoded && + test_i18ngrep "<YELLOW>hint: " decoded && + test_i18ngrep "Pulling without specifying how to reconcile" decoded +' + +test_expect_success 'pull.rebase not set and pull.ff=true (not-fast-forward)' ' + git reset --hard c2 && + test_config pull.ff true && + git pull . c1 2>err && + test_i18ngrep ! "Pulling without specifying how to reconcile" err +' + +test_expect_success 'pull.rebase not set and pull.ff=false (not-fast-forward)' ' + git reset --hard c2 && + test_config pull.ff false && + git pull . c1 2>err && + test_i18ngrep ! "Pulling without specifying how to reconcile" err +' + +test_expect_success 'pull.rebase not set and pull.ff=only (not-fast-forward)' ' + git reset --hard c2 && + test_config pull.ff only && + test_must_fail git pull . c1 2>err && + test_i18ngrep ! "Pulling without specifying how to reconcile" err +' + +test_expect_success 'pull.rebase not set and --rebase given (not-fast-forward)' ' + git reset --hard c2 && + git pull --rebase . c1 2>err && + test_i18ngrep ! "Pulling without specifying how to reconcile" err +' + +test_expect_success 'pull.rebase not set and --no-rebase given (not-fast-forward)' ' + git reset --hard c2 && + git pull --no-rebase . c1 2>err && + test_i18ngrep ! "Pulling without specifying how to reconcile" err +' + +test_expect_success 'pull.rebase not set and --ff given (not-fast-forward)' ' + git reset --hard c2 && + git pull --ff . c1 2>err && + test_i18ngrep ! "Pulling without specifying how to reconcile" err +' + +test_expect_success 'pull.rebase not set and --no-ff given (not-fast-forward)' ' + git reset --hard c2 && + git pull --no-ff . c1 2>err && + test_i18ngrep ! "Pulling without specifying how to reconcile" err +' + +test_expect_success 'pull.rebase not set and --ff-only given (not-fast-forward)' ' + git reset --hard c2 && + test_must_fail git pull --ff-only . c1 2>err && + test_i18ngrep ! "Pulling without specifying how to reconcile" err +' + test_expect_success 'merge c1 with c2' ' git reset --hard c1 && test -f c0.c && diff --git a/t/t7606-merge-custom.sh b/t/t7606-merge-custom.sh index 8e8c4d7246..81fb7c474c 100755 --- a/t/t7606-merge-custom.sh +++ b/t/t7606-merge-custom.sh @@ -4,7 +4,7 @@ test_description="git merge Testing a custom strategy. -* (HEAD, master) Merge commit 'c3' +* (HEAD, main) Merge commit 'c3' |\ | * (tag: c3) c3 * | (tag: c1) c1 diff --git a/t/t7608-merge-messages.sh b/t/t7608-merge-messages.sh index 8e7e0a5865..0b908ab2e7 100755 --- a/t/t7608-merge-messages.sh +++ b/t/t7608-merge-messages.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='test auto-generated merge messages' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh check_oneline() { @@ -10,51 +13,51 @@ check_oneline() { } test_expect_success 'merge local branch' ' - test_commit master-1 && + test_commit main-1 && git checkout -b local-branch && test_commit branch-1 && - git checkout master && - test_commit master-2 && + git checkout main && + test_commit main-2 && git merge local-branch && check_oneline "Merge branch Qlocal-branchQ" ' test_expect_success 'merge octopus branches' ' - git checkout -b octopus-a master && + git checkout -b octopus-a main && test_commit octopus-1 && - git checkout -b octopus-b master && + git checkout -b octopus-b main && test_commit octopus-2 && - git checkout master && + git checkout main && git merge octopus-a octopus-b && check_oneline "Merge branches Qoctopus-aQ and Qoctopus-bQ" ' test_expect_success 'merge tag' ' - git checkout -b tag-branch master && + git checkout -b tag-branch main && test_commit tag-1 && - git checkout master && - test_commit master-3 && + git checkout main && + test_commit main-3 && git merge tag-1 && check_oneline "Merge tag Qtag-1Q" ' test_expect_success 'ambiguous tag' ' - git checkout -b ambiguous master && + git checkout -b ambiguous main && test_commit ambiguous && - git checkout master && - test_commit master-4 && + git checkout main && + test_commit main-4 && git merge ambiguous && check_oneline "Merge tag QambiguousQ" ' test_expect_success 'remote-tracking branch' ' - git checkout -b remote master && + git checkout -b remote main && test_commit remote-1 && - git update-ref refs/remotes/origin/master remote && - git checkout master && - test_commit master-5 && - git merge origin/master && - check_oneline "Merge remote-tracking branch Qorigin/masterQ" + git update-ref refs/remotes/origin/main remote && + git checkout main && + test_commit main-5 && + git merge origin/main && + check_oneline "Merge remote-tracking branch Qorigin/mainQ" ' test_done diff --git a/t/t7610-mergetool.sh b/t/t7610-mergetool.sh index 70afdd06fa..04b0095072 100755 --- a/t/t7610-mergetool.sh +++ b/t/t7610-mergetool.sh @@ -7,22 +7,25 @@ test_description='git mergetool Testing basic merge tool invocation' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # All the mergetool test work by checking out a temporary branch based -# off 'branch1' and then merging in master and checking the results of +# off 'branch1' and then merging in main and checking the results of # running mergetool test_expect_success 'setup' ' test_config rerere.enabled true && - echo master >file1 && - echo master spaced >"spaced name" && - echo master file11 >file11 && - echo master file12 >file12 && - echo master file13 >file13 && - echo master file14 >file14 && + echo main >file1 && + echo main spaced >"spaced name" && + echo main file11 >file11 && + echo main file12 >file12 && + echo main file13 >file13 && + echo main file14 >file14 && mkdir subdir && - echo master sub >subdir/file3 && + echo main sub >subdir/file3 && test_create_repo submod && ( cd submod && @@ -34,7 +37,7 @@ test_expect_success 'setup' ' git add file1 "spaced name" file1[1-4] subdir/file3 .gitmodules submod && git commit -m "add initial versions" && - git checkout -b branch1 master && + git checkout -b branch1 main && git submodule update -N && echo branch1 change >file1 && echo branch1 newfile >file2 && @@ -71,39 +74,39 @@ test_expect_success 'setup' ' test_write_lines one two 3 >c/c/file.txt && git commit -a -m"move to c" && - git checkout -b stash1 master && + git checkout -b stash1 main && echo stash1 change file11 >file11 && git add file11 && git commit -m "stash1 changes" && - git checkout -b stash2 master && + git checkout -b stash2 main && echo stash2 change file11 >file11 && git add file11 && git commit -m "stash2 changes" && - git checkout master && + git checkout main && git submodule update -N && - echo master updated >file1 && - echo master new >file2 && - echo master updated spaced >"spaced name" && - echo master both added >both && - echo master updated file12 >file12 && - echo master updated file14 >file14 && - echo master new sub >subdir/file3 && + echo main updated >file1 && + echo main new >file2 && + echo main updated spaced >"spaced name" && + echo main both added >both && + echo main updated file12 >file12 && + echo main updated file14 >file14 && + echo main new sub >subdir/file3 && ( cd submod && - echo master submodule >bar && + echo main submodule >bar && git add bar && - git commit -m "Add bar on master" && - git checkout -b submod-master + git commit -m "Add bar on main" && + git checkout -b submod-main ) && git add file1 "spaced name" file12 file14 file2 subdir/file3 submod && git add both && git rm file11 && - git commit -m "master updates" && + git commit -m "main updates" && git clean -fdx && - git checkout -b order-file-start master && + git checkout -b order-file-start main && echo start >a && echo start >b && git add a b && @@ -130,7 +133,7 @@ test_expect_success 'custom mergetool' ' test_when_finished "git reset --hard" && git checkout -b test$test_count branch1 && git submodule update -N && - test_must_fail git merge master && + test_must_fail git merge main && yes "" | git mergetool both && yes "" | git mergetool file1 file1 && yes "" | git mergetool file2 "spaced name" && @@ -138,11 +141,11 @@ test_expect_success 'custom mergetool' ' yes "d" | git mergetool file11 && yes "d" | git mergetool file12 && yes "l" | git mergetool submod && - echo "master updated" >expect && + echo "main updated" >expect && test_cmp expect file1 && - echo "master new" >expect && + echo "main new" >expect && test_cmp expect file2 && - echo "master new sub" >expect && + echo "main new sub" >expect && test_cmp expect subdir/file3 && echo "branch1 submodule" >expect && test_cmp expect submod/bar && @@ -156,7 +159,7 @@ test_expect_success 'gui mergetool' ' test_when_finished "git reset --hard" && git checkout -b test$test_count branch1 && git submodule update -N && - test_must_fail git merge master && + test_must_fail git merge main && yes "" | git mergetool --gui both && yes "" | git mergetool -g file1 file1 && yes "" | git mergetool --gui file2 "spaced name" && @@ -164,11 +167,11 @@ test_expect_success 'gui mergetool' ' yes "d" | git mergetool --gui file11 && yes "d" | git mergetool --gui file12 && yes "l" | git mergetool --gui submod && - echo "gui master updated" >expect && + echo "gui main updated" >expect && test_cmp expect file1 && - echo "gui master new" >expect && + echo "gui main new" >expect && test_cmp expect file2 && - echo "gui master new sub" >expect && + echo "gui main new sub" >expect && test_cmp expect subdir/file3 && echo "branch1 submodule" >expect && test_cmp expect submod/bar && @@ -179,7 +182,7 @@ test_expect_success 'gui mergetool without merge.guitool set falls back to merge test_when_finished "git reset --hard" && git checkout -b test$test_count branch1 && git submodule update -N && - test_must_fail git merge master && + test_must_fail git merge main && yes "" | git mergetool --gui both && yes "" | git mergetool -g file1 file1 && yes "" | git mergetool --gui file2 "spaced name" && @@ -187,11 +190,11 @@ test_expect_success 'gui mergetool without merge.guitool set falls back to merge yes "d" | git mergetool --gui file11 && yes "d" | git mergetool --gui file12 && yes "l" | git mergetool --gui submod && - echo "master updated" >expect && + echo "main updated" >expect && test_cmp expect file1 && - echo "master new" >expect && + echo "main new" >expect && test_cmp expect file2 && - echo "master new sub" >expect && + echo "main new sub" >expect && test_cmp expect subdir/file3 && echo "branch1 submodule" >expect && test_cmp expect submod/bar && @@ -206,7 +209,7 @@ test_expect_success 'mergetool crlf' ' # test_when_finished is LIFO.) test_config core.autocrlf true && git checkout -b test$test_count branch1 && - test_must_fail git merge master && + test_must_fail git merge main && yes "" | git mergetool file1 && yes "" | git mergetool file2 && yes "" | git mergetool "spaced name" && @@ -215,11 +218,11 @@ test_expect_success 'mergetool crlf' ' yes "d" | git mergetool file11 && yes "d" | git mergetool file12 && yes "r" | git mergetool submod && - test "$(printf x | cat file1 -)" = "$(printf "master updated\r\nx")" && - test "$(printf x | cat file2 -)" = "$(printf "master new\r\nx")" && - test "$(printf x | cat subdir/file3 -)" = "$(printf "master new sub\r\nx")" && + test "$(printf x | cat file1 -)" = "$(printf "main updated\r\nx")" && + test "$(printf x | cat file2 -)" = "$(printf "main new\r\nx")" && + test "$(printf x | cat subdir/file3 -)" = "$(printf "main new sub\r\nx")" && git submodule update -N && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect submod/bar && git commit -m "branch1 resolved with mergetool - autocrlf" ' @@ -230,9 +233,9 @@ test_expect_success 'mergetool in subdir' ' git submodule update -N && ( cd subdir && - test_must_fail git merge master && + test_must_fail git merge main && yes "" | git mergetool file3 && - echo "master new sub" >expect && + echo "main new sub" >expect && test_cmp expect file3 ) ' @@ -243,7 +246,7 @@ test_expect_success 'mergetool on file in parent dir' ' git submodule update -N && ( cd subdir && - test_must_fail git merge master && + test_must_fail git merge main && yes "" | git mergetool file3 && yes "" | git mergetool ../file1 && yes "" | git mergetool ../file2 ../spaced\ name && @@ -251,9 +254,9 @@ test_expect_success 'mergetool on file in parent dir' ' yes "d" | git mergetool ../file11 && yes "d" | git mergetool ../file12 && yes "l" | git mergetool ../submod && - echo "master updated" >expect && + echo "main updated" >expect && test_cmp expect ../file1 && - echo "master new" >expect && + echo "main new" >expect && test_cmp expect ../file2 && echo "branch1 submodule" >expect && test_cmp expect ../submod/bar && @@ -265,7 +268,7 @@ test_expect_success 'mergetool skips autoresolved' ' test_when_finished "git reset --hard" && git checkout -b test$test_count branch1 && git submodule update -N && - test_must_fail git merge master && + test_must_fail git merge main && test -n "$(git ls-files -u)" && yes "d" | git mergetool file11 && yes "d" | git mergetool file12 && @@ -280,17 +283,17 @@ test_expect_success 'mergetool merges all from subdir (rerere disabled)' ' test_config rerere.enabled false && ( cd subdir && - test_must_fail git merge master && + test_must_fail git merge main && yes "r" | git mergetool ../submod && yes "d" "d" | git mergetool --no-prompt && - echo "master updated" >expect && + echo "main updated" >expect && test_cmp expect ../file1 && - echo "master new" >expect && + echo "main new" >expect && test_cmp expect ../file2 && - echo "master new sub" >expect && + echo "main new sub" >expect && test_cmp expect file3 && ( cd .. && git submodule update -N ) && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect ../submod/bar && git commit -m "branch2 resolved by mergetool from subdir" ) @@ -303,17 +306,17 @@ test_expect_success 'mergetool merges all from subdir (rerere enabled)' ' rm -rf .git/rr-cache && ( cd subdir && - test_must_fail git merge master && + test_must_fail git merge main && yes "r" | git mergetool ../submod && yes "d" "d" | git mergetool --no-prompt && - echo "master updated" >expect && + echo "main updated" >expect && test_cmp expect ../file1 && - echo "master new" >expect && + echo "main new" >expect && test_cmp expect ../file2 && - echo "master new sub" >expect && + echo "main new sub" >expect && test_cmp expect file3 && ( cd .. && git submodule update -N ) && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect ../submod/bar && git commit -m "branch2 resolved by mergetool from subdir" ) @@ -325,7 +328,7 @@ test_expect_success 'mergetool skips resolved paths when rerere is active' ' rm -rf .git/rr-cache && git checkout -b test$test_count branch1 && git submodule update -N && - test_must_fail git merge master && + test_must_fail git merge main && yes "l" | git mergetool --no-prompt submod && yes "d" "d" | git mergetool --no-prompt && git submodule update -N && @@ -366,11 +369,11 @@ test_expect_success 'mergetool takes partial path' ' test_config rerere.enabled false && git checkout -b test$test_count branch1 && git submodule update -N && - test_must_fail git merge master && + test_must_fail git merge main && yes "" | git mergetool subdir && - echo "master new sub" >expect && + echo "main new sub" >expect && test_cmp expect subdir/file3 ' @@ -434,7 +437,7 @@ test_expect_success 'deleted vs modified submodule' ' git rm --cached submod && git commit -m "Submodule deleted from branch" && git checkout -b test$test_count.a test$test_count && - test_must_fail git merge master && + test_must_fail git merge main && test -n "$(git ls-files -u)" && yes "" | git mergetool file1 file2 spaced\ name subdir/file3 && yes "" | git mergetool both && @@ -444,7 +447,7 @@ test_expect_success 'deleted vs modified submodule' ' echo "branch1 submodule" >expect && test_cmp expect submod/bar && git submodule update -N && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect submod/bar && output="$(git mergetool --no-prompt)" && test "$output" = "No files need merging" && @@ -453,7 +456,7 @@ test_expect_success 'deleted vs modified submodule' ' mv submod submod-movedaside && git checkout -b test$test_count.b test$test_count && git submodule update -N && - test_must_fail git merge master && + test_must_fail git merge main && test -n "$(git ls-files -u)" && yes "" | git mergetool file1 file2 spaced\ name subdir/file3 && yes "" | git mergetool both && @@ -465,7 +468,7 @@ test_expect_success 'deleted vs modified submodule' ' git commit -m "Merge resolved by deleting module" && mv submod-movedaside submod && - git checkout -b test$test_count.c master && + git checkout -b test$test_count.c main && git submodule update -N && test_must_fail git merge test$test_count && test -n "$(git ls-files -u)" && @@ -481,7 +484,7 @@ test_expect_success 'deleted vs modified submodule' ' git commit -m "Merge resolved by deleting module" && mv submod.orig submod && - git checkout -b test$test_count.d master && + git checkout -b test$test_count.d main && git submodule update -N && test_must_fail git merge test$test_count && test -n "$(git ls-files -u)" && @@ -489,10 +492,10 @@ test_expect_success 'deleted vs modified submodule' ' yes "" | git mergetool both && yes "d" | git mergetool file11 file12 && yes "l" | git mergetool submod && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect submod/bar && git submodule update -N && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect submod/bar && output="$(git mergetool --no-prompt)" && test "$output" = "No files need merging" && @@ -509,7 +512,7 @@ test_expect_success 'file vs modified submodule' ' git add submod && git commit -m "Submodule path becomes file" && git checkout -b test$test_count.a branch1 && - test_must_fail git merge master && + test_must_fail git merge main && test -n "$(git ls-files -u)" && yes "" | git mergetool file1 file2 spaced\ name subdir/file3 && yes "" | git mergetool both && @@ -519,7 +522,7 @@ test_expect_success 'file vs modified submodule' ' echo "branch1 submodule" >expect && test_cmp expect submod/bar && git submodule update -N && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect submod/bar && output="$(git mergetool --no-prompt)" && test "$output" = "No files need merging" && @@ -527,7 +530,7 @@ test_expect_success 'file vs modified submodule' ' mv submod submod-movedaside && git checkout -b test$test_count.b test$test_count && - test_must_fail git merge master && + test_must_fail git merge main && test -n "$(git ls-files -u)" && yes "" | git mergetool file1 file2 spaced\ name subdir/file3 && yes "" | git mergetool both && @@ -547,7 +550,7 @@ test_expect_success 'file vs modified submodule' ' test "$output" = "No files need merging" && git commit -m "Merge resolved by keeping file" && - git checkout -b test$test_count.c master && + git checkout -b test$test_count.c main && rmdir submod && mv submod-movedaside submod && test ! -e submod.orig && git submodule update -N && @@ -573,7 +576,7 @@ test_expect_success 'file vs modified submodule' ' test "$output" = "No files need merging" && git commit -m "Merge resolved by keeping file" && - git checkout -b test$test_count.d master && + git checkout -b test$test_count.d main && rmdir submod && mv submod.orig submod && git submodule update -N && test_must_fail git merge test$test_count && @@ -586,10 +589,10 @@ test_expect_success 'file vs modified submodule' ' then yes "d" | git mergetool submod~test19 fi && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect submod/bar && git submodule update -N && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect submod/bar && output="$(git mergetool --no-prompt)" && test "$output" = "No files need merging" && @@ -672,7 +675,7 @@ test_expect_success 'directory vs modified submodule' ' git add submod/file16 && git commit -m "Submodule path becomes directory" && - test_must_fail git merge master && + test_must_fail git merge main && test -n "$(git ls-files -u)" && yes "l" | git mergetool submod && echo "not a submodule" >expect && @@ -680,14 +683,14 @@ test_expect_success 'directory vs modified submodule' ' rm -rf submod.orig && git reset --hard && - test_must_fail git merge master && + test_must_fail git merge main && test -n "$(git ls-files -u)" && test ! -e submod.orig && if test "$GIT_TEST_MERGE_ALGORITHM" = ort then - yes "r" | git mergetool submod~master && + yes "r" | git mergetool submod~main && git mv submod submod.orig && - git mv submod~master submod + git mv submod~main submod else yes "r" | git mergetool submod fi && @@ -698,18 +701,18 @@ test_expect_success 'directory vs modified submodule' ' mv submod-movedaside/.git submod && ( cd submod && git clean -f && git reset --hard ) && git submodule update -N && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect submod/bar && git reset --hard && rm -rf submod-movedaside && - git checkout -b test$test_count.c master && + git checkout -b test$test_count.c main && git submodule update -N && test_must_fail git merge test$test_count && test -n "$(git ls-files -u)" && yes "l" | git mergetool submod && git submodule update -N && - echo "master submodule" >expect && + echo "main submodule" >expect && test_cmp expect submod/bar && git reset --hard && @@ -721,7 +724,7 @@ test_expect_success 'directory vs modified submodule' ' echo "not a submodule" >expect && test_cmp expect submod/file16 && - git reset --hard master && + git reset --hard main && ( cd submod && git clean -f && git reset --hard ) && git submodule update -N ' @@ -729,7 +732,7 @@ test_expect_success 'directory vs modified submodule' ' test_expect_success 'file with no base' ' test_when_finished "git reset --hard" && git checkout -b test$test_count branch1 && - test_must_fail git merge master && + test_must_fail git merge main && git mergetool --no-prompt --tool mybase -- both && test_must_be_empty both ' @@ -739,9 +742,9 @@ test_expect_success 'custom commands override built-ins' ' git checkout -b test$test_count branch1 && test_config mergetool.defaults.cmd "cat \"\$REMOTE\" >\"\$MERGED\"" && test_config mergetool.defaults.trustExitCode true && - test_must_fail git merge master && + test_must_fail git merge main && git mergetool --no-prompt --tool defaults -- both && - echo master both added >expected && + echo main both added >expected && test_cmp expected both ' @@ -751,7 +754,7 @@ test_expect_success 'filenames seen by tools start with ./' ' test_config mergetool.writeToTemp false && test_config mergetool.myecho.cmd "echo \"\$LOCAL\"" && test_config mergetool.myecho.trustExitCode true && - test_must_fail git merge master && + test_must_fail git merge main && git mergetool --no-prompt --tool myecho -- both >actual && grep ^\./both_LOCAL_ actual ' @@ -768,7 +771,7 @@ test_expect_success MKTEMP 'temporary filenames are used with mergetool.writeToT test_config mergetool.writeToTemp true && test_config mergetool.myecho.cmd "echo \"\$LOCAL\"" && test_config mergetool.myecho.trustExitCode true && - test_must_fail git merge master && + test_must_fail git merge main && git mergetool --no-prompt --tool myecho -- both >actual && ! grep ^\./both_LOCAL_ actual && grep /both_LOCAL_ actual @@ -828,4 +831,15 @@ test_expect_success 'mergetool -Oorder-file is honored' ' test_cmp expect actual ' +test_expect_success 'mergetool --tool-help shows recognized tools' ' + # Check a few known tools are correctly shown + git mergetool --tool-help >mergetools && + grep vimdiff mergetools && + grep vimdiff3 mergetools && + grep gvimdiff2 mergetools && + grep araxis mergetools && + grep xxdiff mergetools && + grep meld mergetools +' + test_done diff --git a/t/t7611-merge-abort.sh b/t/t7611-merge-abort.sh index 7c84a518aa..c0e9425115 100755 --- a/t/t7611-merge-abort.sh +++ b/t/t7611-merge-abort.sh @@ -7,7 +7,7 @@ Set up repo with conflicting and non-conflicting branches: There are three files foo/bar/baz, and the following graph illustrates the content of these files in each commit: -# foo/bar/baz --- foo/bar/bazz <-- master +# foo/bar/baz --- foo/bar/bazz <-- main # \ # --- foo/barf/bazf <-- conflict_branch # \ @@ -22,6 +22,9 @@ Next, test git merge --abort with the following variables: - changed/unchanged worktree after merge - changed/unchanged index after merge ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -40,7 +43,7 @@ test_expect_success 'setup' ' git checkout -b clean_branch HEAD^ && echo bart > bar && git commit -a -m "clean" && - git checkout master + git checkout main ' pre_merge_head="$(git rev-parse HEAD)" diff --git a/t/t7612-merge-verify-signatures.sh b/t/t7612-merge-verify-signatures.sh index a426f3a89a..61330f71b1 100755 --- a/t/t7612-merge-verify-signatures.sh +++ b/t/t7612-merge-verify-signatures.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='merge signature verification tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY/lib-gpg.sh" @@ -31,7 +34,7 @@ test_expect_success GPG 'create signed commits' ' echo 3 >baz && git add baz && test_tick && git commit -SB7227189 -m "untrusted on side" && - git checkout master + git checkout main ' test_expect_success GPG 'merge unsigned commit with verification' ' diff --git a/t/t7614-merge-signoff.sh b/t/t7614-merge-signoff.sh index c1b8446f49..fee258d4f0 100755 --- a/t/t7614-merge-signoff.sh +++ b/t/t7614-merge-signoff.sh @@ -5,23 +5,26 @@ test_description='git merge --signoff This test runs git merge --signoff and makes sure that it works. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # Setup test files test_setup() { # Expected commit message after merge --signoff cat >expected-signed <<EOF && -Merge branch 'master' into other-branch +Merge branch 'main' into other-branch Signed-off-by: $(git var GIT_COMMITTER_IDENT | sed -e "s/>.*/>/") EOF # Expected commit message after merge without --signoff (or with --no-signoff) cat >expected-unsigned <<EOF && -Merge branch 'master' into other-branch +Merge branch 'main' into other-branch EOF - # Initial commit and feature branch to merge master into it. + # Initial commit and feature branch to merge main into it. git commit --allow-empty -m "Initial empty commit" && git checkout -b other-branch && test_commit other-branch file1 1 @@ -38,30 +41,30 @@ test_expect_success 'setup' ' # Test with --signoff flag test_expect_success 'git merge --signoff adds a sign-off line' ' - git checkout master && - test_commit master-branch-2 file2 2 && + git checkout main && + test_commit main-branch-2 file2 2 && git checkout other-branch && - git merge master --signoff --no-edit && + git merge main --signoff --no-edit && git cat-file commit HEAD | sed -e "1,/^\$/d" >actual && test_cmp expected-signed actual ' # Test without --signoff flag test_expect_success 'git merge does not add a sign-off line' ' - git checkout master && - test_commit master-branch-3 file3 3 && + git checkout main && + test_commit main-branch-3 file3 3 && git checkout other-branch && - git merge master --no-edit && + git merge main --no-edit && git cat-file commit HEAD | sed -e "1,/^\$/d" >actual && test_cmp expected-unsigned actual ' # Test for --no-signoff flag test_expect_success 'git merge --no-signoff flag cancels --signoff flag' ' - git checkout master && - test_commit master-branch-4 file4 4 && + git checkout main && + test_commit main-branch-4 file4 4 && git checkout other-branch && - git merge master --no-edit --signoff --no-signoff && + git merge main --no-edit --signoff --no-signoff && git cat-file commit HEAD | sed -e "1,/^\$/d" >actual && test_cmp expected-unsigned actual ' diff --git a/t/t7701-repack-unpack-unreachable.sh b/t/t7701-repack-unpack-unreachable.sh index 48261ba080..937f89ee8c 100755 --- a/t/t7701-repack-unpack-unreachable.sh +++ b/t/t7701-repack-unpack-unreachable.sh @@ -2,6 +2,9 @@ test_description='git repack works correctly' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh fsha1= @@ -22,7 +25,7 @@ test_expect_success '-A with -d option leaves unreachable objects unpacked' ' git commit -a -m more_content && csha1=$(git rev-parse HEAD^{commit}) && tsha1=$(git rev-parse HEAD^{tree}) && - git checkout master && + git checkout main && echo even more content >> file1 && test_tick && git commit -a -m even_more_content && diff --git a/t/t7800-difftool.sh b/t/t7800-difftool.sh index a578b35761..9662abc1e7 100755 --- a/t/t7800-difftool.sh +++ b/t/t7800-difftool.sh @@ -8,6 +8,9 @@ test_description='git-difftool Testing basic diff tool invocation ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh difftool_test_setup () @@ -35,23 +38,23 @@ test_expect_success 'basic usage requires no repo' ' test_i18ngrep ^usage: output ' -# Create a file on master and change it on branch +# Create a file on main and change it on branch test_expect_success 'setup' ' - echo master >file && + echo main >file && git add file && git commit -m "added file" && - git checkout -b branch master && + git checkout -b branch main && echo branch >file && git commit -a -m "branch changed file" && - git checkout master + git checkout main ' # Configure a custom difftool.<tool>.cmd and use it test_expect_success 'custom commands' ' difftool_test_setup && test_config difftool.test-tool.cmd "cat \"\$REMOTE\"" && - echo master >expect && + echo main >expect && git difftool --no-prompt branch >actual && test_cmp expect actual && @@ -63,7 +66,7 @@ test_expect_success 'custom commands' ' test_expect_success 'custom tool commands override built-ins' ' test_config difftool.vimdiff.cmd "cat \"\$REMOTE\"" && - echo master >expect && + echo main >expect && git difftool --tool vimdiff --no-prompt branch >actual && test_cmp expect actual ' @@ -311,21 +314,21 @@ test_expect_success 'difftool.<tool>.path' ' test_expect_success 'difftool --extcmd=cat' ' echo branch >expect && - echo master >>expect && + echo main >>expect && git difftool --no-prompt --extcmd=cat branch >actual && test_cmp expect actual ' test_expect_success 'difftool --extcmd cat' ' echo branch >expect && - echo master >>expect && + echo main >>expect && git difftool --no-prompt --extcmd=cat branch >actual && test_cmp expect actual ' test_expect_success 'difftool -x cat' ' echo branch >expect && - echo master >>expect && + echo main >>expect && git difftool --no-prompt -x cat branch >actual && test_cmp expect actual ' @@ -338,7 +341,7 @@ test_expect_success 'difftool --extcmd echo arg1' ' ' test_expect_success 'difftool --extcmd cat arg1' ' - echo master >expect && + echo main >expect && git difftool --no-prompt \ --extcmd sh\ -c\ \"cat\ \$1\" branch >actual && test_cmp expect actual @@ -351,7 +354,7 @@ test_expect_success 'difftool --extcmd cat arg2' ' test_cmp expect actual ' -# Create a second file on master and a different version on branch +# Create a second file on main and a different version on branch test_expect_success 'setup with 2 files different' ' echo m2 >file2 && git add file2 && @@ -361,7 +364,7 @@ test_expect_success 'setup with 2 files different' ' echo br2 >file2 && git add file2 && git commit -a -m "branch changed file2" && - git checkout master + git checkout main ' test_expect_success 'say no to the first file' ' @@ -369,14 +372,14 @@ test_expect_success 'say no to the first file' ' git difftool -x cat branch <input >output && grep m2 output && grep br2 output && - ! grep master output && + ! grep main output && ! grep branch output ' test_expect_success 'say no to the second file' ' (echo && echo n) >input && git difftool -x cat branch <input >output && - grep master output && + grep main output && grep branch output && ! grep m2 output && ! grep br2 output @@ -384,7 +387,7 @@ test_expect_success 'say no to the second file' ' test_expect_success 'ending prompt input with EOF' ' git difftool -x cat branch </dev/null >output && - ! grep master output && + ! grep main output && ! grep branch output && ! grep m2 output && ! grep br2 output @@ -396,9 +399,9 @@ test_expect_success 'difftool --tool-help' ' ' test_expect_success 'setup change in subdirectory' ' - git checkout master && + git checkout main && mkdir sub && - echo master >sub/sub && + echo main >sub/sub && git add sub/sub && git commit -m "added sub/sub" && git tag v1 && @@ -526,7 +529,7 @@ run_dir_diff_test 'difftool --dir-diff from subdirectory with GIT_DIR set' ' run_dir_diff_test 'difftool --dir-diff when worktree file is missing' ' test_when_finished git reset --hard && rm file2 && - git difftool --dir-diff $symlinks --extcmd ls branch master >output && + git difftool --dir-diff $symlinks --extcmd ls branch main >output && grep file2 output ' @@ -543,7 +546,7 @@ run_dir_diff_test 'difftool --dir-diff with unmerged files' ' echo b >>file && git add file && git commit -m conflict-b && - git checkout master && + git checkout main && git merge conflict-a && test_must_fail git merge conflict-b && cat >expect <<-EOF && diff --git a/t/t7810-grep.sh b/t/t7810-grep.sh index 991d5bd9c0..8f7591c9cc 100755 --- a/t/t7810-grep.sh +++ b/t/t7810-grep.sh @@ -6,6 +6,9 @@ test_description='git grep various. ' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh cat >hello.c <<EOF @@ -687,21 +690,9 @@ test_expect_success 'grep -C1 hunk mark between files' ' ' test_expect_success 'log grep setup' ' - echo a >>file && - test_tick && - GIT_AUTHOR_NAME="With * Asterisk" \ - GIT_AUTHOR_EMAIL="xyzzy@frotz.com" \ - git commit -a -m "second" && - - echo a >>file && - test_tick && - git commit -a -m "third" && - - echo a >>file && - test_tick && - GIT_AUTHOR_NAME="Night Fall" \ - GIT_AUTHOR_EMAIL="nitfol@frobozz.com" \ - git commit -a -m "fourth" + test_commit --append --author "With * Asterisk <xyzzy@frotz.com>" second file a && + test_commit --append third file a && + test_commit --append --author "Night Fall <nitfol@frobozz.com>" fourth file a ' test_expect_success 'log grep (1)' ' @@ -1206,19 +1197,19 @@ test_expect_success 'grep -e -- -- path' ' ' test_expect_success 'dashdash disambiguates rev as rev' ' - test_when_finished "rm -f master" && - echo content >master && - echo master:hello.c >expect && - git grep -l o master -- hello.c >actual && + test_when_finished "rm -f main" && + echo content >main && + echo main:hello.c >expect && + git grep -l o main -- hello.c >actual && test_cmp expect actual ' test_expect_success 'dashdash disambiguates pathspec as pathspec' ' - test_when_finished "git rm -f master" && - echo content >master && - git add master && - echo master:content >expect && - git grep o -- master >actual && + test_when_finished "git rm -f main" && + echo content >main && + git add main && + echo main:content >expect && + git grep o -- main >actual && test_cmp expect actual ' @@ -1254,15 +1245,15 @@ test_expect_success 'grep --no-index pattern -- path' ' ' test_expect_success 'grep --no-index complains of revs' ' - test_must_fail git grep --no-index o master -- 2>err && + test_must_fail git grep --no-index o main -- 2>err && test_i18ngrep "cannot be used with revs" err ' test_expect_success 'grep --no-index prefers paths to revs' ' - test_when_finished "rm -f master" && - echo content >master && - echo master:content >expect && - git grep --no-index o master >actual && + test_when_finished "rm -f main" && + echo content >main && + echo main:content >expect && + git grep --no-index o main >actual && test_cmp expect actual ' diff --git a/t/t7900-maintenance.sh b/t/t7900-maintenance.sh index 99bf0c7582..78ccf4b33f 100755 --- a/t/t7900-maintenance.sh +++ b/t/t7900-maintenance.sh @@ -7,6 +7,19 @@ test_description='git maintenance builtin' GIT_TEST_COMMIT_GRAPH=0 GIT_TEST_MULTI_PACK_INDEX=0 +test_lazy_prereq XMLLINT ' + xmllint --version +' + +test_xmllint () { + if test_have_prereq XMLLINT + then + xmllint --noout "$@" + else + true + fi +} + test_expect_success 'help text' ' test_expect_code 129 git maintenance -h 2>err && test_i18ngrep "usage: git maintenance <subcommand>" err && @@ -136,7 +149,31 @@ test_expect_success 'prefetch multiple remotes' ' git log prefetch/remote2/two && git fetch --all && test_cmp_rev refs/remotes/remote1/one refs/prefetch/remote1/one && - test_cmp_rev refs/remotes/remote2/two refs/prefetch/remote2/two + test_cmp_rev refs/remotes/remote2/two refs/prefetch/remote2/two && + + test_cmp_config refs/prefetch/ log.excludedecoration && + git log --oneline --decorate --all >log && + ! grep "prefetch" log +' + +test_expect_success 'prefetch and existing log.excludeDecoration values' ' + git config --unset-all log.excludeDecoration && + git config log.excludeDecoration refs/remotes/remote1/ && + git maintenance run --task=prefetch && + + git config --get-all log.excludeDecoration >out && + grep refs/remotes/remote1/ out && + grep refs/prefetch/ out && + + git log --oneline --decorate --all >log && + ! grep "prefetch" log && + ! grep "remote1" log && + grep "remote2" log && + + # a second run does not change the config + git maintenance run --task=prefetch && + git log --oneline --decorate --all >log2 && + test_cmp log log2 ' test_expect_success 'loose-objects task' ' @@ -219,6 +256,13 @@ test_expect_success 'incremental-repack task' ' HEAD ^HEAD~1 EOF + + # Delete refs that have not been repacked in these packs. + git for-each-ref --format="delete %(refname)" \ + refs/prefetch refs/tags >refs && + git update-ref --stdin <refs && + + # Replace the object directory with this pack layout. rm -f $packDir/pack-* && rm -f $packDir/loose-* && ls $packDir/*.pack >packs-before && @@ -419,7 +463,7 @@ test_expect_success !MINGW 'register and unregister with regex metacharacters' ' ' test_expect_success 'start from empty cron table' ' - GIT_TEST_CRONTAB="test-tool crontab cron.txt" git maintenance start && + GIT_TEST_MAINT_SCHEDULER="crontab:test-tool crontab cron.txt" git maintenance start && # start registers the repo git config --get --global --fixed-value maintenance.repo "$(pwd)" && @@ -430,19 +474,19 @@ test_expect_success 'start from empty cron table' ' ' test_expect_success 'stop from existing schedule' ' - GIT_TEST_CRONTAB="test-tool crontab cron.txt" git maintenance stop && + GIT_TEST_MAINT_SCHEDULER="crontab:test-tool crontab cron.txt" git maintenance stop && # stop does not unregister the repo git config --get --global --fixed-value maintenance.repo "$(pwd)" && # Operation is idempotent - GIT_TEST_CRONTAB="test-tool crontab cron.txt" git maintenance stop && + GIT_TEST_MAINT_SCHEDULER="crontab:test-tool crontab cron.txt" git maintenance stop && test_must_be_empty cron.txt ' test_expect_success 'start preserves existing schedule' ' echo "Important information!" >cron.txt && - GIT_TEST_CRONTAB="test-tool crontab cron.txt" git maintenance start && + GIT_TEST_MAINT_SCHEDULER="crontab:test-tool crontab cron.txt" git maintenance start && grep "Important information!" cron.txt ' @@ -457,11 +501,94 @@ test_expect_success 'magic markers are correct' ' test_expect_success 'stop preserves surrounding schedule' ' echo "Crucial information!" >>cron.txt && - GIT_TEST_CRONTAB="test-tool crontab cron.txt" git maintenance stop && + GIT_TEST_MAINT_SCHEDULER="crontab:test-tool crontab cron.txt" git maintenance stop && grep "Important information!" cron.txt && grep "Crucial information!" cron.txt ' +test_expect_success 'start and stop macOS maintenance' ' + # ensure $HOME can be compared against hook arguments on all platforms + pfx=$(cd "$HOME" && pwd) && + + write_script print-args <<-\EOF && + echo $* | sed "s:gui/[0-9][0-9]*:gui/[UID]:" >>args + EOF + + rm -f args && + GIT_TEST_MAINT_SCHEDULER=launchctl:./print-args git maintenance start && + + # start registers the repo + git config --get --global --fixed-value maintenance.repo "$(pwd)" && + + ls "$HOME/Library/LaunchAgents" >actual && + cat >expect <<-\EOF && + org.git-scm.git.daily.plist + org.git-scm.git.hourly.plist + org.git-scm.git.weekly.plist + EOF + test_cmp expect actual && + + rm -f expect && + for frequency in hourly daily weekly + do + PLIST="$pfx/Library/LaunchAgents/org.git-scm.git.$frequency.plist" && + test_xmllint "$PLIST" && + grep schedule=$frequency "$PLIST" && + echo "bootout gui/[UID] $PLIST" >>expect && + echo "bootstrap gui/[UID] $PLIST" >>expect || return 1 + done && + test_cmp expect args && + + rm -f args && + GIT_TEST_MAINT_SCHEDULER=launchctl:./print-args git maintenance stop && + + # stop does not unregister the repo + git config --get --global --fixed-value maintenance.repo "$(pwd)" && + + printf "bootout gui/[UID] $pfx/Library/LaunchAgents/org.git-scm.git.%s.plist\n" \ + hourly daily weekly >expect && + test_cmp expect args && + ls "$HOME/Library/LaunchAgents" >actual && + test_line_count = 0 actual +' + +test_expect_success 'start and stop Windows maintenance' ' + write_script print-args <<-\EOF && + echo $* >>args + while test $# -gt 0 + do + case "$1" in + /xml) shift; xmlfile=$1; break ;; + *) shift ;; + esac + done + test -z "$xmlfile" || cp "$xmlfile" "$xmlfile.xml" + EOF + + rm -f args && + GIT_TEST_MAINT_SCHEDULER="schtasks:./print-args" git maintenance start && + + # start registers the repo + git config --get --global --fixed-value maintenance.repo "$(pwd)" && + + for frequency in hourly daily weekly + do + grep "/create /tn Git Maintenance ($frequency) /f /xml" args && + file=$(ls .git/schedule_${frequency}*.xml) && + test_xmllint "$file" || return 1 + done && + + rm -f args && + GIT_TEST_MAINT_SCHEDULER="schtasks:./print-args" git maintenance stop && + + # stop does not unregister the repo + git config --get --global --fixed-value maintenance.repo "$(pwd)" && + + printf "/delete /tn Git Maintenance (%s) /f\n" \ + hourly daily weekly >expect && + test_cmp expect args +' + test_expect_success 'register preserves existing strategy' ' git config maintenance.strategy none && git maintenance register && diff --git a/t/t8001-annotate.sh b/t/t8001-annotate.sh index 72176e42c1..a536a621b2 100755 --- a/t/t8001-annotate.sh +++ b/t/t8001-annotate.sh @@ -1,13 +1,16 @@ #!/bin/sh test_description='git annotate' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh PROG='git annotate' . "$TEST_DIRECTORY"/annotate-tests.sh test_expect_success 'annotate old revision' ' - git annotate file master >actual && + git annotate file main >actual && awk "{ print \$3; }" <actual >authors && test 2 = $(grep A <authors | wc -l) && test 2 = $(grep B <authors | wc -l) diff --git a/t/t8002-blame.sh b/t/t8002-blame.sh index 015973e8fe..5bb302b1ba 100755 --- a/t/t8002-blame.sh +++ b/t/t8002-blame.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git blame' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh PROG='git blame -c' diff --git a/t/t8003-blame-corner-cases.sh b/t/t8003-blame-corner-cases.sh index ba8013b002..da80f815ce 100755 --- a/t/t8003-blame-corner-cases.sh +++ b/t/t8003-blame-corner-cases.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git blame corner cases' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh pick_fc='s/^[0-9a-f^]* *\([^ ]*\) *(\([^ ]*\) .*/\1-\2/' @@ -161,13 +164,13 @@ test_expect_success 'blame wholesale copy and more in the index' ' test_expect_success 'blame during cherry-pick with file rename conflict' ' - test_when_finished "git reset --hard && git checkout master" && + test_when_finished "git reset --hard && git checkout main" && git checkout HEAD~3 && echo MOUSE >> mouse && git mv mouse rodent && git add rodent && GIT_AUTHOR_NAME=Rodent git commit -m "rodent" && - git checkout --detach master && + git checkout --detach main && (git cherry-pick HEAD@{1} || test $? -eq 1) && git show HEAD@{1}:rodent > rodent && git add rodent && diff --git a/t/t8004-blame-with-conflicts.sh b/t/t8004-blame-with-conflicts.sh index 9c353ab222..35414a5336 100755 --- a/t/t8004-blame-with-conflicts.sh +++ b/t/t8004-blame-with-conflicts.sh @@ -3,6 +3,9 @@ # Based on a test case submitted by Björn Steinbrink. test_description='git blame on conflicted files' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup first case' ' @@ -21,16 +24,16 @@ test_expect_success 'setup first case' ' git add file2 && git commit --author "U Gly <ug@localhost>" -m ugly && - # Back to master and change something - git checkout master && + # Back to main and change something + git checkout main && echo " bla" >> file1 && git commit --author "Old Line <ol@localhost>" -a -m file1.b && - # Back to foo and merge master + # Back to foo and merge main git checkout foo && - if git merge master; then + if git merge main; then echo needed conflict here exit 1 else @@ -44,8 +47,8 @@ Even more" > file2 && git rm file1 && git commit --author "M Result <mr@localhost>" -a -m merged && - # Back to master and change file1 again - git checkout master && + # Back to main and change file1 again + git checkout main && sed s/bla/foo/ <file1 >X && rm file1 && mv X file1 && @@ -53,7 +56,7 @@ Even more" > file2 && # Try to merge into foo again git checkout foo && - if git merge master; then + if git merge main; then echo needed conflict here exit 1 else diff --git a/t/t8012-blame-colors.sh b/t/t8012-blame-colors.sh index ed38f74de9..90c75dbb28 100755 --- a/t/t8012-blame-colors.sh +++ b/t/t8012-blame-colors.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='colored git blame' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh PROG='git blame -c' diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh index a08f72596a..4eee9c3dcb 100755 --- a/t/t9001-send-email.sh +++ b/t/t9001-send-email.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git send-email' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh # May be altered later in the test @@ -1168,10 +1171,10 @@ test_expect_success $PREREQ '--compose-encoding adds correct MIME for subject' ' ' test_expect_success $PREREQ 'detects ambiguous reference/file conflict' ' - echo master >master && - git add master && - git commit -m"add master" && - test_must_fail git send-email --dry-run master 2>errors && + echo main >main && + git add main && + git commit -m"add main" && + test_must_fail git send-email --dry-run main 2>errors && grep disambiguate errors ' @@ -1185,7 +1188,7 @@ test_expect_success $PREREQ 'feed two files' ' outdir/000?-*.patch 2>errors >out && grep "^Subject: " out >subjects && test "z$(sed -n -e 1p subjects)" = "zSubject: [PATCH 1/2] Second." && - test "z$(sed -n -e 2p subjects)" = "zSubject: [PATCH 2/2] add master" + test "z$(sed -n -e 2p subjects)" = "zSubject: [PATCH 2/2] add main" ' test_expect_success $PREREQ 'in-reply-to but no threading' ' @@ -2037,7 +2040,7 @@ test_expect_success $PREREQ 'setup expected-list' ' --cc="Cc2 <cc2@example.com>" \ --bcc="bcc1@example.com" \ --bcc="bcc2@example.com" \ - 0001-add-master.patch | replace_variable_fields \ + 0001-add-main.patch | replace_variable_fields \ >expected-list ' @@ -2049,7 +2052,7 @@ test_expect_success $PREREQ 'use email list in --cc --to and --bcc' ' --to="to3@example.com" \ --cc="Cc 1 <cc1@example.com>, Cc2 <cc2@example.com>" \ --bcc="bcc1@example.com, bcc2@example.com" \ - 0001-add-master.patch | replace_variable_fields \ + 0001-add-main.patch | replace_variable_fields \ >actual-list && test_cmp expected-list actual-list ' @@ -2065,7 +2068,7 @@ test_expect_success $PREREQ 'aliases work with email list' ' --to="To 1 <to1@example.com>, to2, to3@example.com" \ --cc="cc1, Cc2 <cc2@example.com>" \ --bcc="bcc1@example.com, bcc2@example.com" \ - 0001-add-master.patch | replace_variable_fields \ + 0001-add-main.patch | replace_variable_fields \ >actual-list && test_cmp expected-list actual-list ' @@ -2089,7 +2092,7 @@ test_expect_success $PREREQ 'leading and trailing whitespaces are removed' ' --cc="Cc2 <cc2@example.com>" \ --bcc="$BCC1" \ --bcc="bcc2@example.com" \ - 0001-add-master.patch | replace_variable_fields \ + 0001-add-main.patch | replace_variable_fields \ >actual-list && test_cmp expected-list actual-list ' @@ -2108,8 +2111,8 @@ test_expect_success $PREREQ 'invoke hook' ' false ;; esac && - test -f 0001-add-master.patch && - grep "add master" "$1" + test -f 0001-add-main.patch && + grep "add main" "$1" EOF mkdir subdir && @@ -2121,10 +2124,10 @@ test_expect_success $PREREQ 'invoke hook' ' --from="Example <nobody@example.com>" \ --to=nobody@example.com \ --smtp-server="$(pwd)/../fake.sendmail" \ - ../0001-add-master.patch && + ../0001-add-main.patch && # Verify error message when a patch is rejected by the hook - sed -e "s/add master/x/" ../0001-add-master.patch >../another.patch && + sed -e "s/add main/x/" ../0001-add-main.patch >../another.patch && test_must_fail git send-email \ --from="Example <nobody@example.com>" \ --to=nobody@example.com \ @@ -2139,7 +2142,7 @@ test_expect_success $PREREQ 'test that send-email works outside a repo' ' --from="Example <nobody@example.com>" \ --to=nobody@example.com \ --smtp-server="$(pwd)/fake.sendmail" \ - "$(pwd)/0001-add-master.patch" + "$(pwd)/0001-add-main.patch" ' test_expect_success $PREREQ 'test that sendmail config is rejected' ' diff --git a/t/t9100-git-svn-basic.sh b/t/t9100-git-svn-basic.sh index e4bb22034e..1d3fdcc997 100755 --- a/t/t9100-git-svn-basic.sh +++ b/t/t9100-git-svn-basic.sh @@ -6,6 +6,9 @@ test_description='git svn basic tests' GIT_SVN_LC_ALL=${LC_ALL:-$LANG} +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-svn.sh case "$GIT_SVN_LC_ALL" in @@ -275,7 +278,7 @@ test_expect_success 'dcommit $rev does not clobber current branch' ' test refs/heads/my-bar = $(git symbolic-ref HEAD) && git log refs/remotes/bar | grep "change 1" && ! git log refs/remotes/bar | grep "change 2" && - git checkout master && + git checkout main && git branch -D my-bar ' diff --git a/t/t9145-git-svn-master-branch.sh b/t/t9145-git-svn-master-branch.sh index 3bbf341f6a..f863e437f7 100755 --- a/t/t9145-git-svn-master-branch.sh +++ b/t/t9145-git-svn-master-branch.sh @@ -2,7 +2,10 @@ # # Copyright (c) 2009 Eric Wong # -test_description='git svn initial master branch is "trunk" if possible' +test_description='git svn initial main branch is "trunk" if possible' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-svn.sh test_expect_success 'setup test repository' ' @@ -13,12 +16,12 @@ test_expect_success 'setup test repository' ' svn_cmd import -m b/b i "$svnrepo/branches/b" ' -test_expect_success 'git svn clone --stdlayout sets up trunk as master' ' +test_expect_success 'git svn clone --stdlayout sets up trunk as main' ' git svn clone -s "$svnrepo" g && ( cd g && test x$(git rev-parse --verify refs/remotes/origin/trunk^0) = \ - x$(git rev-parse --verify refs/heads/master^0) + x$(git rev-parse --verify refs/heads/main^0) ) ' diff --git a/t/t9151-svn-mergeinfo.sh b/t/t9151-svn-mergeinfo.sh index 4f6c06ecb2..696ace2462 100755 --- a/t/t9151-svn-mergeinfo.sh +++ b/t/t9151-svn-mergeinfo.sh @@ -5,6 +5,9 @@ test_description='git-svn svn mergeinfo properties' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-svn.sh test_expect_success 'load svn dump' " @@ -50,7 +53,7 @@ test_expect_success 'merging two branches in one commit is detected correctly' ' ' test_expect_failure 'everything got merged in the end' ' - unmerged=$(git rev-list --all --not master) && + unmerged=$(git rev-list --all --not main) && [ -z "$unmerged" ] ' diff --git a/t/t9155-git-svn-fetch-deleted-tag.sh b/t/t9155-git-svn-fetch-deleted-tag.sh index 184336f346..3258374c13 100755 --- a/t/t9155-git-svn-fetch-deleted-tag.sh +++ b/t/t9155-git-svn-fetch-deleted-tag.sh @@ -2,6 +2,9 @@ test_description='git svn fetch deleted tag' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-svn.sh test_expect_success 'setup svn repo' ' @@ -36,7 +39,7 @@ test_expect_success 'fetch deleted tags from same revision with checksum error' git svn fetch && git diff --exit-code origin/mybranch:trunk/subdir/file origin/tags/mytag:file && - git diff --exit-code master:subdir/file origin/tags/mytag^:file + git diff --exit-code main:subdir/file origin/tags/mytag^:file ' test_done diff --git a/t/t9156-git-svn-fetch-deleted-tag-2.sh b/t/t9156-git-svn-fetch-deleted-tag-2.sh index 7a6e33ba3c..2b75c403e3 100755 --- a/t/t9156-git-svn-fetch-deleted-tag-2.sh +++ b/t/t9156-git-svn-fetch-deleted-tag-2.sh @@ -2,6 +2,9 @@ test_description='git svn fetch deleted tag 2' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-svn.sh test_expect_success 'setup svn repo' ' @@ -36,9 +39,9 @@ test_expect_success 'fetch deleted tags from same revision with no checksum erro cd git_project && git svn fetch && - git diff --exit-code master:subdir3/file origin/tags/mytag:file && - git diff --exit-code master:subdir2/file origin/tags/mytag^:file && - git diff --exit-code master:subdir1/file origin/tags/mytag^^:file + git diff --exit-code main:subdir3/file origin/tags/mytag:file && + git diff --exit-code main:subdir2/file origin/tags/mytag^:file && + git diff --exit-code main:subdir1/file origin/tags/mytag^^:file ' test_done diff --git a/t/t9163-git-svn-reset-clears-caches.sh b/t/t9163-git-svn-reset-clears-caches.sh index d6245cee08..978eb62ff4 100755 --- a/t/t9163-git-svn-reset-clears-caches.sh +++ b/t/t9163-git-svn-reset-clears-caches.sh @@ -4,6 +4,9 @@ # test_description='git svn reset clears memoized caches' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-svn.sh svn_ver="$(svn --version --quiet)" @@ -59,7 +62,7 @@ test_expect_success 'fetch to merge-base (a)' ' test_expect_success 'rebase looses SVN merge (m)' ' git svn rebase && git svn fetch && - test 1 = $(git cat-file -p master|grep parent|wc -l) + test 1 = $(git cat-file -p main|grep parent|wc -l) ' # git svn fetch creates correct history with merge commit diff --git a/t/t9169-git-svn-dcommit-crlf.sh b/t/t9169-git-svn-dcommit-crlf.sh index 54b1f61a2a..7080b5d24f 100755 --- a/t/t9169-git-svn-dcommit-crlf.sh +++ b/t/t9169-git-svn-dcommit-crlf.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git svn dcommit CRLF' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-svn.sh test_expect_success 'setup commit repository' ' @@ -14,7 +17,7 @@ test_expect_success 'setup commit repository' ' p=$(git rev-parse HEAD) && t=$(git write-tree) && cmt=$(git commit-tree -p $p $t <cmt) && - git update-ref refs/heads/master $cmt && + git update-ref refs/heads/main $cmt && git cat-file commit HEAD | tail -n4 >out && test_cmp cmt out && git svn dcommit && diff --git a/t/t9300-fast-import.sh b/t/t9300-fast-import.sh index 308c1ef42c..3d17e932a0 100755 --- a/t/t9300-fast-import.sh +++ b/t/t9300-fast-import.sh @@ -4,6 +4,9 @@ # test_description='test git fast-import utility' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh . "$TEST_DIRECTORY"/diff-lib.sh ;# test-lib chdir's into trash @@ -62,7 +65,7 @@ test_expect_success 'A: create pack from stdin' ' mark :4 data $file4_len $file4_data - commit refs/heads/master + commit refs/heads/main mark :5 committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT @@ -117,7 +120,7 @@ test_expect_success 'A: create pack from stdin' ' INPUT_END git fast-import --export-marks=marks.out <input && - git whatchanged master + git whatchanged main ' test_expect_success 'A: verify pack' ' @@ -131,7 +134,7 @@ test_expect_success 'A: verify commit' ' initial EOF - git cat-file commit master | sed 1d >actual && + git cat-file commit main | sed 1d >actual && test_cmp expect actual ' @@ -141,31 +144,31 @@ test_expect_success 'A: verify tree' ' 100644 blob file3 100755 blob file4 EOF - git cat-file -p master^{tree} | sed "s/ [0-9a-f]* / /" >actual && + git cat-file -p main^{tree} | sed "s/ [0-9a-f]* / /" >actual && test_cmp expect actual ' test_expect_success 'A: verify file2' ' echo "$file2_data" >expect && - git cat-file blob master:file2 >actual && + git cat-file blob main:file2 >actual && test_cmp expect actual ' test_expect_success 'A: verify file3' ' echo "$file3_data" >expect && - git cat-file blob master:file3 >actual && + git cat-file blob main:file3 >actual && test_cmp expect actual ' test_expect_success 'A: verify file4' ' printf "$file4_data" >expect && - git cat-file blob master:file4 >actual && + git cat-file blob main:file4 >actual && test_cmp expect actual ' test_expect_success 'A: verify tag/series-A' ' cat >expect <<-EOF && - object $(git rev-parse refs/heads/master) + object $(git rev-parse refs/heads/main) type commit tag series-A @@ -177,7 +180,7 @@ test_expect_success 'A: verify tag/series-A' ' test_expect_success 'A: verify tag/series-A-blob' ' cat >expect <<-EOF && - object $(git rev-parse refs/heads/master:file3) + object $(git rev-parse refs/heads/main:file3) type blob tag series-A-blob @@ -193,13 +196,13 @@ test_expect_success 'A: verify tag deletion is successful' ' test_expect_success 'A: verify marks output' ' cat >expect <<-EOF && - :2 $(git rev-parse --verify master:file2) - :3 $(git rev-parse --verify master:file3) - :4 $(git rev-parse --verify master:file4) - :5 $(git rev-parse --verify master^0) + :2 $(git rev-parse --verify main:file2) + :3 $(git rev-parse --verify main:file3) + :4 $(git rev-parse --verify main:file4) + :5 $(git rev-parse --verify main^0) :6 $(git cat-file tag nested | grep object | cut -d" " -f 2) :7 $(git rev-parse --verify nested) - :8 $(git rev-parse --verify master^0) + :8 $(git rev-parse --verify main^0) EOF test_cmp expect marks.out ' @@ -217,7 +220,7 @@ test_expect_success 'A: tag blob by sha1' ' new_blob=$(echo testing | git hash-object --stdin) && cat >input <<-INPUT_END && tag series-A-blob-2 - from $(git rev-parse refs/heads/master:file3) + from $(git rev-parse refs/heads/main:file3) data <<EOF Tag blob by sha1. EOF @@ -243,7 +246,7 @@ test_expect_success 'A: tag blob by sha1' ' INPUT_END cat >expect <<-EOF && - object $(git rev-parse refs/heads/master:file3) + object $(git rev-parse refs/heads/main:file3) type blob tag series-A-blob-2 @@ -284,13 +287,13 @@ test_expect_success 'A: verify pack' ' ' test_expect_success 'A: verify diff' ' - copy=$(git rev-parse --verify master:file2) && + copy=$(git rev-parse --verify main:file2) && cat >expect <<-EOF && :000000 100755 $ZERO_OID $copy A copy-of-file2 EOF - git diff-tree -M -r master verify--import-marks >actual && + git diff-tree -M -r main verify--import-marks >actual && compare_diff_raw expect actual && - test $(git rev-parse --verify master:file2) \ + test $(git rev-parse --verify main:file2) \ = $(git rev-parse --verify verify--import-marks:copy-of-file2) ' @@ -364,7 +367,7 @@ test_expect_success 'B: fail on invalid blob sha1' ' corrupt COMMIT - from refs/heads/master + from refs/heads/main M 755 $(echo $ZERO_OID | sed -e "s/0$/1/") zero1 INPUT_END @@ -381,7 +384,7 @@ test_expect_success 'B: accept branch name "TEMP_TAG"' ' tag base COMMIT - from refs/heads/master + from refs/heads/main INPUT_END @@ -390,7 +393,7 @@ test_expect_success 'B: accept branch name "TEMP_TAG"' ' git prune" && git fast-import <input && test -f .git/TEMP_TAG && - test $(git rev-parse master) = $(git rev-parse TEMP_TAG^) + test $(git rev-parse main) = $(git rev-parse TEMP_TAG^) ' test_expect_success 'B: accept empty committer' ' @@ -528,8 +531,8 @@ test_expect_success 'B: fail on invalid committer (5)' ' test_expect_success 'C: incremental import create pack from stdin' ' newf=$(echo hi newf | git hash-object -w --stdin) && - oldf=$(git rev-parse --verify master:file2) && - thrf=$(git rev-parse --verify master:file3) && + oldf=$(git rev-parse --verify main:file2) && + thrf=$(git rev-parse --verify main:file3) && test_tick && cat >input <<-INPUT_END && commit refs/heads/branch @@ -538,7 +541,7 @@ test_expect_success 'C: incremental import create pack from stdin' ' second COMMIT - from refs/heads/master + from refs/heads/main M 644 $oldf file2/oldf M 755 $newf file2/newf D file3 @@ -560,7 +563,7 @@ test_expect_success 'C: validate reuse existing blob' ' test_expect_success 'C: verify commit' ' cat >expect <<-EOF && - parent $(git rev-parse --verify master^0) + parent $(git rev-parse --verify main^0) author $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE @@ -578,7 +581,7 @@ test_expect_success 'C: validate rename result' ' :100644 100644 $oldf $oldf R100 file2 file2/oldf :100644 000000 $thrf $zero D file3 EOF - git diff-tree -M -r master branch >actual && + git diff-tree -M -r main branch >actual && compare_diff_raw expect actual ' @@ -1698,7 +1701,7 @@ test_expect_success 'P: superproject & submodule mix' ' committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data 8 initial - from refs/heads/master + from refs/heads/main M 100644 :3 .gitmodules M 160000 :2 sub @@ -1733,8 +1736,8 @@ test_expect_success 'P: superproject & submodule mix' ' ( cd sub && git init && - git fetch --update-head-ok .. refs/heads/sub:refs/heads/master && - git checkout master + git fetch --update-head-ok .. refs/heads/sub:refs/heads/main && + git checkout main ) && git submodule init && git submodule update @@ -1758,7 +1761,7 @@ test_expect_success 'P: verbatim SHA gitlinks' ' committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data 8 initial - from refs/heads/master + from refs/heads/main M 100644 :1 .gitmodules M 160000 $SUBPREV sub @@ -3429,8 +3432,8 @@ mark :1 data 4 foo -reset refs/heads/master -commit refs/heads/master +reset refs/heads/main +commit refs/heads/main mark :2 author Full Name <user@company.tld> 1000000000 +0100 committer Full Name <user@company.tld> 1000000000 +0100 @@ -3444,7 +3447,7 @@ data 8 foo bar -commit refs/heads/master +commit refs/heads/main mark :4 author Full Name <user@company.tld> 1000000001 +0100 committer Full Name <user@company.tld> 1000000001 +0100 @@ -3461,8 +3464,8 @@ mark :1 data 4 foo -reset refs/heads/master -commit refs/heads/master +reset refs/heads/main +commit refs/heads/main mark :2 author Full Name <user@company.tld> 2000000000 +0100 committer Full Name <user@company.tld> 2000000000 +0100 @@ -3477,7 +3480,7 @@ data 73 path = sub1 url = https://void.example.com/main.git -commit refs/heads/master +commit refs/heads/main mark :4 author Full Name <user@company.tld> 2000000001 +0100 committer Full Name <user@company.tld> 2000000001 +0100 @@ -3493,7 +3496,7 @@ data 8 foo bar -commit refs/heads/master +commit refs/heads/main mark :6 author Full Name <user@company.tld> 2000000002 +0100 committer Full Name <user@company.tld> 2000000002 +0100 @@ -3511,8 +3514,8 @@ Y_INPUT_END test_expect_success 'Y: setup' ' test_oid_cache <<-EOF - Ymaster sha1:9afed2f9161ddf416c0a1863b8b0725b00070504 - Ymaster sha256:c0a1010da1df187b2e287654793df01b464bd6f8e3f17fc1481a7dadf84caee3 + Ymain sha1:9afed2f9161ddf416c0a1863b8b0725b00070504 + Ymain sha256:c0a1010da1df187b2e287654793df01b464bd6f8e3f17fc1481a7dadf84caee3 EOF ' @@ -3524,7 +3527,7 @@ test_expect_success 'Y: rewrite submodules' ' git -C sub2 fast-import --export-marks=../sub2-marks <../Y-sub-input && git fast-import --rewrite-submodules-from=sub:../Y-marks \ --rewrite-submodules-to=sub:sub2-marks <../Y-main-input && - test "$(git rev-parse master)" = "$(test_oid Ymaster)" + test "$(git rev-parse main)" = "$(test_oid Ymain)" ) ' diff --git a/t/t9301-fast-import-notes.sh b/t/t9301-fast-import-notes.sh index 14c1baa739..1ae4d7c0d3 100755 --- a/t/t9301-fast-import-notes.sh +++ b/t/t9301-fast-import-notes.sh @@ -4,12 +4,15 @@ # test_description='test git fast-import of notes objects' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_tick cat >input <<INPUT_END -commit refs/heads/master +commit refs/heads/main committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT first commit @@ -30,7 +33,7 @@ data <<EOF file baz/xyzzy in first commit EOF -commit refs/heads/master +commit refs/heads/main committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT second commit @@ -46,7 +49,7 @@ data <<EOF file baz/xyzzy in second commit EOF -commit refs/heads/master +commit refs/heads/main committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT third commit @@ -57,7 +60,7 @@ data <<EOF file foo in third commit EOF -commit refs/heads/master +commit refs/heads/main committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT fourth commit @@ -70,13 +73,13 @@ EOF INPUT_END -test_expect_success 'set up master branch' ' +test_expect_success 'set up main branch' ' git fast-import <input && - git whatchanged master + git whatchanged main ' -commit4=$(git rev-parse refs/heads/master) +commit4=$(git rev-parse refs/heads/main) commit3=$(git rev-parse "$commit4^") commit2=$(git rev-parse "$commit4~2") commit1=$(git rev-parse "$commit4~3") diff --git a/t/t9302-fast-import-unpack-limit.sh b/t/t9302-fast-import-unpack-limit.sh index bb1c39cfcc..f519e4f1bf 100755 --- a/t/t9302-fast-import-unpack-limit.sh +++ b/t/t9302-fast-import-unpack-limit.sh @@ -5,7 +5,7 @@ test_description='test git fast-import unpack limit' test_expect_success 'create loose objects on import' ' test_tick && cat >input <<-INPUT_END && - commit refs/heads/master + commit refs/heads/main committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT initial @@ -23,12 +23,12 @@ test_expect_success 'create loose objects on import' ' test_expect_success 'bigger packs are preserved' ' test_tick && cat >input <<-INPUT_END && - commit refs/heads/master + commit refs/heads/main committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE data <<COMMIT incremental should create a pack COMMIT - from refs/heads/master^0 + from refs/heads/main^0 commit refs/heads/branch committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE @@ -48,7 +48,7 @@ test_expect_success 'bigger packs are preserved' ' test_expect_success 'lookups after checkpoint works' ' hello_id=$(echo hello | git hash-object --stdin -t blob) && id="$GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE" && - before=$(git rev-parse refs/heads/master^0) && + before=$(git rev-parse refs/heads/main^0) && ( cat <<-INPUT_END && blob @@ -56,13 +56,13 @@ test_expect_success 'lookups after checkpoint works' ' data 6 hello - commit refs/heads/master + commit refs/heads/main mark :2 committer $id data <<COMMIT checkpoint after this COMMIT - from refs/heads/master^0 + from refs/heads/main^0 M 100644 :1 hello # pre-checkpoint @@ -86,10 +86,10 @@ test_expect_success 'lookups after checkpoint works' ' n=$(($n + 1)) fi && sleep 1 && - from=$(git rev-parse refs/heads/master^0) + from=$(git rev-parse refs/heads/main^0) done && cat <<-INPUT_END && - commit refs/heads/master + commit refs/heads/main committer $id data <<COMMIT make sure from "unpacked sha1 reference" works, too diff --git a/t/t9350-fast-export.sh b/t/t9350-fast-export.sh index 1372842559..409b48e244 100755 --- a/t/t9350-fast-export.sh +++ b/t/t9350-fast-export.sh @@ -4,6 +4,9 @@ # test_description='git fast-export' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup' ' @@ -31,13 +34,13 @@ test_expect_success 'setup' ' git commit -m sitzt file2 && test_tick && git tag -a -m valentin muss && - git merge -s ours master + git merge -s ours main ' test_expect_success 'fast-export | fast-import' ' - MASTER=$(git rev-parse --verify master) && + MAIN=$(git rev-parse --verify main) && REIN=$(git rev-parse --verify rein) && WER=$(git rev-parse --verify wer) && MUSS=$(git rev-parse --verify muss) && @@ -46,7 +49,7 @@ test_expect_success 'fast-export | fast-import' ' git fast-export --all >actual && (cd new && git fast-import && - test $MASTER = $(git rev-parse --verify refs/heads/master) && + test $MAIN = $(git rev-parse --verify refs/heads/main) && test $REIN = $(git rev-parse --verify refs/tags/rein) && test $WER = $(git rev-parse --verify refs/heads/wer) && test $MUSS = $(git rev-parse --verify refs/tags/muss)) <actual @@ -80,35 +83,35 @@ test_expect_success 'fast-export --mark-tags ^muss^{commit} muss' ' test_cmp expected actual ' -test_expect_success 'fast-export master~2..master' ' +test_expect_success 'fast-export main~2..main' ' - git fast-export master~2..master >actual && - sed "s/master/partial/" actual | + git fast-export main~2..main >actual && + sed "s/main/partial/" actual | (cd new && git fast-import && - test $MASTER != $(git rev-parse --verify refs/heads/partial) && - git diff --exit-code master partial && - git diff --exit-code master^ partial^ && + test $MAIN != $(git rev-parse --verify refs/heads/partial) && + git diff --exit-code main partial && + git diff --exit-code main^ partial^ && test_must_fail git rev-parse partial~2) ' -test_expect_success 'fast-export --reference-excluded-parents master~2..master' ' +test_expect_success 'fast-export --reference-excluded-parents main~2..main' ' - git fast-export --reference-excluded-parents master~2..master >actual && - grep commit.refs/heads/master actual >commit-count && + git fast-export --reference-excluded-parents main~2..main >actual && + grep commit.refs/heads/main actual >commit-count && test_line_count = 2 commit-count && - sed "s/master/rewrite/" actual | + sed "s/main/rewrite/" actual | (cd new && git fast-import && - test $MASTER = $(git rev-parse --verify refs/heads/rewrite)) + test $MAIN = $(git rev-parse --verify refs/heads/rewrite)) ' test_expect_success 'fast-export --show-original-ids' ' - git fast-export --show-original-ids master >output && + git fast-export --show-original-ids main >output && grep ^original-oid output| sed -e s/^original-oid.// | sort >actual && - git rev-list --objects master muss >objects-and-names && + git rev-list --objects main muss >objects-and-names && awk "{print \$1}" objects-and-names | sort >commits-trees-blobs && comm -23 actual commits-trees-blobs >unfound && test_must_be_empty unfound @@ -116,8 +119,8 @@ test_expect_success 'fast-export --show-original-ids' ' test_expect_success 'fast-export --show-original-ids | git fast-import' ' - git fast-export --show-original-ids master muss | git fast-import --quiet && - test $MASTER = $(git rev-parse --verify refs/heads/master) && + git fast-export --show-original-ids main muss | git fast-import --quiet && + test $MAIN = $(git rev-parse --verify refs/heads/main) && test $MUSS = $(git rev-parse --verify refs/tags/muss) ' @@ -200,7 +203,7 @@ test_expect_success 'encoding preserved if reencoding fails' ' test_expect_success 'import/export-marks' ' - git checkout -b marks master && + git checkout -b marks main && git fast-export --export-marks=tmp-marks HEAD && test -s tmp-marks && test_line_count = 3 tmp-marks && @@ -265,7 +268,7 @@ test_expect_success 'signed-tags=warn-strip' ' test_expect_success 'setup submodule' ' - git checkout -f master && + git checkout -f main && mkdir sub && ( cd sub && @@ -290,17 +293,17 @@ test_expect_success 'setup submodule' ' test_expect_success 'submodule fast-export | fast-import' ' - SUBENT1=$(git ls-tree master^ sub) && - SUBENT2=$(git ls-tree master sub) && + SUBENT1=$(git ls-tree main^ sub) && + SUBENT2=$(git ls-tree main sub) && rm -rf new && mkdir new && git --git-dir=new/.git init && git fast-export --signed-tags=strip --all >actual && (cd new && git fast-import && - test "$SUBENT1" = "$(git ls-tree refs/heads/master^ sub)" && - test "$SUBENT2" = "$(git ls-tree refs/heads/master sub)" && - git checkout master && + test "$SUBENT1" = "$(git ls-tree refs/heads/main^ sub)" && + test "$SUBENT2" = "$(git ls-tree refs/heads/main sub)" && + git checkout main && git submodule init && git submodule update && cmp sub/file ../sub/file) <actual @@ -352,7 +355,7 @@ test_expect_success 'fast-export -C -C | fast-import' ' ' -test_expect_success 'fast-export | fast-import when master is tagged' ' +test_expect_success 'fast-export | fast-import when main is tagged' ' git tag -m msg last && git fast-export -C -C --signed-tags=strip --all > output && @@ -467,8 +470,8 @@ mark :2 data 3 hi -reset refs/heads/master -commit refs/heads/master +reset refs/heads/main +commit refs/heads/main mark :3 author A U Thor <author@example.com> 1112912713 -0700 committer C O Mitter <committer@example.com> 1112912713 -0700 @@ -482,7 +485,7 @@ EOF test_expect_failure 'no exact-ref revisions included' ' ( cd limit-by-paths && - git fast-export master~2..master~1 > output && + git fast-export main~2..main~1 > output && test_cmp expected output ) ' @@ -524,7 +527,7 @@ test_expect_success 'full-tree re-shows unmodified files' ' ' test_expect_success 'set-up a few more tags for tag export tests' ' - git checkout -f master && + git checkout -f main && HEAD_TREE=$(git show -s --pretty=raw HEAD | grep tree | sed "s/tree //") && git tag tree_tag -m "tagging a tree" $HEAD_TREE && git tag -a tree_tag-obj -m "tagging a tree" $HEAD_TREE && @@ -549,7 +552,7 @@ test_expect_success 'tag-obj_tag' 'git fast-export tag-obj_tag' test_expect_success 'tag-obj_tag-obj' 'git fast-export tag-obj_tag-obj' test_expect_success 'handling tags of blobs' ' - git tag -a -m "Tag of a blob" blobtag $(git rev-parse master:file) && + git tag -a -m "Tag of a blob" blobtag $(git rev-parse main:file) && git fast-export blobtag >actual && cat >expect <<-EOF && blob @@ -592,10 +595,10 @@ test_expect_success 'directory becomes symlink' ' ) && ( cd dirtosymlink && - git fast-export master -- foo | + git fast-export main -- foo | (cd ../result && git fast-import --quiet) ) && - (cd result && git show master:foo) + (cd result && git show main:foo) ' test_expect_success 'fast-export quotes pathnames' ' @@ -643,7 +646,7 @@ mark :13 data 5 bump -commit refs/heads/master +commit refs/heads/main mark :14 author A U Thor <author@example.com> 1112912773 -0700 committer C O Mitter <committer@example.com> 1112912773 -0700 @@ -657,18 +660,18 @@ EOF test_expect_success 'avoid uninteresting refs' ' > tmp-marks && git fast-export --import-marks=tmp-marks \ - --export-marks=tmp-marks master > /dev/null && + --export-marks=tmp-marks main > /dev/null && git tag v1.0 && git branch uninteresting && echo bump > file && git commit -a -m bump && git fast-export --import-marks=tmp-marks \ - --export-marks=tmp-marks ^uninteresting ^v1.0 master > actual && + --export-marks=tmp-marks ^uninteresting ^v1.0 main > actual && test_cmp expected actual ' cat > expected << EOF -reset refs/heads/master +reset refs/heads/main from :14 EOF @@ -676,14 +679,14 @@ EOF test_expect_success 'refs are updated even if no commits need to be exported' ' > tmp-marks && git fast-export --import-marks=tmp-marks \ - --export-marks=tmp-marks master > /dev/null && + --export-marks=tmp-marks main > /dev/null && git fast-export --import-marks=tmp-marks \ - --export-marks=tmp-marks master > actual && + --export-marks=tmp-marks main > actual && test_cmp expected actual ' test_expect_success 'use refspec' ' - git fast-export --refspec refs/heads/master:refs/heads/foobar master >actual2 && + git fast-export --refspec refs/heads/main:refs/heads/foobar main >actual2 && grep "^commit " actual2 | sort | uniq >actual && echo "commit refs/heads/foobar" > expected && test_cmp expected actual @@ -736,13 +739,13 @@ test_expect_success 'merge commit gets exported with --import-marks' ' test_commit initial && git checkout -b topic && test_commit on-topic && - git checkout master && - test_commit on-master && + git checkout main && + test_commit on-main && test_tick && git merge --no-ff -m Yeah topic && echo ":1 $(git rev-parse HEAD^^)" >marks && - git fast-export --import-marks=marks master >out && + git fast-export --import-marks=marks main >out && grep Yeah out ) ' diff --git a/t/t9351-fast-export-anonymize.sh b/t/t9351-fast-export-anonymize.sh index 5ac2c3b5ee..1c6e6fcdaf 100755 --- a/t/t9351-fast-export-anonymize.sh +++ b/t/t9351-fast-export-anonymize.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='basic tests for fast-export --anonymize' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh test_expect_success 'setup simple repo' ' @@ -51,7 +54,7 @@ test_expect_success 'stream retains other as refname' ' ' test_expect_success 'stream omits other refnames' ' - ! grep master stream && + ! grep main stream && ! grep mytag stream ' @@ -85,7 +88,7 @@ test_expect_success 'repo has original shape and timestamps' ' shape () { git log --format="%m %ct" --left-right --boundary "$@" } && - (cd .. && shape master...other) >expect && + (cd .. && shape main...other) >expect && shape $main_branch...$other_branch >actual && test_cmp expect actual ' diff --git a/t/t9400-git-cvsserver-server.sh b/t/t9400-git-cvsserver-server.sh index 4a46f31c41..2d29d486ee 100755 --- a/t/t9400-git-cvsserver-server.sh +++ b/t/t9400-git-cvsserver-server.sh @@ -8,6 +8,9 @@ test_description='git-cvsserver access tests read access to a git repository with the cvs CLI client via git-cvsserver server' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh if ! test_have_prereq PERL; then @@ -45,7 +48,7 @@ test_expect_success 'setup' ' touch secondrootfile && git add secondrootfile && git commit -m "second root") && - git fetch secondroot master && + git fetch secondroot main && git merge --allow-unrelated-histories FETCH_HEAD && git clone -q --bare "$WORKDIR/.git" "$SERVERDIR" >/dev/null 2>&1 && GIT_DIR="$SERVERDIR" git config --bool gitcvs.enabled true && @@ -57,7 +60,7 @@ test_expect_success 'setup' ' # note that cvs doesn't accept absolute pathnames # as argument to co -d test_expect_success 'basic checkout' \ - 'GIT_CONFIG="$git_config" cvs -Q co -d cvswork master && + 'GIT_CONFIG="$git_config" cvs -Q co -d cvswork main && test "$(echo $(grep -v ^D cvswork/CVS/Entries|cut -d/ -f2,3,5 | head -n 1))" = "empty/1.1/" && test "$(echo $(grep -v ^D cvswork/CVS/Entries|cut -d/ -f2,3,5 | sed -ne \$p))" = "secondrootfile/1.1/"' @@ -226,7 +229,7 @@ GIT_DIR="$SERVERDIR" git config --bool gitcvs.enabled true || exit 1 test_expect_success 'gitcvs.enabled = false' \ 'GIT_DIR="$SERVERDIR" git config --bool gitcvs.enabled false && - if GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 master >cvs.log 2>&1 + if GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 main >cvs.log 2>&1 then echo unexpected cvs success false @@ -240,14 +243,14 @@ rm -fr cvswork2 test_expect_success 'gitcvs.ext.enabled = true' \ 'GIT_DIR="$SERVERDIR" git config --bool gitcvs.ext.enabled true && GIT_DIR="$SERVERDIR" git config --bool gitcvs.enabled false && - GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 main >cvs.log 2>&1 && test_cmp cvswork cvswork2' rm -fr cvswork2 test_expect_success 'gitcvs.ext.enabled = false' \ 'GIT_DIR="$SERVERDIR" git config --bool gitcvs.ext.enabled false && GIT_DIR="$SERVERDIR" git config --bool gitcvs.enabled true && - if GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 master >cvs.log 2>&1 + if GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 main >cvs.log 2>&1 then echo unexpected cvs success false @@ -261,21 +264,21 @@ rm -fr cvswork2 test_expect_success 'gitcvs.dbname' \ 'GIT_DIR="$SERVERDIR" git config --bool gitcvs.ext.enabled true && GIT_DIR="$SERVERDIR" git config gitcvs.dbname %Ggitcvs.%a.%m.sqlite && - GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 main >cvs.log 2>&1 && test_cmp cvswork cvswork2 && - test -f "$SERVERDIR/gitcvs.ext.master.sqlite" && - cmp "$SERVERDIR/gitcvs.master.sqlite" "$SERVERDIR/gitcvs.ext.master.sqlite"' + test -f "$SERVERDIR/gitcvs.ext.main.sqlite" && + cmp "$SERVERDIR/gitcvs.main.sqlite" "$SERVERDIR/gitcvs.ext.main.sqlite"' rm -fr cvswork2 test_expect_success 'gitcvs.ext.dbname' \ 'GIT_DIR="$SERVERDIR" git config --bool gitcvs.ext.enabled true && GIT_DIR="$SERVERDIR" git config gitcvs.ext.dbname %Ggitcvs1.%a.%m.sqlite && GIT_DIR="$SERVERDIR" git config gitcvs.dbname %Ggitcvs2.%a.%m.sqlite && - GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 main >cvs.log 2>&1 && test_cmp cvswork cvswork2 && - test -f "$SERVERDIR/gitcvs1.ext.master.sqlite" && - test ! -f "$SERVERDIR/gitcvs2.ext.master.sqlite" && - cmp "$SERVERDIR/gitcvs.master.sqlite" "$SERVERDIR/gitcvs1.ext.master.sqlite"' + test -f "$SERVERDIR/gitcvs1.ext.main.sqlite" && + test ! -f "$SERVERDIR/gitcvs2.ext.main.sqlite" && + cmp "$SERVERDIR/gitcvs.main.sqlite" "$SERVERDIR/gitcvs1.ext.main.sqlite"' #------------ @@ -457,7 +460,7 @@ cd "$WORKDIR" test_expect_success 'cvs update (module list supports packed refs)' ' GIT_DIR="$SERVERDIR" git pack-refs --all && GIT_CONFIG="$git_config" cvs -n up -d 2> out && - grep "cvs update: New directory \`master'\''" < out + grep "cvs update: New directory \`main'\''" < out ' #------------ @@ -499,8 +502,8 @@ test_expect_success 'cvs status (no subdirs in header)' ' cd "$WORKDIR" test_expect_success 'cvs co -c (shows module database)' ' GIT_CONFIG="$git_config" cvs co -c > out && - grep "^master[ ][ ]*master$" <out && - ! grep -v "^master[ ][ ]*master$" <out + grep "^main[ ][ ]*main$" <out && + ! grep -v "^main[ ][ ]*main$" <out ' #------------ @@ -526,7 +529,7 @@ test_expect_success 'cvs co -c (shows module database)' ' sed -e 's/^x//' -e 's/SP$/ /' > "$WORKDIR/expect" <<EOF x -xRCS file: $WORKDIR/gitcvs.git/master/merge,v +xRCS file: $WORKDIR/gitcvs.git/main/merge,v xWorking file: merge xhead: 1.4 xbranch: diff --git a/t/t9401-git-cvsserver-crlf.sh b/t/t9401-git-cvsserver-crlf.sh index c7a0dd84a4..a34805acdc 100755 --- a/t/t9401-git-cvsserver-crlf.sh +++ b/t/t9401-git-cvsserver-crlf.sh @@ -9,6 +9,9 @@ test_description='git-cvsserver -kb modes tests -kb mode for binary files when accessing a git repository using cvs CLI client via git-cvsserver server' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh marked_as () { @@ -105,14 +108,14 @@ test_expect_success 'setup' ' ' test_expect_success 'cvs co (default crlf)' ' - GIT_CONFIG="$git_config" cvs -Q co -d cvswork master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork main >cvs.log 2>&1 && test x"$(grep '/-k' cvswork/CVS/Entries cvswork/subdir/CVS/Entries)" = x"" ' rm -rf cvswork test_expect_success 'cvs co (allbinary)' ' GIT_DIR="$SERVERDIR" git config --bool gitcvs.allbinary true && - GIT_CONFIG="$git_config" cvs -Q co -d cvswork master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork main >cvs.log 2>&1 && marked_as cvswork textfile.c -kb && marked_as cvswork binfile.bin -kb && marked_as cvswork .gitattributes -kb && @@ -125,7 +128,7 @@ test_expect_success 'cvs co (allbinary)' ' rm -rf cvswork cvs.log test_expect_success 'cvs co (use attributes/allbinary)' ' GIT_DIR="$SERVERDIR" git config --bool gitcvs.usecrlfattr true && - GIT_CONFIG="$git_config" cvs -Q co -d cvswork master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork main >cvs.log 2>&1 && marked_as cvswork textfile.c "" && marked_as cvswork binfile.bin -kb && marked_as cvswork .gitattributes -kb && @@ -138,7 +141,7 @@ test_expect_success 'cvs co (use attributes/allbinary)' ' rm -rf cvswork test_expect_success 'cvs co (use attributes)' ' GIT_DIR="$SERVERDIR" git config --bool gitcvs.allbinary false && - GIT_CONFIG="$git_config" cvs -Q co -d cvswork master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork main >cvs.log 2>&1 && marked_as cvswork textfile.c "" && marked_as cvswork binfile.bin -kb && marked_as cvswork .gitattributes "" && @@ -194,7 +197,7 @@ test_expect_success 'updating' ' rm -rf cvswork test_expect_success 'cvs co (use attributes/guess)' ' GIT_DIR="$SERVERDIR" git config gitcvs.allbinary guess && - GIT_CONFIG="$git_config" cvs -Q co -d cvswork master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork main >cvs.log 2>&1 && marked_as cvswork textfile.c "" && marked_as cvswork binfile.bin -kb && marked_as cvswork .gitattributes "" && @@ -224,7 +227,7 @@ test_expect_success 'setup multi-line files' ' rm -rf cvswork test_expect_success 'cvs co (guess)' ' GIT_DIR="$SERVERDIR" git config --bool gitcvs.usecrlfattr false && - GIT_CONFIG="$git_config" cvs -Q co -d cvswork master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork main >cvs.log 2>&1 && marked_as cvswork textfile.c "" && marked_as cvswork binfile.bin -kb && marked_as cvswork .gitattributes "" && @@ -239,7 +242,7 @@ test_expect_success 'cvs co (guess)' ' ' test_expect_success 'cvs co another copy (guess)' ' - GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 master >cvs.log 2>&1 && + GIT_CONFIG="$git_config" cvs -Q co -d cvswork2 main >cvs.log 2>&1 && marked_as cvswork2 textfile.c "" && marked_as cvswork2 binfile.bin -kb && marked_as cvswork2 .gitattributes "" && @@ -335,7 +338,7 @@ test_expect_success 'update subdir of other copy (guess)' ' echo "starting update/merge" >> "${WORKDIR}/marked.log" test_expect_success 'update/merge full other copy (guess)' ' - git pull gitcvs.git master && + git pull gitcvs.git main && sed "s/3/replaced_3/" < multilineTxt.c > ml.temp && mv ml.temp multilineTxt.c && git add multilineTxt.c && diff --git a/t/t9402-git-cvsserver-refs.sh b/t/t9402-git-cvsserver-refs.sh index 6436c91a3c..2ee41f9443 100755 --- a/t/t9402-git-cvsserver-refs.sh +++ b/t/t9402-git-cvsserver-refs.sh @@ -5,6 +5,9 @@ test_description='git-cvsserver and git refspecs tests ability for git-cvsserver to switch between and compare tags, branches and other git refspecs' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./test-lib.sh ######### @@ -115,7 +118,7 @@ test_expect_success 'setup v1, b1' ' rm -rf cvswork test_expect_success 'cvs co v1' ' - cvs -f -Q co -r v1 -d cvswork master >cvs.log 2>&1 && + cvs -f -Q co -r v1 -d cvswork main >cvs.log 2>&1 && check_start_tree cvswork && check_file cvswork textfile.c v1 && check_file cvswork t2 v1 && @@ -128,7 +131,7 @@ test_expect_success 'cvs co v1' ' rm -rf cvswork test_expect_success 'cvs co b1' ' - cvs -f co -r b1 -d cvswork master >cvs.log 2>&1 && + cvs -f co -r b1 -d cvswork main >cvs.log 2>&1 && check_start_tree cvswork && check_file cvswork textfile.c v1 && check_file cvswork t2 v1 && @@ -140,7 +143,7 @@ test_expect_success 'cvs co b1' ' ' test_expect_success 'cvs co b1 [cvswork3]' ' - cvs -f co -r b1 -d cvswork3 master >cvs.log 2>&1 && + cvs -f co -r b1 -d cvswork3 main >cvs.log 2>&1 && check_start_tree cvswork3 && check_file cvswork3 textfile.c v1 && check_file cvswork3 t2 v1 && @@ -265,7 +268,7 @@ test_expect_success 'setup simple b2' ' ' test_expect_success 'cvs co b2 [into cvswork2]' ' - cvs -f co -r b2 -d cvswork2 master >cvs.log 2>&1 && + cvs -f co -r b2 -d cvswork2 main >cvs.log 2>&1 && check_start_tree cvswork && check_file cvswork textfile.c v1 && check_file cvswork t2 v1 && diff --git a/t/t9500-gitweb-standalone-no-errors.sh b/t/t9500-gitweb-standalone-no-errors.sh index b484e3e250..ee8c6e30e6 100755 --- a/t/t9500-gitweb-standalone-no-errors.sh +++ b/t/t9500-gitweb-standalone-no-errors.sh @@ -10,6 +10,9 @@ commandline, and checks that it would not write any errors or warnings to log.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./gitweb-lib.sh # ---------------------------------------------------------------------- @@ -327,7 +330,7 @@ test_expect_success \ echo "Branch" >>b && git add b && git commit -a -m "On branch" && - git checkout master && + git checkout main && git merge b && git tag merge_commit' @@ -364,7 +367,7 @@ test_expect_success \ echo "Changed and have mode changed" >07-change-mode-change && test_chmod +x 07-change-mode-change && git commit -a -m "Large commit" && - git checkout master' + git checkout main' test_expect_success \ 'commit(1): large commit' \ @@ -402,7 +405,7 @@ test_expect_success 'side-by-side: merge commit' ' test_expect_success \ 'tags: list of different types of tags' \ - 'git checkout master && + 'git checkout main && git tag -a -m "Tag commit object" tag-commit HEAD && git tag -a -m "" tag-commit-nomessage HEAD && git tag -a -m "Tag tag object" tag-tag tag-commit && @@ -443,7 +446,7 @@ test_expect_success \ test_expect_success \ 'logs: history (implicit HEAD, deleted file)' \ - 'git checkout master && + 'git checkout main && echo "to be deleted" >deleted_file && git add deleted_file && git commit -m "Add file to be deleted" && @@ -463,11 +466,11 @@ test_expect_success \ test_expect_success \ 'path_info: project/branch:file' \ - 'gitweb_run "" "/.git/master:file"' + 'gitweb_run "" "/.git/main:file"' test_expect_success \ 'path_info: project/branch:dir/' \ - 'gitweb_run "" "/.git/master:foo/"' + 'gitweb_run "" "/.git/main:foo/"' test_expect_success \ 'path_info: project/branch (non-existent)' \ @@ -479,16 +482,16 @@ test_expect_success \ test_expect_success \ 'path_info: project/branch:file (non-existent)' \ - 'gitweb_run "" "/.git/master:non-existent"' + 'gitweb_run "" "/.git/main:non-existent"' test_expect_success \ 'path_info: project/branch:dir/ (non-existent)' \ - 'gitweb_run "" "/.git/master:non-existent/"' + 'gitweb_run "" "/.git/main:non-existent/"' test_expect_success \ 'path_info: project/branch:/file' \ - 'gitweb_run "" "/.git/master:/file"' + 'gitweb_run "" "/.git/main:/file"' test_expect_success \ 'path_info: project/:/file (implicit HEAD)' \ @@ -801,7 +804,7 @@ test_expect_success \ git checkout orphan_branch || git checkout --orphan orphan_branch } && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && gitweb_run "p=.git;a=summary"' test_done diff --git a/t/t9501-gitweb-standalone-http-status.sh b/t/t9501-gitweb-standalone-http-status.sh index 2a0ffed870..141610de54 100755 --- a/t/t9501-gitweb-standalone-http-status.sh +++ b/t/t9501-gitweb-standalone-http-status.sh @@ -10,6 +10,9 @@ commandline, and checks that it returns the expected HTTP status code and message.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./gitweb-lib.sh # @@ -85,7 +88,7 @@ test_debug 'cat gitweb.headers' # snapshot hash ids test_expect_success 'snapshots: good tree-ish id' ' - gitweb_run "p=.git;a=snapshot;h=master;sf=tgz" && + gitweb_run "p=.git;a=snapshot;h=main;sf=tgz" && grep "Status: 200 OK" gitweb.output ' test_debug 'cat gitweb.headers' @@ -123,7 +126,7 @@ test_debug 'cat gitweb.output' # modification times (Last-Modified and If-Modified-Since) test_expect_success DATE_PARSER 'modification: feed last-modified' ' - gitweb_run "p=.git;a=atom;h=master" && + gitweb_run "p=.git;a=atom;h=main" && grep "Status: 200 OK" gitweb.headers && grep "Last-modified: Thu, 7 Apr 2005 22:14:13 +0000" gitweb.headers ' @@ -133,7 +136,7 @@ test_expect_success DATE_PARSER 'modification: feed if-modified-since (modified) HTTP_IF_MODIFIED_SINCE="Wed, 6 Apr 2005 22:14:13 +0000" && export HTTP_IF_MODIFIED_SINCE && test_when_finished "unset HTTP_IF_MODIFIED_SINCE" && - gitweb_run "p=.git;a=atom;h=master" && + gitweb_run "p=.git;a=atom;h=main" && grep "Status: 200 OK" gitweb.headers ' test_debug 'cat gitweb.headers' @@ -142,13 +145,13 @@ test_expect_success DATE_PARSER 'modification: feed if-modified-since (unmodifie HTTP_IF_MODIFIED_SINCE="Thu, 7 Apr 2005 22:14:13 +0000" && export HTTP_IF_MODIFIED_SINCE && test_when_finished "unset HTTP_IF_MODIFIED_SINCE" && - gitweb_run "p=.git;a=atom;h=master" && + gitweb_run "p=.git;a=atom;h=main" && grep "Status: 304 Not Modified" gitweb.headers ' test_debug 'cat gitweb.headers' test_expect_success DATE_PARSER 'modification: snapshot last-modified' ' - gitweb_run "p=.git;a=snapshot;h=master;sf=tgz" && + gitweb_run "p=.git;a=snapshot;h=main;sf=tgz" && grep "Status: 200 OK" gitweb.headers && grep "Last-modified: Thu, 7 Apr 2005 22:14:13 +0000" gitweb.headers ' @@ -158,7 +161,7 @@ test_expect_success DATE_PARSER 'modification: snapshot if-modified-since (modif HTTP_IF_MODIFIED_SINCE="Wed, 6 Apr 2005 22:14:13 +0000" && export HTTP_IF_MODIFIED_SINCE && test_when_finished "unset HTTP_IF_MODIFIED_SINCE" && - gitweb_run "p=.git;a=snapshot;h=master;sf=tgz" && + gitweb_run "p=.git;a=snapshot;h=main;sf=tgz" && grep "Status: 200 OK" gitweb.headers ' test_debug 'cat gitweb.headers' @@ -167,7 +170,7 @@ test_expect_success DATE_PARSER 'modification: snapshot if-modified-since (unmod HTTP_IF_MODIFIED_SINCE="Thu, 7 Apr 2005 22:14:13 +0000" && export HTTP_IF_MODIFIED_SINCE && test_when_finished "unset HTTP_IF_MODIFIED_SINCE" && - gitweb_run "p=.git;a=snapshot;h=master;sf=tgz" && + gitweb_run "p=.git;a=snapshot;h=main;sf=tgz" && grep "Status: 304 Not Modified" gitweb.headers ' test_debug 'cat gitweb.headers' diff --git a/t/t9502-gitweb-standalone-parse-output.sh b/t/t9502-gitweb-standalone-parse-output.sh index e38cbc97d3..9cf7ab30a8 100755 --- a/t/t9502-gitweb-standalone-parse-output.sh +++ b/t/t9502-gitweb-standalone-parse-output.sh @@ -10,6 +10,9 @@ commandline, and checks that it produces the correct output, either in the HTTP header or the actual script output.' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./gitweb-lib.sh # ---------------------------------------------------------------------- @@ -79,10 +82,10 @@ test_expect_success 'snapshot: HEAD' ' ' test_debug 'cat gitweb.headers && cat file_list' -test_expect_success 'snapshot: short branch name (master)' ' - gitweb_run "p=.git;a=snapshot;h=master;sf=tar" && - ID=$(git rev-parse --verify --short=7 master) && - check_snapshot ".git-master-$ID" +test_expect_success 'snapshot: short branch name (main)' ' + gitweb_run "p=.git;a=snapshot;h=main;sf=tar" && + ID=$(git rev-parse --verify --short=7 main) && + check_snapshot ".git-main-$ID" ' test_debug 'cat gitweb.headers && cat file_list' @@ -93,10 +96,10 @@ test_expect_success 'snapshot: short tag name (first)' ' ' test_debug 'cat gitweb.headers && cat file_list' -test_expect_success 'snapshot: full branch name (refs/heads/master)' ' - gitweb_run "p=.git;a=snapshot;h=refs/heads/master;sf=tar" && - ID=$(git rev-parse --verify --short=7 master) && - check_snapshot ".git-master-$ID" +test_expect_success 'snapshot: full branch name (refs/heads/main)' ' + gitweb_run "p=.git;a=snapshot;h=refs/heads/main;sf=tar" && + ID=$(git rev-parse --verify --short=7 main) && + check_snapshot ".git-main-$ID" ' test_debug 'cat gitweb.headers && cat file_list' diff --git a/t/t9600-cvsimport.sh b/t/t9600-cvsimport.sh index 251fdd66c4..5680849218 100755 --- a/t/t9600-cvsimport.sh +++ b/t/t9600-cvsimport.sh @@ -1,6 +1,9 @@ #!/bin/sh test_description='git cvsimport basic tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-cvs.sh if ! test_have_prereq NOT_ROOT; then @@ -159,6 +162,6 @@ test_expect_success PERL 'no .git/cvs-revisions created by default' ' ' -test_expect_success PERL 'test entire HEAD' 'test_cmp_branch_tree master' +test_expect_success PERL 'test entire HEAD' 'test_cmp_branch_tree main' test_done diff --git a/t/t9601-cvsimport-vendor-branch.sh b/t/t9601-cvsimport-vendor-branch.sh index 827d39f5bf..116cddba3a 100755 --- a/t/t9601-cvsimport-vendor-branch.sh +++ b/t/t9601-cvsimport-vendor-branch.sh @@ -32,6 +32,9 @@ # tag has been removed. test_description='git cvsimport handling of vendor branches' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-cvs.sh setup_cvs_test_repository t9601 @@ -42,43 +45,43 @@ test_expect_success PERL 'import a module with a vendor branch' ' ' -test_expect_success PERL 'check HEAD out of cvs repository' 'test_cvs_co master' +test_expect_success PERL 'check HEAD out of cvs repository' 'test_cvs_co main' -test_expect_success PERL 'check master out of git repository' 'test_git_co master' +test_expect_success PERL 'check main out of git repository' 'test_git_co main' test_expect_success PERL 'check a file that was imported once' ' - test_cmp_branch_file master imported-once.txt + test_cmp_branch_file main imported-once.txt ' test_expect_failure PERL 'check a file that was imported twice' ' - test_cmp_branch_file master imported-twice.txt + test_cmp_branch_file main imported-twice.txt ' test_expect_success PERL 'check a file that was imported then modified on HEAD' ' - test_cmp_branch_file master imported-modified.txt + test_cmp_branch_file main imported-modified.txt ' test_expect_success PERL 'check a file that was imported, modified, then imported again' ' - test_cmp_branch_file master imported-modified-imported.txt + test_cmp_branch_file main imported-modified-imported.txt ' test_expect_success PERL 'check a file that was added to HEAD then imported' ' - test_cmp_branch_file master added-imported.txt + test_cmp_branch_file main added-imported.txt ' test_expect_success PERL 'a vendor branch whose tag has been removed' ' - test_cmp_branch_file master imported-anonymously.txt + test_cmp_branch_file main imported-anonymously.txt ' diff --git a/t/t9602-cvsimport-branches-tags.sh b/t/t9602-cvsimport-branches-tags.sh index e1db323f54..e5266c9a87 100755 --- a/t/t9602-cvsimport-branches-tags.sh +++ b/t/t9602-cvsimport-branches-tags.sh @@ -4,6 +4,9 @@ # t9602/README. test_description='git cvsimport handling of branches and tags' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-cvs.sh setup_cvs_test_repository t9602 @@ -14,9 +17,9 @@ test_expect_success PERL 'import module' ' ' -test_expect_success PERL 'test branch master' ' +test_expect_success PERL 'test branch main' ' - test_cmp_branch_tree master + test_cmp_branch_tree main ' diff --git a/t/t9603-cvsimport-patchsets.sh b/t/t9603-cvsimport-patchsets.sh index e7a91611dc..0e9daa5768 100755 --- a/t/t9603-cvsimport-patchsets.sh +++ b/t/t9603-cvsimport-patchsets.sh @@ -12,6 +12,9 @@ # bug. test_description='git cvsimport testing for correct patchset estimation' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-cvs.sh setup_cvs_test_repository t9603 @@ -20,16 +23,16 @@ test_expect_failure PERL 'import with criss cross times on revisions' ' git cvsimport -p"-x" -C module-git module && ( cd module-git && - git log --pretty=format:%s > ../actual-master && + git log --pretty=format:%s > ../actual-main && git log A~2..A --pretty="format:%s %ad" -- > ../actual-A && - echo "" >> ../actual-master && + echo "" >> ../actual-main && echo "" >> ../actual-A ) && echo "Rev 4 Rev 3 Rev 2 -Rev 1" > expect-master && - test_cmp expect-master actual-master && +Rev 1" > expect-main && + test_cmp expect-main actual-main && echo "Rev 5 Branch A Wed Mar 11 19:09:10 2009 +0000 Rev 4 Branch A Wed Mar 11 19:03:52 2009 +0000" > expect-A && diff --git a/t/t9800-git-p4-basic.sh b/t/t9800-git-p4-basic.sh index c98c1dfc23..81bc8e8da1 100755 --- a/t/t9800-git-p4-basic.sh +++ b/t/t9800-git-p4-basic.sh @@ -2,6 +2,9 @@ test_description='git p4 tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-p4.sh test_expect_success 'start p4d' ' @@ -226,7 +229,7 @@ test_expect_success 'clone --bare should make a bare repository' ' git config --get --bool core.bare true && git rev-parse --verify refs/remotes/p4/master && git rev-parse --verify refs/remotes/p4/HEAD && - git rev-parse --verify refs/heads/master && + git rev-parse --verify refs/heads/main && git rev-parse --verify HEAD ) ' diff --git a/t/t9801-git-p4-branch.sh b/t/t9801-git-p4-branch.sh index a3abd778f9..56e64697a8 100755 --- a/t/t9801-git-p4-branch.sh +++ b/t/t9801-git-p4-branch.sh @@ -2,6 +2,9 @@ test_description='git p4 tests for p4 branches' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-p4.sh test_expect_success 'start p4d' ' @@ -67,7 +70,7 @@ test_expect_success 'import main, no branch detection' ' ( cd "$git" && git log --oneline --graph --decorate --all && - git rev-list master -- >wc && + git rev-list main -- >wc && test_line_count = 4 wc ) ' @@ -78,7 +81,7 @@ test_expect_success 'import branch1, no branch detection' ' ( cd "$git" && git log --oneline --graph --decorate --all && - git rev-list master -- >wc && + git rev-list main -- >wc && test_line_count = 2 wc ) ' @@ -89,7 +92,7 @@ test_expect_success 'import branch2, no branch detection' ' ( cd "$git" && git log --oneline --graph --decorate --all && - git rev-list master -- >wc && + git rev-list main -- >wc && test_line_count = 2 wc ) ' @@ -100,7 +103,7 @@ test_expect_success 'import depot, no branch detection' ' ( cd "$git" && git log --oneline --graph --decorate --all && - git rev-list master -- >wc && + git rev-list main -- >wc && test_line_count = 8 wc ) ' @@ -114,7 +117,7 @@ test_expect_success 'import depot, branch detection' ' git log --oneline --graph --decorate --all && # 4 main commits - git rev-list master -- >wc && + git rev-list main -- >wc && test_line_count = 4 wc && # 3 main, 1 integrate, 1 on branch2 @@ -137,7 +140,7 @@ test_expect_success 'import depot, branch detection, branchList branch definitio git log --oneline --graph --decorate --all && # 4 main commits - git rev-list master -- >wc && + git rev-list main -- >wc && test_line_count = 4 wc && # 3 main, 1 integrate, 1 on branch2 @@ -484,7 +487,7 @@ test_expect_success 'use-client-spec detect-branches files in top-level' ' ( cd "$git" && git p4 sync --detect-branches --use-client-spec //depot/usecs@all && - git checkout -b master p4/usecs/b1 && + git checkout -b main p4/usecs/b1 && test_path_is_file b1-file1 && test_path_is_missing b2-file2 && test_path_is_missing b1 && @@ -537,7 +540,7 @@ test_expect_success 'use-client-spec detect-branches skips files in branches' ' ( cd "$git" && git p4 sync --detect-branches --use-client-spec //depot/usecs@all && - git checkout -b master p4/usecs/b3 && + git checkout -b main p4/usecs/b3 && test_path_is_file b1-file1 && test_path_is_file b3-file3_2 && test_path_is_missing b3-file3_1 diff --git a/t/t9806-git-p4-options.sh b/t/t9806-git-p4-options.sh index 4e794a01bf..c26d297433 100755 --- a/t/t9806-git-p4-options.sh +++ b/t/t9806-git-p4-options.sh @@ -2,6 +2,9 @@ test_description='git p4 options' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-p4.sh test_expect_success 'start p4d' ' @@ -27,14 +30,14 @@ test_expect_success 'clone no --git-dir' ' test_must_fail git p4 clone --git-dir=xx //depot ' -test_expect_success 'clone --branch should checkout master' ' +test_expect_success 'clone --branch should checkout main' ' git p4 clone --branch=refs/remotes/p4/sb --dest="$git" //depot && test_when_finished cleanup_git && ( cd "$git" && git rev-parse refs/remotes/p4/sb >sb && - git rev-parse refs/heads/master >master && - test_cmp sb master && + git rev-parse refs/heads/main >main && + test_cmp sb main && git rev-parse HEAD >head && test_cmp sb head ) @@ -147,22 +150,22 @@ test_expect_success 'clone --changesfile, @all' ' test_must_fail git p4 clone --changesfile="$TRASH_DIRECTORY/cf" --dest="$git" //depot@all ' -# imports both master and p4/master in refs/heads +# imports both main and p4/master in refs/heads # requires --import-local on sync to find p4 refs/heads -# does not update master on sync, just p4/master +# does not update main on sync, just p4/master test_expect_success 'clone/sync --import-local' ' git p4 clone --import-local --dest="$git" //depot@1,2 && test_when_finished cleanup_git && ( cd "$git" && - git log --oneline refs/heads/master >lines && + git log --oneline refs/heads/main >lines && test_line_count = 2 lines && git log --oneline refs/heads/p4/master >lines && test_line_count = 2 lines && test_must_fail git p4 sync && git p4 sync --import-local && - git log --oneline refs/heads/master >lines && + git log --oneline refs/heads/main >lines && test_line_count = 2 lines && git log --oneline refs/heads/p4/master >lines && test_line_count = 3 lines @@ -174,7 +177,7 @@ test_expect_success 'clone --max-changes' ' test_when_finished cleanup_git && ( cd "$git" && - git log --oneline refs/heads/master >lines && + git log --oneline refs/heads/main >lines && test_line_count = 2 lines ) ' @@ -237,7 +240,7 @@ test_expect_success 'clone --use-client-spec' ' git init && git config git-p4.useClientSpec true && git p4 sync //depot/... && - git checkout -b master p4/master && + git checkout -b main p4/master && test_path_is_file bus/dir/f4 && test_path_is_missing file1 ) diff --git a/t/t9807-git-p4-submit.sh b/t/t9807-git-p4-submit.sh index eaaae414a1..7d4109f29d 100755 --- a/t/t9807-git-p4-submit.sh +++ b/t/t9807-git-p4-submit.sh @@ -2,6 +2,9 @@ test_description='git p4 submit' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-p4.sh test_expect_success 'start p4d' ' @@ -114,7 +117,7 @@ test_expect_success 'submit with allowSubmit' ' git config git-p4.skipSubmitEdit true && git config git-p4.allowSubmit "nobranch" && test_must_fail git p4 submit && - git config git-p4.allowSubmit "nobranch,master" && + git config git-p4.allowSubmit "nobranch,main" && git p4 submit ) ' diff --git a/t/t9811-git-p4-label-import.sh b/t/t9811-git-p4-label-import.sh index c1446f26ab..5ac5383fb7 100755 --- a/t/t9811-git-p4-label-import.sh +++ b/t/t9811-git-p4-label-import.sh @@ -2,6 +2,9 @@ test_description='git p4 label tests' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-git-p4.sh test_expect_success 'start p4d' ' @@ -185,7 +188,7 @@ test_expect_success 'tag that cannot be exported' ' git add main/f12 && git commit -m "adding f12" && git tag -m "tag on a_branch" GIT_TAG_ON_A_BRANCH && - git checkout master && + git checkout main && git p4 submit --export-labels ) && ( diff --git a/t/t9902-completion.sh b/t/t9902-completion.sh index a1c4f1f6d4..fb67262fc8 100755 --- a/t/t9902-completion.sh +++ b/t/t9902-completion.sh @@ -5,6 +5,9 @@ test_description='test bash completion' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=master +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-bash.sh complete () @@ -2380,4 +2383,24 @@ test_expect_success 'sourcing the completion script clears cached --options' ' verbose test -z "$__gitcomp_builtin_notes_edit" ' +test_expect_success '__git_complete' ' + unset -f __git_wrap__git_main && + + __git_complete foo __git_main && + __git_have_func __git_wrap__git_main && + unset -f __git_wrap__git_main && + + __git_complete gf _git_fetch && + __git_have_func __git_wrap_git_fetch && + + __git_complete foo git && + __git_have_func __git_wrap__git_main && + unset -f __git_wrap__git_main && + + __git_complete gd git_diff && + __git_have_func __git_wrap_git_diff && + + test_must_fail __git_complete ga missing +' + test_done diff --git a/t/t9903-bash-prompt.sh b/t/t9903-bash-prompt.sh index ab5da2cabc..bbd513bab0 100755 --- a/t/t9903-bash-prompt.sh +++ b/t/t9903-bash-prompt.sh @@ -5,6 +5,9 @@ test_description='test git-specific bash prompt functions' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + . ./lib-bash.sh . "$GIT_BUILD_DIR/contrib/completion/git-prompt.sh" @@ -28,7 +31,7 @@ test_expect_success 'setup for prompt tests' ' echo 3 >file && git commit -m "third b1" file && git tag -a -m msg2 t2 && - git checkout -b b2 master && + git checkout -b b2 main && echo 0 >file && git commit -m "second b2" file && echo 00 >file && @@ -37,20 +40,20 @@ test_expect_success 'setup for prompt tests' ' git commit -m "yet another b2" file && mkdir ignored_dir && echo "ignored_dir/" >>.gitignore && - git checkout master + git checkout main ' test_expect_success 'prompt - branch name' ' - printf " (master)" >expected && + printf " (main)" >expected && __git_ps1 >"$actual" && test_cmp expected "$actual" ' test_expect_success SYMLINKS 'prompt - branch name - symlink symref' ' - printf " (master)" >expected && - test_when_finished "git checkout master" && + printf " (main)" >expected && + test_when_finished "git checkout main" && test_config core.preferSymlinkRefs true && - git checkout master && + git checkout main && __git_ps1 >"$actual" && test_cmp expected "$actual" ' @@ -58,7 +61,7 @@ test_expect_success SYMLINKS 'prompt - branch name - symlink symref' ' test_expect_success 'prompt - unborn branch' ' printf " (unborn)" >expected && git checkout --orphan unborn && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && __git_ps1 >"$actual" && test_cmp expected "$actual" ' @@ -72,7 +75,7 @@ test_expect_success FUNNYNAMES 'prompt - with newline in path' ' with newline" && mkdir "$repo_with_newline" && - printf " (master)" >expected && + printf " (main)" >expected && git init "$repo_with_newline" && test_when_finished "rm -rf \"$repo_with_newline\"" && mkdir "$repo_with_newline"/subdir && @@ -87,7 +90,7 @@ test_expect_success 'prompt - detached head' ' printf " ((%s...))" $(git log -1 --format="%h" --abbrev=13 b1^) >expected && test_config core.abbrev 13 && git checkout b1^ && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && __git_ps1 >"$actual" && test_cmp expected "$actual" ' @@ -95,7 +98,7 @@ test_expect_success 'prompt - detached head' ' test_expect_success 'prompt - describe detached head - contains' ' printf " ((t2~1))" >expected && git checkout b1^ && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && ( GIT_PS1_DESCRIBE_STYLE=contains && __git_ps1 >"$actual" @@ -106,7 +109,7 @@ test_expect_success 'prompt - describe detached head - contains' ' test_expect_success 'prompt - describe detached head - branch' ' printf " ((tags/t2~1))" >expected && git checkout b1^ && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && ( GIT_PS1_DESCRIBE_STYLE=branch && __git_ps1 >"$actual" @@ -117,7 +120,7 @@ test_expect_success 'prompt - describe detached head - branch' ' test_expect_success 'prompt - describe detached head - describe' ' printf " ((t1-1-g%s))" $(git log -1 --format="%h" b1^) >expected && git checkout b1^ && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && ( GIT_PS1_DESCRIBE_STYLE=describe && __git_ps1 >"$actual" @@ -128,7 +131,7 @@ test_expect_success 'prompt - describe detached head - describe' ' test_expect_success 'prompt - describe detached head - default' ' printf " ((t2))" >expected && git checkout --detach b1 && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && __git_ps1 >"$actual" && test_cmp expected "$actual" ' @@ -152,7 +155,7 @@ test_expect_success 'prompt - deep inside .git directory' ' ' test_expect_success 'prompt - inside bare repository' ' - printf " (BARE:master)" >expected && + printf " (BARE:main)" >expected && git init --bare bare.git && test_when_finished "rm -rf bare.git" && ( @@ -172,7 +175,7 @@ test_expect_success 'prompt - interactive rebase' ' test_when_finished "rm -f fake_editor.sh" && test_set_editor "$TRASH_DIRECTORY/fake_editor.sh" && git checkout b1 && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && git rebase -i HEAD^ && test_when_finished "git rebase --abort" && __git_ps1 >"$actual" && @@ -182,7 +185,7 @@ test_expect_success 'prompt - interactive rebase' ' test_expect_success 'prompt - rebase merge' ' printf " (b2|REBASE 1/3)" >expected && git checkout b2 && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && test_must_fail git rebase --merge b1 b2 && test_when_finished "git rebase --abort" && __git_ps1 >"$actual" && @@ -192,7 +195,7 @@ test_expect_success 'prompt - rebase merge' ' test_expect_success 'prompt - rebase am' ' printf " (b2|REBASE 1/3)" >expected && git checkout b2 && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && test_must_fail git rebase --apply b1 b2 && test_when_finished "git rebase --abort" && __git_ps1 >"$actual" && @@ -202,7 +205,7 @@ test_expect_success 'prompt - rebase am' ' test_expect_success 'prompt - merge' ' printf " (b1|MERGING)" >expected && git checkout b1 && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && test_must_fail git merge b2 && test_when_finished "git reset --hard" && __git_ps1 >"$actual" && @@ -210,7 +213,7 @@ test_expect_success 'prompt - merge' ' ' test_expect_success 'prompt - cherry-pick' ' - printf " (master|CHERRY-PICKING)" >expected && + printf " (main|CHERRY-PICKING)" >expected && test_must_fail git cherry-pick b1 b1^ && test_when_finished "git cherry-pick --abort" && __git_ps1 >"$actual" && @@ -222,7 +225,7 @@ test_expect_success 'prompt - cherry-pick' ' ' test_expect_success 'prompt - revert' ' - printf " (master|REVERTING)" >expected && + printf " (main|REVERTING)" >expected && test_must_fail git revert b1^ b1 && test_when_finished "git revert --abort" && __git_ps1 >"$actual" && @@ -234,7 +237,7 @@ test_expect_success 'prompt - revert' ' ' test_expect_success 'prompt - bisect' ' - printf " (master|BISECTING)" >expected && + printf " (main|BISECTING)" >expected && git bisect start && test_when_finished "git bisect reset" && __git_ps1 >"$actual" && @@ -242,7 +245,7 @@ test_expect_success 'prompt - bisect' ' ' test_expect_success 'prompt - dirty status indicator - clean' ' - printf " (master)" >expected && + printf " (main)" >expected && ( GIT_PS1_SHOWDIRTYSTATE=y && __git_ps1 >"$actual" @@ -251,7 +254,7 @@ test_expect_success 'prompt - dirty status indicator - clean' ' ' test_expect_success 'prompt - dirty status indicator - dirty worktree' ' - printf " (master *)" >expected && + printf " (main *)" >expected && echo "dirty" >file && test_when_finished "git reset --hard" && ( @@ -262,7 +265,7 @@ test_expect_success 'prompt - dirty status indicator - dirty worktree' ' ' test_expect_success 'prompt - dirty status indicator - dirty index' ' - printf " (master +)" >expected && + printf " (main +)" >expected && echo "dirty" >file && test_when_finished "git reset --hard" && git add -u && @@ -274,7 +277,7 @@ test_expect_success 'prompt - dirty status indicator - dirty index' ' ' test_expect_success 'prompt - dirty status indicator - dirty index and worktree' ' - printf " (master *+)" >expected && + printf " (main *+)" >expected && echo "dirty index" >file && test_when_finished "git reset --hard" && git add -u && @@ -288,7 +291,7 @@ test_expect_success 'prompt - dirty status indicator - dirty index and worktree' test_expect_success 'prompt - dirty status indicator - orphan branch - clean' ' printf " (orphan #)" >expected && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && git checkout --orphan orphan && git reset --hard && ( @@ -300,7 +303,7 @@ test_expect_success 'prompt - dirty status indicator - orphan branch - clean' ' test_expect_success 'prompt - dirty status indicator - orphan branch - dirty index' ' printf " (orphan +)" >expected && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && git checkout --orphan orphan && ( GIT_PS1_SHOWDIRTYSTATE=y && @@ -311,7 +314,7 @@ test_expect_success 'prompt - dirty status indicator - orphan branch - dirty ind test_expect_success 'prompt - dirty status indicator - orphan branch - dirty index and worktree' ' printf " (orphan *+)" >expected && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && git checkout --orphan orphan && >file && ( @@ -322,7 +325,7 @@ test_expect_success 'prompt - dirty status indicator - orphan branch - dirty ind ' test_expect_success 'prompt - dirty status indicator - shell variable unset with config disabled' ' - printf " (master)" >expected && + printf " (main)" >expected && echo "dirty" >file && test_when_finished "git reset --hard" && test_config bash.showDirtyState false && @@ -334,7 +337,7 @@ test_expect_success 'prompt - dirty status indicator - shell variable unset with ' test_expect_success 'prompt - dirty status indicator - shell variable unset with config enabled' ' - printf " (master)" >expected && + printf " (main)" >expected && echo "dirty" >file && test_when_finished "git reset --hard" && test_config bash.showDirtyState true && @@ -346,7 +349,7 @@ test_expect_success 'prompt - dirty status indicator - shell variable unset with ' test_expect_success 'prompt - dirty status indicator - shell variable set with config disabled' ' - printf " (master)" >expected && + printf " (main)" >expected && echo "dirty" >file && test_when_finished "git reset --hard" && test_config bash.showDirtyState false && @@ -358,7 +361,7 @@ test_expect_success 'prompt - dirty status indicator - shell variable set with c ' test_expect_success 'prompt - dirty status indicator - shell variable set with config enabled' ' - printf " (master *)" >expected && + printf " (main *)" >expected && echo "dirty" >file && test_when_finished "git reset --hard" && test_config bash.showDirtyState true && @@ -382,7 +385,7 @@ test_expect_success 'prompt - dirty status indicator - not shown inside .git dir ' test_expect_success 'prompt - stash status indicator - no stash' ' - printf " (master)" >expected && + printf " (main)" >expected && ( GIT_PS1_SHOWSTASHSTATE=y && __git_ps1 >"$actual" @@ -391,7 +394,7 @@ test_expect_success 'prompt - stash status indicator - no stash' ' ' test_expect_success 'prompt - stash status indicator - stash' ' - printf " (master $)" >expected && + printf " (main $)" >expected && echo 2 >file && git stash && test_when_finished "git stash drop" && @@ -417,7 +420,7 @@ test_expect_success 'prompt - stash status indicator - not shown inside .git dir ' test_expect_success 'prompt - untracked files status indicator - no untracked files' ' - printf " (master)" >expected && + printf " (main)" >expected && ( GIT_PS1_SHOWUNTRACKEDFILES=y && cd otherrepo && @@ -427,7 +430,7 @@ test_expect_success 'prompt - untracked files status indicator - no untracked fi ' test_expect_success 'prompt - untracked files status indicator - untracked files' ' - printf " (master %%)" >expected && + printf " (main %%)" >expected && ( GIT_PS1_SHOWUNTRACKEDFILES=y && __git_ps1 >"$actual" @@ -436,7 +439,7 @@ test_expect_success 'prompt - untracked files status indicator - untracked files ' test_expect_success 'prompt - untracked files status indicator - empty untracked dir' ' - printf " (master)" >expected && + printf " (main)" >expected && mkdir otherrepo/untracked-dir && test_when_finished "rm -rf otherrepo/untracked-dir" && ( @@ -448,7 +451,7 @@ test_expect_success 'prompt - untracked files status indicator - empty untracked ' test_expect_success 'prompt - untracked files status indicator - non-empty untracked dir' ' - printf " (master %%)" >expected && + printf " (main %%)" >expected && mkdir otherrepo/untracked-dir && test_when_finished "rm -rf otherrepo/untracked-dir" && >otherrepo/untracked-dir/untracked-file && @@ -461,7 +464,7 @@ test_expect_success 'prompt - untracked files status indicator - non-empty untra ' test_expect_success 'prompt - untracked files status indicator - untracked files outside cwd' ' - printf " (master %%)" >expected && + printf " (main %%)" >expected && ( mkdir -p ignored_dir && cd ignored_dir && @@ -472,7 +475,7 @@ test_expect_success 'prompt - untracked files status indicator - untracked files ' test_expect_success 'prompt - untracked files status indicator - shell variable unset with config disabled' ' - printf " (master)" >expected && + printf " (main)" >expected && test_config bash.showUntrackedFiles false && ( sane_unset GIT_PS1_SHOWUNTRACKEDFILES && @@ -482,7 +485,7 @@ test_expect_success 'prompt - untracked files status indicator - shell variable ' test_expect_success 'prompt - untracked files status indicator - shell variable unset with config enabled' ' - printf " (master)" >expected && + printf " (main)" >expected && test_config bash.showUntrackedFiles true && ( sane_unset GIT_PS1_SHOWUNTRACKEDFILES && @@ -492,7 +495,7 @@ test_expect_success 'prompt - untracked files status indicator - shell variable ' test_expect_success 'prompt - untracked files status indicator - shell variable set with config disabled' ' - printf " (master)" >expected && + printf " (main)" >expected && test_config bash.showUntrackedFiles false && ( GIT_PS1_SHOWUNTRACKEDFILES=y && @@ -502,7 +505,7 @@ test_expect_success 'prompt - untracked files status indicator - shell variable ' test_expect_success 'prompt - untracked files status indicator - shell variable set with config enabled' ' - printf " (master %%)" >expected && + printf " (main %%)" >expected && test_config bash.showUntrackedFiles true && ( GIT_PS1_SHOWUNTRACKEDFILES=y && @@ -522,13 +525,13 @@ test_expect_success 'prompt - untracked files status indicator - not shown insid ' test_expect_success 'prompt - format string starting with dash' ' - printf -- "-master" >expected && + printf -- "-main" >expected && __git_ps1 "-%s" >"$actual" && test_cmp expected "$actual" ' test_expect_success 'prompt - pc mode' ' - printf "BEFORE: (\${__git_ps1_branch_name}):AFTER\\nmaster" >expected && + printf "BEFORE: (\${__git_ps1_branch_name}):AFTER\\nmain" >expected && ( __git_ps1 "BEFORE:" ":AFTER" >"$actual" && test_must_be_empty "$actual" && @@ -538,7 +541,7 @@ test_expect_success 'prompt - pc mode' ' ' test_expect_success 'prompt - bash color pc mode - branch name' ' - printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear}):AFTER\\nmaster" >expected && + printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear}):AFTER\\nmain" >expected && ( GIT_PS1_SHOWCOLORHINTS=y && __git_ps1 "BEFORE:" ":AFTER" >"$actual" && @@ -550,7 +553,7 @@ test_expect_success 'prompt - bash color pc mode - branch name' ' test_expect_success 'prompt - bash color pc mode - detached head' ' printf "BEFORE: (${c_red}\${__git_ps1_branch_name}${c_clear}):AFTER\\n(%s...)" $(git log -1 --format="%h" b1^) >expected && git checkout b1^ && - test_when_finished "git checkout master" && + test_when_finished "git checkout main" && ( GIT_PS1_SHOWCOLORHINTS=y && __git_ps1 "BEFORE:" ":AFTER" && @@ -560,7 +563,7 @@ test_expect_success 'prompt - bash color pc mode - detached head' ' ' test_expect_success 'prompt - bash color pc mode - dirty status indicator - dirty worktree' ' - printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_red}*${c_clear}):AFTER\\nmaster" >expected && + printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_red}*${c_clear}):AFTER\\nmain" >expected && echo "dirty" >file && test_when_finished "git reset --hard" && ( @@ -573,7 +576,7 @@ test_expect_success 'prompt - bash color pc mode - dirty status indicator - dirt ' test_expect_success 'prompt - bash color pc mode - dirty status indicator - dirty index' ' - printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_green}+${c_clear}):AFTER\\nmaster" >expected && + printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_green}+${c_clear}):AFTER\\nmain" >expected && echo "dirty" >file && test_when_finished "git reset --hard" && git add -u && @@ -587,7 +590,7 @@ test_expect_success 'prompt - bash color pc mode - dirty status indicator - dirt ' test_expect_success 'prompt - bash color pc mode - dirty status indicator - dirty index and worktree' ' - printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_red}*${c_green}+${c_clear}):AFTER\\nmaster" >expected && + printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_red}*${c_green}+${c_clear}):AFTER\\nmain" >expected && echo "dirty index" >file && test_when_finished "git reset --hard" && git add -u && @@ -602,7 +605,7 @@ test_expect_success 'prompt - bash color pc mode - dirty status indicator - dirt ' test_expect_success 'prompt - bash color pc mode - dirty status indicator - before root commit' ' - printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_green}#${c_clear}):AFTER\\nmaster" >expected && + printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_green}#${c_clear}):AFTER\\nmain" >expected && ( GIT_PS1_SHOWDIRTYSTATE=y && GIT_PS1_SHOWCOLORHINTS=y && @@ -628,7 +631,7 @@ test_expect_success 'prompt - bash color pc mode - inside .git directory' ' ' test_expect_success 'prompt - bash color pc mode - stash status indicator' ' - printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_lblue}\$${c_clear}):AFTER\\nmaster" >expected && + printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_lblue}\$${c_clear}):AFTER\\nmain" >expected && echo 2 >file && git stash && test_when_finished "git stash drop" && @@ -642,7 +645,7 @@ test_expect_success 'prompt - bash color pc mode - stash status indicator' ' ' test_expect_success 'prompt - bash color pc mode - untracked files status indicator' ' - printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_red}%%${c_clear}):AFTER\\nmaster" >expected && + printf "BEFORE: (${c_green}\${__git_ps1_branch_name}${c_clear} ${c_red}%%${c_clear}):AFTER\\nmain" >expected && ( GIT_PS1_SHOWUNTRACKEDFILES=y && GIT_PS1_SHOWCOLORHINTS=y && @@ -653,7 +656,7 @@ test_expect_success 'prompt - bash color pc mode - untracked files status indica ' test_expect_success 'prompt - zsh color pc mode' ' - printf "BEFORE: (%%F{green}master%%f):AFTER" >expected && + printf "BEFORE: (%%F{green}main%%f):AFTER" >expected && ( ZSH_VERSION=5.0.0 && GIT_PS1_SHOWCOLORHINTS=y && @@ -664,7 +667,7 @@ test_expect_success 'prompt - zsh color pc mode' ' ' test_expect_success 'prompt - hide if pwd ignored - env var unset, config disabled' ' - printf " (master)" >expected && + printf " (main)" >expected && test_config bash.hideIfPwdIgnored false && ( cd ignored_dir && @@ -685,7 +688,7 @@ test_expect_success 'prompt - hide if pwd ignored - env var unset, config disabl ' test_expect_success 'prompt - hide if pwd ignored - env var unset, config unset' ' - printf " (master)" >expected && + printf " (main)" >expected && ( cd ignored_dir && __git_ps1 >"$actual" @@ -704,7 +707,7 @@ test_expect_success 'prompt - hide if pwd ignored - env var unset, config unset, ' test_expect_success 'prompt - hide if pwd ignored - env var set, config disabled' ' - printf " (master)" >expected && + printf " (main)" >expected && test_config bash.hideIfPwdIgnored false && ( cd ignored_dir && diff --git a/t/test-bundle-functions.sh b/t/test-bundle-functions.sh new file mode 100644 index 0000000000..cf7ed818b2 --- /dev/null +++ b/t/test-bundle-functions.sh @@ -0,0 +1,42 @@ +# Library of git-bundle related functions. + +# Display the pack data contained in the bundle file, bypassing the +# header that contains the signature, prerequisites and references. +convert_bundle_to_pack () { + while read x && test -n "$x" + do + :; + done + cat +} + +# Check count of objects in a bundle file. +# We can use "--thin" opiton to check thin pack, which must be fixed by +# command `git-index-pack --fix-thin --stdin`. +test_bundle_object_count () { + thin= + if test "$1" = "--thin" + then + thin=t + shift + fi + if test $# -ne 2 + then + echo >&2 "args should be: <bundle> <count>" + return 1 + fi + bundle=$1 + pack=$bundle.pack + convert_bundle_to_pack <"$bundle" >"$pack" && + if test -n "$thin" + then + mv "$pack" "$bundle.thin.pack" && + git index-pack --stdin --fix-thin "$pack" <"$bundle.thin.pack" + else + git index-pack "$pack" + fi || return 1 + count=$(git show-index <"${pack%pack}idx" | wc -l) && + test $2 = $count && return 0 + echo >&2 "error: object count for $bundle is $count, not $2" + return 1 +} diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh index 999982fe4a..6bca002316 100644 --- a/t/test-lib-functions.sh +++ b/t/test-lib-functions.sh @@ -178,19 +178,28 @@ debug () { GIT_DEBUGGER="${GIT_DEBUGGER}" "$@" <&6 >&5 2>&7 } -# Call test_commit with the arguments -# [-C <directory>] <message> [<file> [<contents> [<tag>]]]" +# Usage: test_commit [options] <message> [<file> [<contents> [<tag>]]] +# -C <dir>: +# Run all git commands in directory <dir> +# --notick +# Do not call test_tick before making a commit +# --append +# Use "echo >>" instead of "echo >" when writing "<contents>" to +# "<file>" +# --signoff +# Invoke "git commit" with --signoff +# --author <author> +# Invoke "git commit" with --author <author> # # This will commit a file with the given contents and the given commit # message, and tag the resulting commit with the given tag name. # # <file>, <contents>, and <tag> all default to <message>. -# -# If the first argument is "-C", the second argument is used as a path for -# the git invocations. test_commit () { notick= && + append= && + author= && signoff= && indir= && while test $# != 0 @@ -199,6 +208,13 @@ test_commit () { --notick) notick=yes ;; + --append) + append=yes + ;; + --author) + author="$2" + shift + ;; --signoff) signoff="$1" ;; @@ -214,13 +230,20 @@ test_commit () { done && indir=${indir:+"$indir"/} && file=${2:-"$1.t"} && - echo "${3-$1}" > "$indir$file" && + if test -n "$append" + then + echo "${3-$1}" >>"$indir$file" + else + echo "${3-$1}" >"$indir$file" + fi && git ${indir:+ -C "$indir"} add "$file" && if test -z "$notick" then test_tick fi && - git ${indir:+ -C "$indir"} commit $signoff -m "$1" && + git ${indir:+ -C "$indir"} commit \ + ${author:+ --author "$author"} \ + $signoff -m "$1" && git ${indir:+ -C "$indir"} tag "${4:-$1}" } @@ -367,9 +390,14 @@ test_chmod () { git update-index --add "--chmod=$@" } -# Get the modebits from a file or directory. +# Get the modebits from a file or directory, ignoring the setgid bit (g+s). +# This bit is inherited by subdirectories at their creation. So we remove it +# from the returning string to prevent callers from having to worry about the +# state of the bit in the test directory. +# test_modebits () { - ls -ld "$1" | sed -e 's|^\(..........\).*|\1|' + ls -ld "$1" | sed -e 's|^\(..........\).*|\1|' \ + -e 's|^\(......\)S|\1-|' -e 's|^\(......\)s|\1x|' } # Unset a configuration variable, but don't fail if it doesn't exist. diff --git a/t/test-lib.sh b/t/test-lib.sh index 9fa7c1d0f6..03c1c0836f 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -1713,7 +1713,8 @@ test_lazy_prereq REBASE_P ' ' # Ensure that no test accidentally triggers a Git command -# that runs 'crontab', affecting a user's cron schedule. -# Tests that verify the cron integration must set this locally +# that runs the actual maintenance scheduler, affecting a user's +# system permanently. +# Tests that verify the scheduler integration must set this locally # to avoid errors. -GIT_TEST_CRONTAB="exit 1" +GIT_TEST_MAINT_SCHEDULER="none:exit 1" |