Hi, I'm currently in the progress of pulling some subprojects in a git repository of mine into their own repositories and adding these subprojects back as submodules. While doing this I enountered a potential bug as checkout complains on branch switching that a file already exists. I've reproduced it on debian stretch with the following git versions: master: git version 2.15.0.rc0.39.g2f0e14e649 pu: git version 2.15.0.rc0.245.g6d586db062 A script to trigger it is mkdir -p test/subproject cd test git init touch subproject/1 git add subproject git commit -m "blah" cd .. mkdir subproject cd subproject git init touch 1 git add 1 git commit -m "blubb" cd ../test git branch old git rm -rf subproject git commit -m "remove blah" git submodule add ../subproject git add -A git commit -m "added subproject" git branch new git checkout old and this fails with $LANG=C ./run.sh Initialized empty Git repository in /home/XXX/devel/test/.git/ [master (root-commit) 33e6607] blah 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 subproject/1 Initialized empty Git repository in /home/XXX/devel/subproject/.git/ [master (root-commit) e817644] blubb 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 1 rm 'subproject/1' [master 9cbfd57] remove blah 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 subproject/1 Cloning into '/home/XXX/devel/test/subproject'... done. [master 1c67e23] added subproject 2 files changed, 4 insertions(+) create mode 100644 .gitmodules create mode 160000 subproject error: The following untracked working tree files would be overwritten by checkout: subproject/1 Please move or remove them before you switch branches. Aborting If I'm misusing git here I'm glad for any advice. Thanks, Thomas