On Monday 11 April 2011 14:33:47 Marcus Meissner wrote:
On Mon, Apr 11, 2011 at 02:31:02PM +0200, Will Stephenson wrote:
On Monday 11 April 2011 13:16:25 Adrian Schröter wrote:
Hm, but why do you need this at all ?
^^^^
I'm not sure what 'this' refers to, did you mean this line:
+ git checkout -B "$MYBRANCH"
Isn't
git checkout -r $BRANCH
working for you ?
? Did I miss a git syntax trick? the git-checkout manpage doesn't mention an -r option.
My intention is to have a source service that can tar up an arbitrary branch, and afaics there isn't a way to do that with git in tar_scm at present. If I understand correctly, tar_scm may be called where an existing clone exists, so I used checkout -B to cover the case that the user changes the branch in an existing source service so the existing clone is checked out to the requested branch.
Errm, just use
git archive <tag or branchname>
e.g. I use for Wine:
git archive origin --prefix=wine-$winever.$xdate/ | bzip2
$bsdir/wine-$winever.$xdate.tar.bz2
Of your you can replace "origin" by whatever branch or tag or other GIT thingie you want.
This is how I understand the existing algorithm, augmented (+) by my patch: if (tarball exists) extract it update it + ensure requested git branch is checked out else clone + requested branch endif tar up the result. git archive doesn't include the .git dir so it wouldn't be updateable. Will -- Will Stephenson, KDE Developer, openSUSE Boosters Team SUSE LINUX Products GmbH - Nürnberg - AG Nürnberg - HRB 16746 - GF: Markus Rex -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org