pbranch for tracking upstream
Mark A. Flacy
mflacy at verizon.net
Mon Aug 16 18:13:10 UTC 2010
On Mon, 2010-08-16 at 13:11 -0400, Neal Becker wrote:
> Is there a tutorial on using pbranch for tracking upstream?
Just the stuff at http://arrenbrecht.ch/mercurial/pbranch/
Did you read http://arrenbrecht.ch/mercurial/pbranch/graph.htm and
http://arrenbrecht.ch/mercurial/pbranch/pullupstream.htm ?
>
> I'm not sure if I'm doing this correctly.
>
> I got my upstream, calling it boost_1_44_0.dist.
>
> I cloned it to boost_1_44_0.hg.
>
> Then I took each of my patchsets. Using hgtk, I started a new pbranch for
> each patchset. I keep editing the dependency graph, these patches are
> independent (I think), so I edit each to depend only on default.
Does hgtk know about pnew? Or did it use the base branch command?
>
> I've got this:
>
> hg pgraph
> o BUILD
> |
> | o user-config
> |/
> | o mersenne
> |/
> | o constrained_value
> |/
> | o multi_array
> |/
> | o hgignore
> |/
> | o vector_traits
> |/
> | o vector
> |/
> | @ test11
> |/
> o default
>
> Is this what I want?
I believe that you'd have to modify .hg/pgraph to assert that BUILD has
a dependency on the test11, vector, vector_traits, multi_array,
constrained_value, mersenne, and user-config branches.
There's an example in that tutorial.
>
> What do I do when the next upstream version is released?
I assume that you aren't getting the boost source from another hg
repository. (If you are, then you can skip the following bit.) I'd make
a repository that contains the snapshots that you are obtaining. You
*don't* do any development in it and you *don't* push any changes into
it. You just put each snapshot as they come (by deleting the working
directory, expanding the source into it, and committing the source as a
changeset). You pull from this repository into your working one which
has all the pbranch goodness.
If you are getting the boost source from another hg repository, you'd
run "hg pgraph --status" to see what's going to happen and then run "hg
pmerge --all" to update all of your branches.
I haven't used pbranch in a while, so there may be some recent changes
that would invalidate the above. I had used it to create some updates
to submit for the KPhone application a couple of years ago and haven't
really used it since.
--
Mark A. Flacy <mflacy at verizon.net>
More information about the Mercurial
mailing list