use case: I am packaging the FOO program for Debian. FOO is maintained in
git but it has a bunch of problems (e.g. because somebody mistakenly checked
in a huge blob which would give the ).

The current workflow for this is to create a new branch, remove the
offending bits if necessary, create a FOO-clean.tar.xz file, and ship that
as "original source". I find that to be suboptimal.

What I would like to have, instead, is a version of shallow cloning which
cuts off not at a pre-determined depth, but at a given branch (or set of
branches). In other words, given

            +-J--K  (packaged)
           /    /
  +-F--G--H----I    (clean)
 /       /
A---B---C---D---E   (upstream)

a command "git clone --shallow-until upstream $REPO" (or however that would
be named) would create a shallow git archive which contains branches
packaged+clean, with commits FGHIJK. In contrast, with --single-branch and
--depth 4 I would get CGHIJK, which isn't what I'd want.

As I have not spent too much time with the git sources lately (as in "None
at all"), some pointers where to start implementing this would be
appreciated, assuming (a) this has a reasonable chance of landing in git and
(b) nobody beats me to it. ;-)

-- Matthias Urlichs

To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to