Correct me if I'm wrong Paul, but I believe we already solved this problem.
Our use-case is as follows:
- QA reports a bug in a specific build
- Hudson doesn't have this build available (maybe it got deleted because it was too old)
- We go into the Hudson project, "Build Now", type in the revision number we're interested in and Hudson runs "hg update -b <branch> -r <revision>"
We implemented this by hard-coding a branch under: Source Code Management -> Mercurial -> Branch.
We allow users to specify the revision number to build using: "This build is parameterized", name = "revision", default value = "tip"
So by default Hudson always builds branch/tip but when users select "Build Now" they can specify what specific revision to use.
Jesse, does this make sense to you?