2----svn介绍和常用命令

本文介绍了Subversion(SVN)版本控制系统的基本概念、工作流程及常用命令。SVN是一种广泛使用的版本控制工具,用于管理随时间变化的项目数据。文中还提供了SVN的官方资源链接,并列举了客户端文档及下载地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,subverison介绍
svn版本管理工具管理着随时间改变的各种数据库,数据放置在repository中;svn会备份并记录每个文件每一次的修改 更新变动。

svn工作流程:
1,在中央库上创建或从主干复制一个分支
2,从中央库check out 下这个分支的代码
3,增加自己的代码文件,修改现存的代码或删除代码文件
4,commit代码,假设有人在刚刚的分支上提交了代码,你就会被提示代码过期
   先up你的代码后再提交,up代码时候出现 冲突,需要解决好冲突后再提交

svn官网,文档,下载地址
http://subversion.apache.org/
http://subversion.apache.org/docs/
http://subversion.apache.org/download.cgi
http://svnbook.red-bean.com/
http://www.iusesvn.com/

windows下svn客户端文档,下载地址
https://tortoisesvn.net/
https://tortoisesvn.net/docs/
https://tortoisesvn.net/downloads.html

二,svn服务端运行方式与访问方式
1,独立运行
svn://svn.test.com/test
2,借助apache等http服务
http://svn.test.com/test
    1,单独安装apache+svn
    2,CSVN是一个单独的整合的软件,带web界面管理的SVN软件
3,本地直接访问 
file:///application/svndata/test

三,svn存储数据方式:
1,BDB
2,FSFS:二进制文件,所以看不见代码

四,svn常用命令:
1、将文件checkout到本地目录
svn checkout svnpath localpath (svnpath就是版本库路径)
简写:svn co svnpath localpath
例如:
svn checkout file:///data0/svn/showyw / /data0/web_root/showyw

2、版本库下的文件和目录列表
  svn list path
   显示path目录下的所有属于版本库的文件和目录
svn list file:///data0/svn/youdao --verbose

3、往版本库中添加新的文件
svn add filename1 filename2 filename3
例如:
cd /data0/web_root/showyw
svn add test.php(添加test.php)
svn add *.php(添加当前目录下所有的php文件)
 
4、将改动的文件提交到版本库
svn commit -m "LogMessage" PATH
例如:
cd /data0/web_root/showyw
svn ci 
svn commit -m "add test file for my test" test.php
 
5、更新到某个版本
svn update -r m path
例如:
svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
svn update -r 3 test.php(将版本库中的文件test.php还原到版本3)
svn update test.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)

 
6、删除文件
svn delete path -m "delete test fle"
例如:
svn delete test.php  然后再 svn ci -m 'delete test file'

 
7、查看文件或者目录状态
1)svn status path(目录下的文件和子目录的状态,正常状态不显示)
【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】
2)svn status -v path(显示文件和子目录状态)
第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。
注:svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的.svn中保留了本地版本的原始拷贝。

8、查看日志
  svn log path
   例如:svn log test.php 显示这个文件的所有修改记录,及其版本号的变化
 
9、查看文件详细信息
  svn info path
   例如:svn info test.php
 
10、比较差异
  svn diff path(将修改的文件与基础版本比较)
   例如:svn diff test.php
svn diff -r m:n path(对版本m和版本n比较差异)
   例如:svn diff -r 1:2 test.php

11、将两个版本之间的差异合并到当前文件
  svn merge -r m:n path
   例如:svn merge -r 1:2 test.php(将版本1与2之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下)
 
12、SVN 帮助
  svn help
svn help ci









本文转自 wpf926 51CTO博客,原文链接:http://blog.51cto.com/wupengfei/1956820,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值