svn——svn 常用命令总结

svn查看操作

1、svn log —— 显示服务器中各版本的作者、提交日期、备注信息等

svn log

svn log -r 2:3                   显示指定的两个版本的log信息

svn log file                       显示指定文件的log信息

svn log -v                         显示log信息(包含具体修改文件)

svn log -l 5                        显示5条log信息

注:这些命令均可以混合起来使用,如:svn log -l n -v 为显示n条包含具体修改文件信息的log

2、svn diff —— 比较当前目录下的工作文件和缓存在.svn的拷贝“原始版本”(服务器中的最新版本)

svn diff

svn diff  -r 2                      比较你的工作拷贝和版本库中版本号为 2 的文件

svn diff -r  2:3                   比较svn工作版本中版本2和版本3 当前目录文件的变化

3、svn cat —— 将文件内容显示出来

svn cat -r 2 file                  查看版本2的file文件的内容

4、svn list —— 查看文件列表(缩写:svn ls)

svn ls -r 100                      查看指定版本号的文件列表


svn提交操作

具体可看我另一篇博客:svn commit用法

5、svn status —— 查看工作拷贝和版本库里面的文件的区别

svn status

文件名前的标志:

?: 未纳入版本控制

M:文件已修改(在版本控制中,提交将会覆盖svn服务器中的版本)

A:添加文件至服务器中

6、svn add —— 将file文件纳入版本控制

svn add path               把path路径下的文件/文件夹(里面的文件也包含)全部纳入版本控制

svn add folder --non-recursive          把文件夹folder纳入版本控制,但是folder文件夹里的文件不添加(non-revursive  不递归)

svn add *                     把当前目录所以未添加到版本控制的文件全部添加进去 (如果有文件夹是non-revursive的则不添加该文件夹里的文件)

svm add * --force        把当前目录所以未添加到版本控制的文件全部添加进去(包括non-revursive的文件夹里的文件,包括和服务器中存在的相同的文件(将会覆盖))

svn add . --no-ignore --force              把当前目录下所以未添加的文件(包括.project文件等,不忽略任何文件)添加到版本控制中

7、svn revert —— 放弃工作拷贝的修改,恢复文件到服务器上的最新版本

svn revert file              把file文件恢复到原始状态(服务器上的版本)

svn revert -R path       把目录恢复原始状态

8、svn delete ——  从工作拷贝或版本库删除一个项目

svn delete file             从本地目录中删除file文件(之后svn commit就是从版本库中删除该文件)

9、svn commit —— 提交文件至服务器并自动生成新的版本log

svn commit path1 path2 -m"Message"


10、svn checkout —— 把源代码检出(下载)到本地目录(缩写:svn co)

svn checkout svn://192.168.30.20/..(源代码地址)

11、svn update —— 更新当前目录(缩写:svn up)

svn up -r  2                         更新当前目录至第2版本

12、svn resolve —— 移除工作拷贝的目录或文件的“冲突”状态

该命令不是用于解决冲突,只是用于删除有冲突的文件(当提交文件时出现conflict,需要自己查看冲突并解决,在解决之后可以使用svn resolve来决定移除哪些有冲突的文件:选择保留工作拷贝的版本或服务器的版本等)

具体解决冲突的步骤可看我的另一篇博客:svn——conflict问题解决

13、svn lock —— 锁定工作拷贝中的文件,不允许别的用户更改提交

用户使用svn lock上锁后,别的用户不能对上锁的文件进行提交,除非使用lock的用户执行svn unlock或者提交更新后,lock会自动解除,这时别的用户就可以进行修改提交了。

svn lock

锁定之后svn status查看状态:显示状态为k(被锁住了)

14、svn unlock —— 解锁工作拷贝中的文件,允许别的用户进行更改提交

svn unlock

解锁后svn status没有显示任何状态,即MainActivity.java已解锁

15、svn cleanup —— 清理

16、svn blame —— 显示每行代码最近的修改用户名

svn blame file           显示file文件每行代码最近的修改用户名

相关svn教程:

SVN教程|菜鸟教程

SVN版本管理详解

 

 

 

 

发布了12 篇原创文章 · 获赞 0 · 访问量 292

猜你喜欢

转载自blog.csdn.net/qq_39790633/article/details/103794079