T. *_*nes 21 svn branch assembla
我使用Assembla来管理我的Subversion存储库.我已经开始对我的代码库进行一些重大修改,并希望创建一个我最近的生产版本的标签(我几周前将这个版本推向生产时我忘记了这一点).
我目前正在修订版588,并希望创建一个修订版577的标记.如何在Assembla中使用Subversion从命令行执行此操作?
假设我的Assembla SVN URL是:https://subversion.assembla.com/svn/my_assembla_svn_directory/
Dav*_* W. 49
您始终可以使用该-r参数来引用特定修订.执行此操作时,您还可以使用@rev修订固定来确保您在特定修订版中引用Subversion修订版的布局.以下内容将在版本577上创建一个标签,并调用此标记REV-1.2:
$ svn cp -r 577 https://subversion.assembla.com/svn/my_assembla_svn_directory/trunk
https://subversion.assembla.com/svn/my_assembla_svn_directory/tags/REV-1.2
Run Code Online (Sandbox Code Playgroud)
如果你没有trunk,branches和tags目录,你需要将你的工作,以创建一些:
$ # Move the current directory to the "trunk"
$ svn cp https://subversion.assembla.com/svn/my_assembla_svn_directory \
https://subversion.assembla.com/svn/my_assembla_svn_directory/trunk
$ # Make a corresponding tags and branches directories too
$ svn mkdir https://subversion.assembla.com/svn/my_assembla_svn_directory/branches
$ svn mkdir https://subversion.assembla.com/svn/my_assembla_svn_directory/tags
$ # Now, we can delete the old location. Let your developers know this,
$ # so they're not surprised by this and will be able to do a "svn relocate"
$ svn delete https://subversion.assembla.com/svn/my_assembla_svn_directory/
$ # Whoops. I should have done the tagging when I had a chance.
$ #Oh well, we'll use the `@rev` pinning:
$ svn -r557 cp https://subversion.assembla.com/svn/my_assembla_svn_directory@557 \
https://subversion.assembla.com/svn/my_assembla_svn_directory/tags/REL-1.2
Run Code Online (Sandbox Code Playgroud)
除了作为副本之外,Subversion不实现标记和分支.这并不罕见.Perforce以相同的方式实现分支.事实上,一旦你习惯了它,它的效果非常好:
svn ls在正确的目录上执行)直接来自SVN文档:
如果要完全像在HEAD修订版中查找的那样创建/ calc/trunk的快照,请复制它:
Run Code Online (Sandbox Code Playgroud)$ svn copy http://svn.example.com/repos/calc/trunk \ http://svn.example.com/repos/calc/tags/release-1.0 \ -m "Tagging the 1.0 release of the 'calc' project." Committed revision 902.此示例假定/ calc/tags目录已存在.(如果没有,可以使用svn mkdir创建它.)复制完成后,新的release-1.0目录永远是/ trunk目录在复制时在HEAD修订版中的显示方式的快照.当然,您可能希望更准确地了解您复制的修订版本,以防其他人在您不查看时可能已对项目进行了更改.因此,如果您知道/ calc/trunk的修订版901正好是您想要的快照,则可以通过将-r 901传递给svn copy命令来指定它.
(强调我的)