Re: Vendor branches workflow
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Dec 8, 2010, 09:09 UTC
- Message-ID
- <20101208090908.GA4640@burratino>
- In-Reply-To
- <AANLkTi=s9p3RycRCrocHEzfc4L-pnU6S9xCKfEL7TP=i@mail.gmail.com>
Hi Leonid,
Leonid Podolny wrote:
Show 7 quoted lines
> In our project, we have two upstreams, which are rather massively > patched. One of the upstreams is an SF svn repository, the other > arrives in form of tgz's with sources. Now git is tracking the patched > version, and I want to add a vendor branch to simplify future vendor > drops. > > Out of the SVN upstream, we use only specific directories.
If I were in this situation, I would use "git svn" with its ignore-paths option. Like so:
git svn -Rsvn init --ignore-paths='^(?!directory-a|directory-b)' \ $url/trunk
This way, using "git svn fetch" causes the history of these files to be fetched, and one can use gitk, git log -S, git bisect, and other familiar tools to browse through it.
Alternatively, a more usual vendor branch workflow (manually committing the relevant files) can work well, too. In either case I would only track the upstream files relevant to the history of my project. A .gitignore file can be useful to avoid accidentally tracking other files (like the .svn metadata).
Hope that helps, Jonathan