Skip to content

Commit 0c1e409

Browse files
EliahKaganclaude
andcommitted
Document init script behavior when multiple remotes have master
When `master` is locally absent and more than one remote has it, `git checkout master --` fails by default even if all remotes agree, and the script falls back to creating `master` at `HEAD`. The reflog populated by the subsequent resets then traces `HEAD`'s history rather than a remote `master`'s. This is harmless, because `master` is reset to `__testing_point__` either way, but unintuitive. Add a comment so a reader of the script does not have to discover this from a confusing run. This fixes #2145. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 830471c commit 0c1e409

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

init-tests-after-clone.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,11 @@ fi
4040
git tag __testing_point__
4141

4242
# The tests need a branch called master.
43+
#
44+
# If master is locally absent but more than one remote has it, checkout fails
45+
# by default even if all remotes agree, and we fall back to creating it at
46+
# HEAD. The reflog we populate below then traces HEAD's history rather than
47+
# a remote master's, but master is reset to __testing_point__ either way.
4348
git checkout master -- || git checkout -b master
4449

4550
# The tests need a reflog history on the master branch.

0 commit comments

Comments
 (0)