$ cd calc/
$ svn copy trunk branches/my-calc-branch
$ svn status
A + branches/my-calc-branch
在这个例子里,拷贝命令递归拷贝trunk下的文件到新的工作目录branches/my-calc-branch下。使用svn status
命令,可以看到新的目录被添加到了版本库中。同时注意"+"符号前面的字母A.它表明添加的列表是一些数据的拷贝,并不是新添加的版本库的数据。
$ svn commit -m "Creating a private branch of /calc/trunk."
Adding branches/my-calc-branch
Committed revision 341.
现在介绍一种简单的创建分支的方法,那就是可以通过给svn copy 命令传入两个URL路径来实现.
$ svn copy http://svn.example.com/repos/calc/trunk \
http://svn.example.com/repos/calc/branches/my-calc-branch \
-m "Creating a private branch of /calc/trunk."
Committed revision 341.
从版本库的角度来看,实际上这两种方法并无任何区别。唯一的区别只在于前者是在本地客户端进行操作,后者可以立即执行SVN分支任务,简单,并不需要你检出庞大的工作副本。后者的方法是最常用的。
5、廉价的拷贝——如何使用分支代码?
使用SVN分支进行工作,建立了项目的一个分支之后,我们就可以检出该分支并开始工作使用它。
$ svn checkout http://svn.example.com/repos/calc/branches/my-calc-branch
A my-calc-branch/Makefile
A my-calc-branch/integer.c
A my-calc-branch/button.c
Checked out revision 341.
这个工作副本并无任何特别之处;只是简单镜像了一个库中项目.当你提交修改后,Sally并不期望当她更新工作副本的时候看到这些修改,因为她的工作副本是/calc/trunk。让我们假设看看一个星期里所发生的事:
You make a change to /calc/branches/my-calc-branch/button.c, which creates revision 342.
You make a change to /calc/branches/my-calc-branch/integer.c, which creates revision 343.
Sally makes a change to /calc/trunk/integer.c, which creates revision 344.
现在这里出现了两条独立的开发线。
svn copy命令的作用是拷贝某些svn版本控制的文件,生成的新文件直接纳入版本控制中
[root@localhost test2]# ls
aa.txt contract.html css img index.html js
[root@localhost test2]# svn cp index.html index_bak.html
A index_bak.htm...
SVN几个重要文件夹说明:
我们一般习惯性在创建repository仓库后,再在刚才创建的仓库里面再创建trunk、branches、tags这三个文件夹,而不是直接将项目提交到仓库的根目录下(虽然直接将项目分享到仓库的root根目录下也是可以的,但是我们一般不这么做)。主要目的是:为了给项目各个阶段,各个版本归类、分阶段存储、并行开发。
trunk文件夹: 主干,我们一般把项目...
最近这两天,公司要做国际化的开发,本打算要用struts2内置的i18n拦截器做国际化资源文件处理,但后期项目组开会讨论决定copy开发完的中文版本的项目,在此基础上做英文
的版本,因此要用到svn的相关操作。
起初,我和项目组的一个同事考虑是要svn创建一个新的分支,然后基于分支进行开发,但后来考虑到英文版本的项目是非分支,而是一个新项目,是不需要最终合并到master上
面的,so...
分支、标签操作一、创建分支/标签,其实分支就是另一份拷贝svn copy 二、合并分支svn merge你想合并所有分支的修改到主干上,让别人也可以使用。这种场景下如何使用svn merge?记住这个命令比较两个目录树,然后应用比较结果到工作拷贝,所以要接受这种变化,你需要主干的工作拷贝,我们假设你有一个最初的主干工作拷贝(完全更新),或者是你最近取出了/ca
使用TortoiseSVN移动文件夹1.鼠标点击选择需要移动的文件2.拖动到目的文件夹(按住ctrl拖动为复制,旁边会显示copy to 字样,不按则为剪切,显示move to)
要修改的是SVN的路径问题,如何修改呢?就是右键项目,然后选择”Team“选项,之后选择最下面的”断开连接“选项,然后在弹出的框框中选择第一个“并且从文件系统中删除SVN元信息”。然后选择yes,这样就讲粘贴的新项目的svn路径给删除了。之后,再右键项目,选择“Team”选项,然后再选择“share project”选项,选择SVN,然后选择SVN 资源库,然后选择对应的SVN相应的名称即可,最后...