Subject: Re: Scripted clone generating an incomplete, unusable .git/config

From: Andreas Schwab <[email-masked]>
Date: Thu, 11 Nov 2010 18:39:10 +0100

Jonathan Nieder <[email-masked]> writes:

> Hi,
>
> Dun Peal wrote:
>
>>   $ python -c "import os; os.popen('git clone [email-masked]:repos/repo.git')"
>>   [...]
>>   $ cat repo/.git/config
>>   [branch "master"]
>>           remote = origin
>>           merge = refs/heads/master
>
> It looks like you've probably figured it out already, but for
> completeness:
>
> Most likely the clone is terminating when Python exits, perhaps due to
> SIGPIPE.  It doesn't look like a bug to me; I suspect you meant to use
> os.system(), which is synchronous, instead.  You might be able to get
> a better sense of what happened with GIT_TRACE=1 or strace.

I think it would be a bug in python not wait(2)ing for the subprocess
during the implicit close when exiting.

Andreas.

-- 
Andreas Schwab, [email-masked]
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."