我们在前面介绍了Subversion的定义及如何安装等内容,大家应该已经掌握了。Subversion版本控制离不开命令,下面我们来学习一些新的内容,Linux中的Subversion命令。
1、将文件checkout到本地目录
svncheckoutpath(path是服务器上的目录)
例如:svncheckoutsvn://192.168.1.1/pro/domain
简写:svnco
2、往版本库中添加新的文件
svnaddfile
例如:svnaddtest.php(添加test.php)
svnadd*.php(添加当前目录下所有的php文件)
3、将改动的文件提交到版本库
svncommit-m“LogMessage“[-N][--no-unlock]PATH(如果选择了保持锁,就使用–no-unlock开关)
例如:svncommit-m“addtestfileformytest“test.php
简写:svnci
4、加锁/解锁
svnlock-m“LockMessage“[--force]PATH
例如:svnlock-m“locktestfile“test.php
svnunlockPATH
5、更新到某个版本
svnupdate-rmpath
例如:
svnupdate如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
svnupdate-r200test.php(将版本库中的文件test.php还原到版本200)
svnupdatetest.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svnresolved,最后再提交commit)
简写:svnup
6、查看文件或者目录状态
1)svnstatuspath(目录下的文件和子目录的状态,正常状态不显示)【?:不在Subversion命令的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】
2)svnstatus-vpath(显示文件和子目录状态)
第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。
注:svnstatus、svndiff和svnrevert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的.svn中保留了本地版本的原始拷贝。
简写:svnst
7、删除文件
svndeletepath-m“deletetestfle“
例如:svndeletesvn://192.168.1.1/pro/domain/test.php-m“deletetestfile”
或者直接svndeletetest.php然后再svnci-m‘deletetestfile‘,推荐使用这种
简写:svn(del,remove,rm)
8、查看日志
svnlogpath
例如:svnlogtest.php显示这个文件的所有修改记录,及其版本号的变化
9、查看文件详细信息
svninfopath
例如:svninfotest.php
10、比较差异
svndiffpath(将修改的文件与基础版本比较)
例如:svndifftest.php
svndiff-rm:npath(对版本m和版本n比较差异)
例如:svndiff-r200:201test.php
简写:svndi
请关注下节Linux下Subversion命令介绍吧。
【编辑推荐】
- 术语汇编:剖析Subversion编译相关问题
- 浅谈Subversion密码的远程修改工具
- 经验总结:浅谈Subversion安装在Windows和Linux下的区别
- 深入剖析:Subversion1.5.5和Apache2.2.9在Windows下的完美结合
- 学习笔记:剖析Collabnet Subversion集成