testSubSubmoduleUpdateSwitched failing locally
Closed this issue · 1 comments
rhubert commented
Describe the bug
On my local machine the test_input_gitscm
was always failing with:
586 ======================================================================
587 FAIL: testSubSubmoduleUpdateSwitched (test_input_gitscm.TestSubmodules.testSubSubmoduleUpdateSwitched)
588 Test update of switched sub-submodule
589 ----------------------------------------------------------------------
590 Traceback (most recent call last):
591 File "/home/ralf/projects/bob/test/unit/test_input_gitscm.py", line 836, in testSubSubmoduleUpdateSwitched
592 self.assertFalse(os.path.exists(os.path.join(workspace, "sub1/some/deep/path/canary.txt")))
593 AssertionError: True is not false
It took me some time to find out this was due to a setting in my ~/.gitconfig
:
[submodule]
recurse = true
which I have there to automatically update the layer-submodules...
I fear this could also lead to different checkout results?
Steps to reproduce
$ git config --global submodule.recurse true
$ ./test/run-tests.sh -u test_input_gitscm
Context
- OS: Debian 12.5
- Bob version: master
- Python version: 3.11.2
- git version: 2.39.2
jkloetzke commented
Hmm, this should not happen. Indeed, that could have lead to inconsistent checkout results. Looks like -c submodule.recurse=0
is missing on some git calls.
Actually I'm wondering how many other options exist that could lead to inconsistent checkouts.