I'm working on a project with multiple people on the same branch. When we try to reintegrate our branch (using the --reintegrate
command), we first merge the current trunk into the branch. We would then like to use the reintegrate command with the version number of the commit of the merge from trunk to branch.
Is it possible to reintegrate using this (or any other revision number for that matter) revision number? Or will reintegrate always take the last revision of the branch and use that?
Additionally, if somebody makes a commit after the merge from the trunk to the branch and I would start a reintegrate after that, what are my chances that the reintegrate will fail? (Failing means either bringing up conflicts (which I can solve, I know) or screwing up the merge info, which might not necessarily show until later on.)
As I said, I'm working with multiple people and it is not yet possible to enforce a codefreeze (too big a project to lock it and no administrative privileges to lock other users out). I am interested in your ideas, so that maybe I can plead my case to make this possible.
Preface:
You have to slightly clean-up your terminology: verb "reintegrate" have special meaning in SVN-world, related to merges (see
--reintegrate
option in merge)Face:
You want to do continuos merges from branch to trunk (or bidirectional merges - from branch to trunk AND from trunk to branch in parallel?). It's perfectly valid and doable operation, and due to to nature of atomic commits in SVN you огые can don't worry about simultaneous operations (it's Subversion game).
You can merge two URLs more than once, you can do it at any time. For SVN < 1.6 you have to remember merged ranges and define merge-ranges in new merges, for SVN >= 1.6 mergeinfo stored and used automagically (read "Merge Tracking" chapter in
svn help merge
)HTH
Edit
For
merge --reintegate
you can use revision range. By definition, reintegration of branch back to trunk uses all branch-timespan, separates branch-only changes from trunk changesets and applies these changes to trunk, making branch after this useless and actually closedThis is a brief synopsis of help topic