创建 Subversion 分支
我在 Ubuntu Linux 服务器上有一个 Subversion 存储库(运行 SVN 1.6.6) ,我正在尝试使用 TortoiseSVN GUI 创建一个分支;但是,我收到一个错误:
将 c:\work\repositoryWorkingcopy\ 复制到 http://svnserver/svn/repository/Oct13 , 修订头
错误 '/svn/repository/!svn/bc/234/branches' 找不到路径
我登录到我的 Linux 机器以查看“branches”文件夹是否不可用。但是,我可以看到 /var/svn/repository/branches 存在。
那么,问题是什么以及如何解决它?
我尝试了以下命令(按照 http ://svnbook.red-bean.com/en/1.1/ch04s02.html#svn-ch-4-sect-2.1)以及从命令行并得到类似的错误:
c:\workingcopy> svn copy http://reposerver/svn/repository/ http://reposerver/svn/repository/branches/BFI_Oct13/ -m "Creating a branch"
svn: '/svn/repository/!svn/bc/235/branches' 路径未找到
我该怎么办?
此外,工作副本主目录上的 svn info 提供以下信息。
Path: .
URL: http://reposerver/svn/myrepository
Repository Root: http://reposerver/svn/myrepository
Repository UUID: 7a31d3c0-b288-4695-aecd-3f9dda2861ab
Revision: 235
Node Kind: directory
Schedule: normal
Last Changed Author: anjan
Last Changed Rev: 235
Last Changed Date: 2010-10-13 20:39:31 +0530 (Wed, 13 Oct 2010)
I have a Subversion repository (running SVN 1.6.6) on an Ubuntu Linux server, and I'm trying to create a branch using the TortoiseSVN GUI; However, I get an error back:
COPY c:\work\repositoryWorkingcopy\ to http://svnserver/svn/repository/Oct13, Revision HEAD
Error
'/svn/repository/!svn/bc/234/branches'
path not found
I logged into my Linux box to see if the "branches" folder was NOT available. However, I could see that /var/svn/repository/branches existed.
So, what's the problem and how do I fix it?
I tried the following command (as per http://svnbook.red-bean.com/en/1.1/ch04s02.html#svn-ch-4-sect-2.1) as well as from the command line and got a similar error:
c:\workingcopy> svn copy http://reposerver/svn/repository/ http://reposerver/svn/repository/branches/BFI_Oct13/ -m "Creating a branch"
svn: '/svn/repository/!svn/bc/235/branches' path not found
What should I do?
Also, svn info
on the main directory of the working copy gives the following information.
Path: .
URL: http://reposerver/svn/myrepository
Repository Root: http://reposerver/svn/myrepository
Repository UUID: 7a31d3c0-b288-4695-aecd-3f9dda2861ab
Revision: 235
Node Kind: directory
Schedule: normal
Last Changed Author: anjan
Last Changed Rev: 235
Last Changed Date: 2010-10-13 20:39:31 +0530 (Wed, 13 Oct 2010)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
当你说:
您的意思是实际目录存在于文件系统中(这对您绝对没有好处),还是存在于存储库中?
可能的修复:
When you say:
Do you mean that the actual directory exists in the filesystem (which will do you absolutely no good), or that it exists in the repository?
Possible fix:
一般来说,您需要在服务器上建立分支,在分支中进行更改,然后签入这些更改。
因此,第一步是创建分支,这只是一个复制命令。在 TortoiseSVN 中,您需要(大概)主干的 URL,并且需要定义分支的 URL。在更标准的存储库设置中,主干可能是 http://svnserver/svn/repository/trunk 并且您的分支可能是 http://svnserver/svn/repository/branches/Oct13。
然后,您需要将工作副本切换到分支。您应该可以选择这样做而不会丢失本地更改。
最后,您将检查您的更改,它们应该从那里转到分支。
我更习惯SVN的命令行界面,但我使用过TortoiseSVN。不过,已经有一段时间了,所以如果您仍然遇到问题或者这没有意义,请发表评论。
Generally speaking, you'll want to branch on the server, make your changes in the branch, and check those changes in.
So, the first step is to create the branch, which is just a copy command. In TortoiseSVN, you need the URL to (presumably) the trunk, and you'll need to define the URL of the branch. In a more standard repository setup, the trunk might be http://svnserver/svn/repository/trunk and your branch might be http://svnserver/svn/repository/branches/Oct13.
Then, you'll want to switch your working copy to the branch. You should have the option to do so without losing your local changes.
Finally, you would check your changes in, and they should go to the branch from there.
I'm more accustomed to the command-line interface for SVN, but I have used TortoiseSVN. It's been a while, though, so leave a comment if you still have trouble or this doesn't make sense.