知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > linux

linux下svn的使用

发布时间:2014-09-05 17:14:53作者:知识屋

1.svn的基本概念在这里就不详述了,下一代的CVS。

2.基本命令

(1)查找帮助  svn help

查看的帮助svn help import,在这里有详细的import命令的用法。

(2)svn import

将一个工程加入到svn中,eg

svn import  testproject   [url | file path]

注:testproject为工程目录路径 

(3)svn co [url | path] : 从svn中checkout代码

(4)svn add foo

    将foo添加入工程,若foo为目录,所有文件都将加入,若只想加入目录本身,svn add foo --non-recursive

   svn delete foo

   同add相反

  svn move foo foo1  改名(类似linux的mv)

  svn  mkdir blort:创建一个目录

(5) 检查修改

  svn status:检察你的修改了那些文件

  svn diff:列出每个文件的修改明细

    生成patchfile

svn diff > pathfile

同具体的版本的进行diff

svn diff -r 3

比较具体两个版本号的diff

svn diff -r 2:3

(6)更新代码及解决冲突

   svn up  或者svn update

(7)提交修改

  svn commit

(8) 检查历史

  svn log

(9)浏览版本库

svn list

svn cat

3 版本管理

(1):svn的版本号是一类数字,也可以用特定的关键字表示版本

HEAD :版本最新的版本号

BASE:工作拷贝中一个条目的修订版本号

COMMITTED:项目最近修改的修订版本,与BASE相同或更早

PREV:commit之前的一个版本

比如你想看最新版本的修改

svn log -r HEAD,此时HEAD就会被解释为最新的版本号

(2)用时间查找版本号

svn log -r {2011-04-01}:{2011-04-22}

4 分支与合并

在一个工程目录里都有一个主干trunk目录和一个分支branches目录。

当一个项目很大,有多个人协作开发时,如果大家都在主干目录开发时容易造成混乱。

当你一个人开发一个功能模块时,而开发周期可能比较长才能完成该功能,

此时你不能将未完成的代码提交到主干,容易造成混乱。此时你可开一个分支,

然后在你这个分支目录下工作。

(1)创建分支

svn copy [url]  [url]

eg:svn copy http://svn.example.com/repos/calc/trunk http:://svn.example.com/repos/cal/branches/my-calc-branch

此时并不真得弄一个复本,只是一个链接,称为廉价复价。

这个时候你就可以从你的分支目录check out代码,并进行工作了

svn co http:://svn.example.com/repos/cal/branches/my-calc-branch.

(2)在分支上工作,

可以svn commit,此时并不影响主干。

(3)合并分支:

当你开发周期较长时,而此时主干代码已经发生更交,若时间过长,

很可能你的支支与主干脱节,此时要将主干更新的代码合并到你的分支上。

 svn merge url

例如:svn merge http://svn.example.com/repos/calc/trunk

将主干部分更新代码合并到你的分支上。

 

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜