svn import mess, nothing on trunk
I looked at how to create trunk directory in existing svn repo without a trunk and move all, and it might be applicable, however, I have a "trunk" but the manner in which the developer, a senior one at that, imported the project to the svn repos may provide a difference worth review.
It appears, looking at the log, that the developer locally created a svn tree, a trunk/branches/tags
directory, created all the files in the branches
directory, then on the initial import to svn
, commit开发者_Python百科ted trunk and tags as part of the branches commit.
This means there's no history of a copy to a branch. The log, in near-fidelity, is:
% cd work
% mkdir -p project/trunk project/branches project/tags
% cd project/branches
... begin a bunch of work on a java service v1.0
... happy lets import to svn
% cd ..
% pwd project
% svn import -m"Initial import"
A branches
A branches/file-n
A branches/file-n ...
A tags
A trunk
Sending...
Committed rn
% svn mv $repos/project $repos/project_name
...
Committed rn
So svn merge
does not really work here. trunk
is part of the initial commit, history is not really allowing a clean merge.
Could I use the copy and commit suggestion above? Or is there another way that is necessary in this case?
I solved this with a combination of a couple of things here at SO.
Ultimately, a move would not have worked for our organization's build process. This would have kept the branch history on trunk, but left the branch empty. Our builds would not have liked that.
I instead copied the files to the trunk directory, sans .svn
directories of course, via svn export
and committed them.
Now, some might say, you just lost history. I'm not so sure about that. The history of the branch is still there, and a new branch was created from trunk. The previous branch remains active and can be retired is process allows, tagged EOL, etc.
Feedback welcome.
精彩评论