From: Junio C Hamano Date: Tue, 16 Sep 2008 06:25:10 GMT Subject: Re: Grafts workflow for a "shallow" repository...? Message-ID: <7v3ak08v5l.fsf@gitster.siamese.dyndns.org> In-Reply-To: <20080916052425.GA14644@spearce.org> "Shawn O. Pearce" writes: > Martin Langhoff wrote: >> Here is my attempt at a "let's publish a shallow repository for branch >> of moodle". Let me show you what I did... > ... >> # 1.7 was a significant release, anything earlier than that >> # is just not interesting -- even for pickaxe/annotate purposes >> # so add a graft point right at the branching point. > ... >> Is this kind of workflow (or a variation of it) supported? For this to >> work, we should communicate the grafts in some push operations and >> read them in clone ops - and perhaps in fetch too. > ... > I think that in this case the best thing to do is give users > a shell script that does roughly: > > git init > echo $BASE >.git/info/grafts > git remote add -f origin $url > git checkout -b master origin/master > > Sign the script, and let users verify it before executing. You may > also want a script to drag in the history behind by removing the > graft and fetching $BASE^, but that is hard because your repository > already "has" that. Why not just filter-branch _once at the origin_ and publish the result?