SVN命令详解

一、将文件checkout到本地目录php

svn checkout server-path [local-path] [--username=xxxx] [--password=xxxx]服务器

例如:svn checkout svn:192.168.1.1/pro/project project网络

简写:svn codom

二、往版本库中添加新文件svn

svn add fileurl

例如:svn add test.c(添加test.c)版本控制

svn add *.c(添加当前目录下的全部.c文件)日志

三、将改动的文件提交到版本库server

svn commit -m "LogMessage"  [-N] [--no-unlock] path (若是选择了保持锁,就是用-no-unlock开关)ci

例如:svn commit -m "add test file for my test" test.c

简写:svn ci

四、加锁、解锁

svn lock -m "LockMessage" [--force] PATH

例如:svn lock -m "lock test file" test.c

svn unlock PATH

五、更新到某个版本

svn update -r m path

例如:

svn update若是后面没有目录,默认将当前目录以及子目录下的全部文件都更新到最新版本

svn update -r 200 test.c 将版本库中的文件test.c还原到版本200

svn upate test.c (更新,与版本库同步。若是在提交时提示过时的话,是由于冲突,须要先update,修改文件,而后清除svn resolved,最后再提交commit)

简写:svn up

六、查看文件或者目录状态

1) svn status path(目录下的文件和子目录的状态,正常状态不显示)

『?:不在svn控制中;M:内容被修改;C:发生冲突;A:预订加入到版本库;K:被锁定】

2)svn status -v path(显示文件和子目录状态)

第一列保持相同,第二列显示工做版本号,第三和第四列显示最后一次修改的版本号和修改人。

注:svn status、svn diff和svn revert这三条命令在没有网络的状况下也能够执行的,缘由是svn在本地的.svn目录中保留了本地版本的原始拷贝。

简写:svn st

七、删除文件

svn delete path -m "delete log"

例如:svn delete svn://192.168.1.1/pro/domain/test.c -m "delete test file"

或者直接svn delete test.c 而后再svn ci -m "delte test file",推荐使用这种

简写:svn (del,remove,rm)

八、查看日志

svn log path

例如:svn log test.c 显示这个文件的全部修改记录,及其版本号的变化

九、查看文件详细信息

svn info path

例如:svn info test.c

十、比较差别

svn diff path (将修改的文件与基础版本比较)

例如:svn diff test.php

svn diff -r m:n path(对版本m和版本n比较差别)

例如:svn diff -r 200:201 test.c

简写:svn di

十一、将两个版本之间的差别合并到当前文件

svn merge -r m:n path

例如:svn merge -r 200:205 test.c(将版本200与205之间的差别合并到当前文件,可是通常都会产生冲突,须要处理一下)

十二、svn帮助

svn help

svn help ci

--------------------------------------------------------------

以上是经常使用命令,下面写几个不常常用的

--------------------------------------------------------------

1三、版本库下的文件和目录列表

svn list path

显示path目录下的全部属于版本库的文件和目录

简写:svn ls

1四、建立归入版本控制下的新目录

svn mkdir

1五、恢复本地修改

svn revert:恢复原始未改变的工做副本文件,

用法: svn revert path

1六、代码库url变动

svn switch(sw):更新工做副本至不一样的URL。

用法:1 svn switch URL [PATH] 更新你的工做副本,映射到一个新的URL,其行为跟“svn update”很像,也会将服务器上文件与本地文件合并,这是将工做副本对应到同一仓库中某个分支或者标记的方法。

2 svn switch -relocate FORM TO [PATH...] 改写工做副本的URL元数据,以反映单纯的URL上的改变。当仓库的URL变更(好比方案名或者主机名成变更),可是工做副本仍旧对映到同一仓库的同一目录时使用这个命令更新工做副本与仓库的对应关系。

1七、解决冲突

svn resolved:移除工做副本的目录或文件的“冲突”状态

用法:svn resolved [path]

注意:本命令不会依语法来解决冲突或是移除冲突标记;它只是移除冲突的相关文件,而后让path能够在此提交。

1八、输出指定文件或URL的内容

svn cat 目标[@版本]

svn cat -r PREV filename > filename (PREV是上一版本,也能够写具体版本号,这样输出结果是能够提交的)

相关文章
相关标签/搜索