版本控制系统Subversion
来源:互联网 发布:好穿的皮鞋 知乎 编辑:程序博客网 时间:2024/05/22 04:34
1、安装Subversion
Ubuntu 在安装源中提供了Subversion 的下载,
sudo apt-get update
sudo apt-get install subversion ##全部小写
测试安装结果:
svn -–version
svnadmin –version
结果如下表示安装成功:
2、建立项目仓库
项目仓库用来存储各种文件的主要场所,以目录以作为载体。建立仓库svn_test。将项目所有相关的源代码放在这里面。
zhuxy@ubuntu:~$ mkdir /home/zhuxy/svn_test
zhuxy@ubuntu:~$ svnadmin create /home/zhuxy/svn_test
没报错没的话就是创建成功了。此时在svn_test下面已经有部分文件了。Subversion就是通过他们来记录项目发生的过程。
3、创建项目并导入源文件
第一步创建两个项目;第二步导入源文件到项目仓库中import。
命令解析:import为导入源代码命令。目的是file:///home/zhuxy/svn_test/project。一般会是网络上的一个站点(目录)。本地采用本地目录,“file://”表示协议。subversion支持HTTP、SSH 协议。project为本地的项目名,这并不是实际存在的一个项目,而是一个“逻辑上”的项目。为了防止自己把项目的名字忘记了,可以在本目录下创建一个project项目。但这个project项目中不会自动存储任何内容。”.“表示当前目录,表示将当前目录的所有文件都导入到项目仓库中。
-m选项是为本次操作添加一个操作说明,对于日志文件特别重要,相当于程序中的注释,当出现问题时,可以根据提示信息快速找到原因,即使省略该选项,Subversion 还是会强制要求输入的。
4、开始项目开发
开发人员总是会在自己主机上建立一个目录,然后在这个目录下编写程序。下面这个目录就是在用户主目录下面建立work/project目录,接下来的”开发“就放在此目录下面。
下面从“服务器“上取得源文件的工作拷贝。
由于刚刚把源文件导入到了项目仓库。所以在subversion的逻辑来看,这就是版本”1“
checkoutzhidao subversion从服务器签出源资源。目标是project目录。查看project目录,可以看到源文件已经在里面了。
此时project目录已经和项目“file……/project”已经在subversion层面上建立了关联,以后只要在projec目录上执行的svn update就可以更新本地源代码。
5、后续比较重要的几个命令
客户端修改结束保存时可以查看svn中的源代码有没有在被修改(修改未提交)
svn status multiply.c
会显示M multiply.c
查看修改的和源文件的不同:
svn diffmultiply.c
修改后提交
svn commit -m “修改宏定义宏的错误”
完成提交后会查看日志文件,会发现multiply.c的版本号变为2
svn log multiply.c
6、解决冲突的命令
如果两个人同时对一个文件改动,就会发生冲突。
第一个人提交可以顺利提交(就是先提交的那个人,因为这样子版本号自然+1),第二个提交的就会报错,因为版本号+1已经被占用。
svn update
svn resolves multiply
7、撤销改动
回滚到版本3的状态
svn merge -r 4:3 multiply.c
svn commit -m “鉴于效率,保留两位数的除法宏定义”
声明:此博文参考刘忆智的书籍Ubuntu从入门到精通,浅显易懂,值得一读。
- Subversion版本控制系统
- 版本控制系统Subversion
- 版本控制系统的新贵:subversion
- Subversion(SVN) 版本控制系统[转]
- 版本控制系统简介RCS/CVS/Subversion
- 版本控制系统简介RCS/CVS/Subversion
- 版本控制系统对比:Git与Subversion
- subVersion 版本控制系统搭建与使用
- 逐渐取代CVS的新一代版本控制系统Subversion
- 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统
- 版本控制系统
- 版本控制系统
- 版本控制系统
- 版本控制系统
- 版本控制系统
- 版本控制系统
- 版本控制系统
- SVN(subversion - 版本控制系统)的简单使用和本地服务的建立
- 实例讲解虚拟机3种网络模式(桥接、nat、Host-only)
- shell编程之正则表达式
- springframework(四)Bean的依赖设置与集合对象的处理
- 无硝烟的互联网公司战争 “三国演义”之阿里巴巴
- Ubuntu12.04等的输入法问题 中英文切换 fitcx
- 版本控制系统Subversion
- VMWare中安装windowsXP遇到的问题
- Git版本控制系统VCS
- Ubuntu中输入输出重定向及管道技术简述
- CentOS7,将文本模式改成图形界面模式
- sudoers文件设置sudo命令无密码(root密码)登录
- 02_虚拟机的安装和SecureCRT、FileZilla、Xmanage、UltraEdit工具的介绍
- PON
- 03_Hadoop简单介绍以及版本信息