I normally create branches from trunk, work on them, and eventually reintegrate them back into trunk.
Sometimes I'll create a branch Y from another branch X, so I can start with X's code. Normally I'll reintegrate Y into X first, then reintegrate X into trunk. Y --> X --> trunk But what if I want to reintegrate X into trunk first, and I no longer want Y to depend on X? In other words, I want Y to be a normal branch, so that I can merge it directly to and from trunk, without going through X. Y --> trunk X --> trunk What should I do? One approach would be to create a new branch, and merge all of Y's changes into it. But I'd like to keep using Y if possible, so I don't lose track of its history. Is that possible? Jacob