monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] patch serieses


From: Brian May
Subject: Re: [Monotone-devel] patch serieses
Date: Fri, 10 Nov 2006 10:08:20 +1100
User-agent: Gnus/5.110006 (No Gnus v0.6) XEmacs/21.4.19 (linux)

>>>>> "Nathaniel" == Nathaniel Smith <address@hidden> writes:

    Nathaniel> The problem with this is what to do if the patches are
    Nathaniel> not independent -- not necessarily because they have
    Nathaniel> some semantic relations between them, but it can happen
    Nathaniel> from time to time that, oops, two patches both need to
    Nathaniel> touch the same line, or one patch needs to be modified
    Nathaniel> to avoid bumping into another patch, or some other
    Nathaniel> thing like that.

True - I have that situation in Heimdal too. The 2nd last patch
updates autotools files to their latest versions, and the last patch
patches the autotools files to support versioned symbols in the shared
libraries. Arrgghh!

Most of the patches are completely independent though.

    Nathaniel> One approach might indeed be to have an "upstream"
    Nathaniel> branch that you make imports into, a bunch of feature
    Nathaniel> branches off of it (one for each current patch), and
    Nathaniel> then a "release" branch which you get by merging
    Nathaniel> together all the feature branches.

For Heimdal, what I would like is an automatic script that will:

1. checkout the upstream branch.
2. diff every other branch and put diff in quilt patches directory.
3. run dpkg-buildpackage to build it.

Probably some sort of sanity checks to ensure I don't accidently do a
commit to the wrong branch or something would also me nice.

As well as a script to automatically update everything to the latest
upstream tarball, including support for when one of the branches
becomes obsolete (perhaps because upstream has solved problem in some
other manner).

Possibly it would be good if I kept track somehow (possibly in a
independent branch) which branches are active, and what versions are
known to work when combined, eg. a text file:

--- cut ---
version 0.7.1
heimdal.upstream.dfsg d8ea96fa1677cb3ac1a78cf417a2e8c4ec701a85
heimdal.patch.011_sharedlibs e30a5bdf7ff5c50eef06eae985f40d5a4b83836d
...

version 0.7.2
heimdal.upstream.dfsg d8ea96fa1677cb3ac1a78cf417a2e8c4ec701a85
heimdal.patch.011_sharedlibs e30a5bdf7ff5c50eef06eae985f40d5a4b83836d
...

--- cut ---

That way if I want to go back to a previous version, I don't have to
start guessing what revision it was (I don't like using tags for this
purpose as I am prone to make mistakes).

Anyway just some thoughts that I haven't fully developed yet.
-- 
Brian May <address@hidden>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]