这是一个奇怪的错误,我将粘贴步骤,以便您可以更好地理解:
PS C:\Users\user\Proyectos\GRV\Repos> git clone https://user@bitbucket.xxx.com/scm/in004/site-code.git in004_code
Cloning into 'in004_code'...
remote: Counting objects: 4034, done.
remote: Compressing objects: 100% (3565/3565), done.
remote: Total 4034 (delta 366), reused 4010 (delta 358)
Receiving objects: 100% (4034/4034), 10.11 MiB | 280.00 KiB/s, done.
Resolving deltas: 100% (366/366), done.
Checking out files: 100% (3577/3577), done.
PS C:\Users\user\Proyectos\GRV\Repos> cd .\in004_code\
PS C:\Users\user\Proyectos\GRV\Repos\in004_code> git status
On branch master
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean
PS C:\Users\user\Proyectos\GRV\Repos\in004_code> cat .\.gitmodules
[submodule "sites/default/files"]
path = sites/default/files
url = ../site-files.git
[submodule "profiles/hub"]
path = profiles/hub
url = ../../hub/hub-profile.git
branch = 0.x
PS C:\Users\user\Proyectos\GRV\Repos\in004_code> git checkout int
fatal: bad config line 7 in file C:/Users/user/Proyectos/GRV/Repos/in004_code/.gitmodules
PS C:\Users\user\Proyectos\GRV\Repos\in004_code> cat .\.gitmodules
[submodule "sites/default/files"]
path = sites/default/files
url = ../site-files.git
[submodule "profiles/hub"]
path = profiles/hub
url = ../../hub/hub-profile.git
<<<<<<< HEAD
branch = 0.x
=======
>>>>>>> 5580772... Initial commit qa
PS C:\Users\user\Proyectos\GRV\Repos\in004_code>
但是在我测试相同步骤的centos服务器中,同事都不会发生这种情况。
有帮助吗?
答案 0 :(得分:2)
次要编辑/更新:看起来该错误的特定控制设置默认为recurse.submodules
,这是Git 2.14中引入的。早于2.14的Git版本将忽略任何recurse.submodules=true
设置,而2.14及更高版本将遵循该设置。似乎还有一个错误,那就是git checkout --no-recurse-submodules
没有在正确的时间清除标志。但是,git -c recurse.submodules=false checkout ...
应该超越了那个范围。我认为失败本身(带有fatal: ...
退出结帐的退出)也是一个错误,但这还不太清楚。
许多CentOS发行版附带的Git版本是古老的,无法检查错误情况。 (您没有说他们正在使用哪个CentOS,也没有显示他们的Git版本,但是例如,参见How to install latest version of git on CentOS 7.x/6.x或更新的Can't clone any repository using git。对软件更新持保守态度没有错,但是有保守,然后是CentOS ...)
您的实际存储库中有一个错误:.gitmodules
文件应始终格式正确,但int
分支提示中的文件格式却不正确。您的Git很现代,可以在运行git checkout int
时立即发现问题。
他们的Git很古老,因此当您在此处检查int
分支时,他们的Git会静默地忽略该问题。问题仍然存在,您只是没有受到投诉。该问题需要解决(通过修复.gitmodules
文件并在int
分支上进行新提交)。