svn 移动到不存在的目录
svn move to non-existent directory
我以前用过svn move但不是那样我在这里问是因为我不能犯错误:
我有一个项目是另一个项目的子项目,现在应该是顶级独立项目:
当前布局(嵌套):
/
└── company
└── otherproject
└── trunk
└── project
所需布局(分隔):
/
└── company
└── otherproject
│ └── trunk
└── project
└── trunk
我不确定我是需要先 运行 svn mkdir
还是 svn move
为您创建新目录。
也不清楚 svn move
之后的 svn commit
应该怎么做。
首先,正如 royalTS 所说,版本控制的重点在于能够回滚。这包括您能想到的各种变化。如果修订版 1234 决定一切 (!) 都需要被残酷地清除(也许又是一年中的那个时候),修订版 1233 一点也不在乎。
现在,针对您的问题:
你说目标目录不存在。事实并非如此。您想要将 project
移动到 company
。显然 company
已经存在。不需要 mkdir
任何东西。
这里有 2 个选项。
编辑本地工作副本:
# cd to somwhere in the working copy, let's say `company`.
cd /working-copy/company
# move
svn mv otherproject/trunk/project .
# commit changes
svn ci
使用远程地址(这里以http为例,具体以实际配置为准)
svn mv http://..../company/otherproject/trunk/project http://..../company
这将立即提交。
顺便说一下,如果您指定了不存在的文件或目录,Subversion 会像其他人一样向您抛出一条愤怒的错误消息。
也许你应该建立自己的回购和运行一些实验...
我以前用过svn move但不是那样我在这里问是因为我不能犯错误:
我有一个项目是另一个项目的子项目,现在应该是顶级独立项目:
当前布局(嵌套):
/
└── company
└── otherproject
└── trunk
└── project
所需布局(分隔):
/
└── company
└── otherproject
│ └── trunk
└── project
└── trunk
我不确定我是需要先 运行 svn mkdir
还是 svn move
为您创建新目录。
也不清楚 svn move
之后的 svn commit
应该怎么做。
首先,正如 royalTS 所说,版本控制的重点在于能够回滚。这包括您能想到的各种变化。如果修订版 1234 决定一切 (!) 都需要被残酷地清除(也许又是一年中的那个时候),修订版 1233 一点也不在乎。
现在,针对您的问题:
你说目标目录不存在。事实并非如此。您想要将 project
移动到 company
。显然 company
已经存在。不需要 mkdir
任何东西。
这里有 2 个选项。
编辑本地工作副本:
# cd to somwhere in the working copy, let's say `company`. cd /working-copy/company # move svn mv otherproject/trunk/project . # commit changes svn ci
使用远程地址(这里以http为例,具体以实际配置为准)
svn mv http://..../company/otherproject/trunk/project http://..../company
这将立即提交。
顺便说一下,如果您指定了不存在的文件或目录,Subversion 会像其他人一样向您抛出一条愤怒的错误消息。
也许你应该建立自己的回购和运行一些实验...