Re: Scripted clone generating an incomplete, unusable .git/config
From: Stefan Naewe <hidden>
Date: 2016-06-15 22:50:00
On 11/11/2010 12:21 AM, Dun Peal wrote:
This is a weird issue I ran into while scripting some Git operations
with git 1.7.2 on a Linux server.
When running the git-clone command manually from the command line, the
resulting repo/.git/config had all three required sections: core,
remote (origin), branch (master).
When running the exact same git-clone command manually from the Python
scripted, the resulting repo/.git/config was missing the `core` and
`remote` sections.
Here's a bash log fully demonstrating the issue:
$ python -c "import os; os.popen('git clone
git@git.domain.com:repos/repo.git')"
[...]
$ cat repo/.git/config
[branch "master"]
remote = origin
merge = refs/heads/master
$ rm -Rf repo
$ git clone git@git.domain.com:repos/repo.git
$ cat repo/.git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = git@git.domain.com:repo/repo.git
[branch "master"]
remote = origin
merge = refs/heads/master
What's causing this? Is it a bug?Same for me with git version 1.7.3.2 on Debian Etch. Seems to be a problem with the popen() returning too early or the interpreter dying too early. This works though: $ python -c "import subprocess; subprocess.call(['git', 'clone', 'git://host/repoo.git'])" Regards, Stefan -- ---------------------------------------------------------------- /dev/random says: I is knot dain bramaged!