git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Chani <chanika@gmail.com>
To: git@vger.kernel.org
Subject: partial checkouts
Date: Sat, 23 May 2009 14:00:55 -0700	[thread overview]
Message-ID: <200905231401.11651.chanika@gmail.com> (raw)

[-- Attachment #1: Type: Text/Plain, Size: 2290 bytes --]

so I'm trying to convert KDE's translation helper scripts to support git 
repositories for kde modules. the translators themselves are staying in svn 
for now, but we want to start migrating kde modules over to git.

I've hit a bit of a problem, though.
inside the translators' folder, there's a folder called documentation/ - and 
inside that is a bunch of svn externals pointing to the doc/ folder of every 
kde module. (this is, then, all of kde's english documentation.)
translators occasionally need to run a script that reads from the 
documentation/ folder.

now, what happens when one of those modules switches to git? first, the svn 
external goes away. that's ok, I can work around that by having the update_xml 
script (the one translators need to run) fetch the doc folder itself, right?
but where does it fetch it from? doc/ is now a subdirectory in a git 
repository, and git doesn't support checking out only one folder, not even if 
all I want to do is read the files in it.

checking out the entire git repo isn't really feasible, because once KDE 
finishes switching to git that'll mean checking out all of KDE.
I don't think that turning every doc folder into a submodule is feasible, 
either - they sound kinda awkward to work with, and I can imagine lots of 
people getting confused and messing them up...

right now all I've thought of is one ugly hack: have a server that checks out 
all the kde git repos, pulls daily, copies all the doc/ folders into a 
documentation folder, and offers that folder up on the interwebs so that 
update_xml can rsync from it or download a tgz of it or something.
there appear to be lots of images in the documentation, so it's not a small 
download - 200mb and growing. it still hasn't finished downloading all the 
externals...

I'm kinda wondering if there'd be a way to use git-filter-branch to make a repo 
that only tracks the doc/ folder for a module - but I've no idea whether it'd 
have to be recreated from scratch every time someone changes something in the 
real repo's doc/

can anyone think of a less ugly solution?
what are the chances of git supporting this kind of partial checkout someday?

-- 
This message brought to you by eevil bananas and the number 3.
www.chani3.com

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

             reply	other threads:[~2009-05-23 21:02 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-23 21:00 Chani [this message]
2009-05-23 23:34 ` partial checkouts Johan Herland
2009-05-24  0:26   ` Chani
2009-05-24 19:45     ` Avery Pennarun
2009-05-25  3:07       ` Chani
2009-05-25 14:51       ` Aidan Van Dyk
2009-05-24  2:07 ` Nguyen Thai Ngoc Duy
2009-05-24 15:57   ` Thomas Adam
2009-05-25  1:51     ` Nguyen Thai Ngoc Duy
     [not found] <1D6034426110564DA0DEA9EE9793B38357BE874673@NBE-MBX01.americas.swk.pri>

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200905231401.11651.chanika@gmail.com \
    --to=chanika@gmail.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).