[Users] ETK Maxwell checkout failing for McLachlan, KrancNumericalTools

Ian Hinder ian.hinder at aei.mpg.de
Wed May 23 11:48:22 CDT 2012


On 23 May 2012, at 17:40, Bruno C. Mundim wrote:

> Hi Beany/Ian:
> 
>> 
>> I wonder if for some reason your new version of Git is honouring the shallow clone option (--depth 1), whereas my old version is not.  I'm not sure why we do a shallow clone by default;
> 
> People were concerned with the size of the git repos and how slow would
> be to check them out. So there was a decision towards checking out
> shallow git repos.

Was this based on actual experience?  I find the git repositories to be very fast to check out (and I am in Europe) in comparison to the glacially slow process of checking out a hundred separate SVN repositories one by one.

> it means that you can't use the git repository for anything particularly 
> useful.  Possibly also you can't use it for switching branches.
>> 
> That's true. So I usually create an alias for GetComponents to always 
> use the --noshallow option like this:
> 
> alias GC './GetComponents -a -v -p --noshallow'
> alias GCu './GetComponents -a -u -v -p --noshallow'
> 
> where -v and -p options are not essential.

This seems to be a problem with a checkout of the release branch.  If GetComponents is cloning the master branch with --depth 1, and then trying to check out the release branch, and the release branch is not the same as the master branch, I think this will fail.  It would probably have worked when tested, because the release branch and the master branch would have been the same at the time of the release.  With new enough versions of Git, you can clone a specific branch on the command line (-b/--branch option), so if you do a shallow clone with this option, it should work.  But I would prefer ditching the shallow clones, unless there is real-world evidence that a full clone contributes a significant time to the checkout.

I still don't understand why I was able to perform the checkout with my old version of Git.  Maybe something was tightened up in the newer version.  

Bernard: does removing the --depth 1 option fix the problem?

> 
> Cheers,
> Bruno.
> 
>> The documentation says:
>> 
>> --depth<depth>
>> Create a shallow clone with a history truncated to the specified number of revisions. A shallow repository has a number of limitations (you cannot clone or fetch from it, nor push from nor into it), but is adequate if you are only interested in the recent history of a large project with a long history, and would want to send in fixes as patches.
>> 
>> Can you try it without the --depth 1 option and see if that fixes it?
>> 
>> 
>> 
>> 
>>> 
>>> Bernard
>>> 
>>> 
>>> 
>>> On 5/23/12 7:56 AM, "Ian Hinder"<ian.hinder at aei.mpg.de>  wrote:
>>> 
>>>> 
>>>> On 23 May 2012, at 13:25, Kelly, Bernard J. (GSFC-660.0)[UNIVERSITY OF
>>>> MARYLAND BALTIMORE COUNTY] wrote:
>>>> 
>>>>> Hi Ian.
>>>>> 
>>>>> Yes, I should have explained that this was an additional checkout after
>>>>> most of ETK was already checked out (hence the number 12 instead of 175
>>>>> or
>>>>> so). But the original checkout was also Maxwell, and was performed only
>>>>> a
>>>>> day or two earlier, with the same GetComponents and thornlist.
>>>>> 
>>>>> I just moved that whole Cactus aside and redid from scratch. Identical
>>>>> failure (but this time saying 175). Almost everything checks out fine;
>>>>> just not McLachlan and KrancNumericalTools, and GetComponents itself,
>>>>> apparently (?).
>>>>> 
>>>>> I've redone the checkout (again after the main checkout) with the
>>>>> "--verbose" option. Result after main text. The option "--verbose 2"
>>>>> fails, so presumably the correct syntax is slightly different; I didn't
>>>>> hang around to check.
>>>>> 
>>>>> BTW, I don't really think the issue has anything to do with my OS X
>>>>> version, though I suppose my MacPorts git might have some funny
>>>>> settings.
>>>> 
>>>> Hi Bernard,
>>>> 
>>>> Can we move this back to the list?  Others might have suggestions and
>>>> will benefit in future from the discussion.  I have done this:
>>>> 
>>>> MacBook-2:temp $ git clone --depth 1 git://carpetcode.org/McLachlan
>>>> Cloning into McLachlan...
>>>> remote: Counting objects: 3878, done.
>>>> remote: Compressing objects: 100% (2222/2222), done.
>>>> remote: Total 3878 (delta 3229), reused 2050 (delta 1638)
>>>> Receiving objects: 100% (3878/3878), 2.38 MiB | 838 KiB/s, done.
>>>> Resolving deltas: 100% (3229/3229), done.
>>>> MacBook-2:temp $ cd McLachlan/
>>>> MacBook-2:McLachlan (master) $ git checkout --track -b ET_2011_10
>>>> origin/ET_2011_10
>>>> Branch ET_2011_10 set up to track remote branch ET_2011_10 from origin.
>>>> Switched to a new branch 'ET_2011_10'
>>>> MacBook-2:McLachlan (ET_2011_10) $ git --version
>>>> git version 1.7.5.4
>>>> 
>>>> Those are the commands that GetComponents claims to be using.  Can you
>>>> try these commands on their own and see what happens?  It might be
>>>> something to do with old versions of Git, or maybe GetComponents is doing
>>>> something different than the commands it outputs.
>>>> 
>>>> Have a look at
>>>> http://stackoverflow.com/questions/499316/git-plugin-for-hudson-checkout-p
>>>> roblem, and other google hits for the checkout error message.  It's
>>>> looking like it might be a problem with an old version of git.
>>>> 
>>>> --
>>>> Ian Hinder
>>>> http://numrel.aei.mpg.de/people/hinder
>>>> 
>>> 
>> 
> 
> _______________________________________________
> Users mailing list
> Users at einsteintoolkit.org
> http://lists.einsteintoolkit.org/mailman/listinfo/users

-- 
Ian Hinder
http://numrel.aei.mpg.de/people/hinder



More information about the Users mailing list