SVN的常用操作
A.SVN包括的文件
????svn
??????? 一个命令行式的客户端程序;
??? svnversion
??????? 报告本地工作副本状态(用当前档案的修订版本号表示)的程序;
??? svnadmin
??????? 用来创建、tweaking或者是修复仓库的工具;
??? svndumpfilter
??????? A program for filtering Subversion repository dumpfile format streams.
??? mod_dav_svn
??????? Apache 服务器的一个插件模块,用来使其他人可以通过网络访问这个仓库;
??? svnserve
??????? 一个定制的、独立的 Subversion 服务程序。可作为一个驻留进程运行或者是由 SSH 调用。是
使仓库可以被别人通过网络访问的另一种方法。
B.SVN的revision
7.revision
1)可以用--revision或-r来指定修订版关键字
关键字包括:
HEAD
BASE
COMMITTED
PREV
eg.$?svn?diff --revision?PREV:COMMITTED foo.c
2)可以指定修订版日期
eg.
$?svn?checkout --revision?{2002-02-17}
$?svn?checkout --revision?{2/17/02}
$?svn?checkout --revision?{"17 Feb"}
$?svn?checkout --revision?{"17 Feb 2002"}
$?svn?checkout --revision?{"17 Feb 2002 15:30"}
$?svn?checkout --revision?{"17 Feb 2002 15:30:12 GMT"}
$?svn?checkout --revision?{"10 days ago"}?
$?svn?checkout --revision?{"last week"}?
$?svn?checkout --revision?{"yesterday"}?
$?svn?log --revision?{11/28/2002}
C.常用操作
1.创建仓库
?$ svnadmin create /path/to/repos
2.导入数据到仓库中
?$?svn?import /tmp/project?file:///path/to/repos?-m "initial import"
3.check out数据
?$?svn?checkout?file:///path/to/repos/trunk?project
4.基本工作流程
更新工作副本?svn?update
产生更改?svn?add;svn?delete;svn?copy;svn?move;
查看更改?svn?status;svn?diff;svn?revert
合并其他人的改动?svn?merge;svn?resolved
提交改动?svn?commit
6.使用 update 命令来请求 Subversion 更新本地工作副本
?$?svn?update
8.文件操作
需要让svn知道,所以使用svn的命令而不是系统的命令
svn?copy
svn?move
svn?add
svn?delete
10.查看改动
$?svn?status stuff/fish.c
$?svn?status --verbose??? //显示所有工作目录文件的信息
11.比较工作副本
svn?diff //将你的副本与BASE进行比较
也可以这样:
$?svn?diff > patchfile
12.恢复
svn?revert?? //恢复成BASE
13.提交更改
使用svn?commit命令,你需要提供一个记录信息。
$svn?commit --message "my messages."
$svn?commit --file logmsg
注意:如果你没有指定 --message 或 --file, 那么 Subversion 自动调用你的editor 。
前提是你设置了SVN_EDITOR或EDITOR环境变量。否则会报下面的错误:
svn: 没有一个?SVN_EDITOR,VISUAL 或 EDITOR 环境变数被设定,执行时期的设定中也没有 'editor-cmd' 选项
设置环境变量:在win环境下,可以设置SVN_EDITOR为%SystemRoot%\system32\notepad.exe
?
?
svn co -r901?https://ltfat.svn.sourceforge.net/svnroot/ltfat?ltfat