后,我想复制一个项目到另一个主干,所以我用下面的命令:文件最终在错误的目录SVN复制
SVN复制-m“测试”(从项目的URL)/中继线/(项目的URL地址)/ Trunk/
文件以(项目的url)/ Trunk/Trunk /而不是 (项目的URL)/ Trunk /我希望他们去的地方结束。
我做错了什么?如果我想要(项目的url)/ Trunk /中的文件,我应该怎么做?在做以下似乎没有什么意义:
SVN复制-m“测试”(从项目的URL)/中继线/(项目的URL)/
后,我想复制一个项目到另一个主干,所以我用下面的命令:文件最终在错误的目录SVN复制
SVN复制-m“测试”(从项目的URL)/中继线/(项目的URL地址)/ Trunk/
文件以(项目的url)/ Trunk/Trunk /而不是 (项目的URL)/ Trunk /我希望他们去的地方结束。
我做错了什么?如果我想要(项目的url)/ Trunk /中的文件,我应该怎么做?在做以下似乎没有什么意义:
SVN复制-m“测试”(从项目的URL)/中继线/(项目的URL)/
你应该做svn copy -m "test" (url of project from)/Trunk/ (url of project to)/
复制的树干投影到,因为您正在复制整个文件夹。
我不确定是否允许通配符在svn副本中执行/ trunk/*等操作,您应该检查文档。
谢谢。刚刚证实svn不会做通配符。多么痛苦! – Andy 2009-05-21 11:59:18
如果您的目的地已经存在,您需要在复制之前将其删除。 svn copy
也可能不适合你的情况,但很难猜测。
谢谢。这是我目前发现svn如此难以使用的原因之一。 – Andy 2009-05-21 12:07:44
我开始使用SVN时遇到过这个问题。
恕我直言,你可能会在你的网址和你的工作目录中感到困惑。如果你分支
svn copy -m "I want a branch man" http://theproject/proj/trunk http://theproject/proj/branches/today
然后树干将在今天结束,这是你想要的。然后,当你切换你会使用
svn switch http://theproject/proj/branches/today .
但你指定的方式,整个事情会有所不同
svn copy -m "I need another trunk yo" http://theproject/proj/trunk http://theproject/anotherproj/trunk
那么你就需要切换到正确的目录
svn switch http://theproject/anotherproj/trunk .
我在上面的例子中使用了句点,但是你必须小心去到正确的地方......
换句话说,此中继/中继事情发生的时间,但是当你检查你的资料库网址和工作目录(在OSX或TortoiseSVN的在Windows上使用SVNX),你会看到,它只是你的困惑:)
另外,创建分支(或“分支”,这对于svn来说,只是复制的一个奇特术语),但如果您主动并且首先创建分支目录,则会遇到同样的问题。
假设你想从旧的“单目录”方法转移到“树干分支”方法。
你开始http://my/path
和想去这样的结构:
http://my/path/trunk
,
http://my/path/branches/foo
和
http://my/path/branches/bar
因此,如果您首先创建分支目录:
# svn mkdir http://my/path/branches
# svn mkdir http://my/path/branches/foo
# svn mkdir http://my/path/branches/bar
和那就试试这个:
# svn copy http://my/path/trunk http://my/path/branches/foo
'trunk'
被复制到分支:
# http://my/path/branches/foo/trunk/...
如果您尝试使用通配符,好了,通配符不工作:
# svn copy http://my/path/trunk/* http://my/path/branches/foo
唯一的办法它的一切作品是不mkdir branches/foo
而是直接做到这一点:
# svn copy http://my/path/trunk http://my/path/branches/foo
这工作。
什么跟我的情况是存在的desitnation路径,结果是SVN目录
我删除目标目录进行复制,并似乎做的工作里面复制。
也许我应该做的svn复制强制选项,但我去svn rm,然后svn副本。
事实上,svn copy -m“test”(项目的URL)/ Trunk /(项目的URL)/如果(项目的url)/ Trunk已经存在,则失败。 – Andy 2009-05-21 11:26:38
这是一个不同的情况,但我认为这是你正在经历的:SVN失败,因为该项目的URL - 不存在。在复制之前,您必须使用mkdir创建父项到中继。 – 2009-05-21 11:55:15