svn版本控制 NS2 新协议开发之准备——svn版本控制.doc
文本预览下载声明
NS2 新协议开发之准备——svn版本控制
jerry@jerry-laptop:~$ svnadmin create? ns2-svn??— 创建一个新的空的版本库jerry@jerry-laptop:~$ cd ns2-svnjerry@jerry-laptop:~/ns2-svn$ touch ns-2.34—Touch:当文件存在时把文件的修改时间更新为当前时间,不存在时建立这个文件!jerry@jerry-laptop:~/ns2-svn$ svn import /home/jerry/ns-allinone-2.34/ns-2.34 file:///home/jerry/ns2-svn/ns-2.34 -m Initial import?—将本地当前目录下的文件导入到svn response 中
常用svn命令1、将文件checkout到本地目录svn?checkout?path(path是服务器上的目录)例如:svn checkout svn://192.168.1.1/pro/domain简写:svn co2、往版本库中添加新的文件svn?add?file例如:svn addtest.php(添加test.php)svn add *.php(添加当前目录下所有的php文件)3、将改动的文件提交到版本库svn?commit?-m “LogMessage“ [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)例如:svn commit -m “add test file for my test“ test.php简写:svn ci4、加锁/解锁svn?lock?-m “LockMessage“ [--force] PATH例如:svn lock -m “lock test file“ test.phpsvn?unlock?PATH5、更新到某个版本svn?update?-r m path例如:svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。svn update -r 200 test.php(将版本库中的文件test.php还原到版本200)svn update test.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)简写:svn up6、查看文件或者目录状态1)svn?status?path(目录下的文件和子目录的状态,正常状态不显示)【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】2)svn status -v path(显示文件和子目录状态)第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。注:svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的.svn中保留了本地版本的原始拷贝。简写:svn st7、删除文件svn?delete?path -m “delete test fle“例如:svn delete svn://192.168.1.1/pro/domain/test.php -m “delete test file”或者直接svn delete test.php 然后再svn ci -m ‘delete test file‘,推荐使用这种简写:svn (del, remove, rm)8、查看日志svn?log?path例如:svn log test.php 显示这个文件的所有修改记录,及其版本号的变化9、查看文件详细信息svn?info?path例如:svn info test.php10、比较差异svn?diff?path(将修改的文件与基础版本比较)例如:svn diff test.phpsvn diff -r m:n path(对版本m和版本n比较差异)例如:svn diff -r 200:201 test.php简写:svn di11、将两个版本之间的差异合并到当前文件svn?merge?-r m:n path例如:svn merge -r 200:205 test.php(将版本200与205之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下)12、SVN 帮助svn?helpsvn help ci——————————————————————————以上是常用命令,以下是几个不经常用的——————————————————
显示全部