开发人员常用命令
导入项目
svn import http://svn.chinasvn.com:82/pthread
--message "Start project"
导出项目
svn checkout http://svn.chinasvn.com:82/pthread
采用 export 的方式来导出一份“干净”的项目
svn export http://svn.chinasvn.com:82/pthread
pthread
为失败的事务清场
svn cleanup
在本地进行代码修改,检查修改状态
svn status -v
svn diff
更新(update)服务器数据到本地
svn update directory
svn update file
增加(add)本地数据到服务器
svn add file.c
svn add dir
对文件进行改名和删除
svn mv b.c bb.c
svn rm d.c
提交(commit)本地文档到服务器
svn commit
svn ci
svn ci -m "commit"
查看日志
svn log directory
svn log file
svn checkout url[@version] [path]
如果不跟path,则checkout到当前路径,以url中最后一个路径名作为检出文件名
如果有path,则为path的最后路径名为检出文件名
Svn add
add: 把文件和目录纳入版本控制,通过调度加到版本库。它们会在下一次提交时加入。
用法: add 路径...
Svn del
delete (del,
remove, rm): 从版本库中删除文件和目录。
用法: 1、delete
PATH...
2、delete URL...
1、每个 PATH 指定的项目会被调度到下次提交时从版本库删除。除非给出
--keep-local 参数,工作副本中没有提交的文件和目录会被立即删除。
如果 PATH 是未版本控制或者已修改的项目,或者包含这些项目,那么仅当
给出 --force 参数时这些项目才会被删除。
2、每个 UR L指定的项目会通过立即提交从版本库中删除。
Svn status
status (stat, st): 显示工作副本中目录与文件的状态。
用法: status [PATH...]
未指定参数时,只显示本地修改的条目(没有网络访问)。
使用 -q 时,只显示本地修改条目的摘要信息。
使用 -u 时,增加工作版本和服务器上版本过期信息。
使用 -v 时,显示每个条目的完整版本信息。
冲突
1.Svn update
<<<<<<< .mine
*
wuzhong haha 2 本地代码块
=======
*
wuzhong hello world
svn库 v27版本代码块
>>>>>>> .r72
*/
2 . svn resolved path
3. svn commit –m “***”
Svn log –v [PATH]
Svn diff
用法: 1. diff [-c M | -r N[:M]] [TARGET[@REV]...]
2. diff [-r N[:M]] --old=OLD-TGT[@OLDREV] [--new=NEW-TGT[@NEWREV]] \
[PATH...]
3. diff OLD-URL[@OLDREV] NEW-URL[@NEWREV]
1、显示版本 REV 中 TARGET 在两个不同的版本之间的差异。TARGET 要么全是
工作副本路径,要么全是
URL。如果 TARGET 是工作副本路径,N 默认为
BASE,M 默认为工作副本;如果 TARGET 是 URL,N 必须指定, M 默认为 HEAD。
“-c M” 等价于 “-r M-1:M”,“-c -M” 等价于 “-r M:M-1”。
2、显示新旧版本中对应目标的差异。PATH 是相对于新旧目标的相对路径,
它限制只输出这些路径上的差异。新旧目标可以是工作副本路径或地址 URL[@REV]。
新目标默认与旧目标相同,OLDREV
默认为 N,NEWREV 默认为 M。
3、“svn diff
--old=OLD-URL[@OLDREV] --new=NEW-URL[@NEWREV]” 的简写。
使用不加参数的 “svn diff” 显示工作副本中的本地修改。
有效选项:
-r
[--revision] ARG : ARG (一些命令也接受ARG1:ARG2范围)
版本参数可以是如下之一:
NUMBER 版本号
'{' DATE '}' 在指定时间以后的版本
'HEAD' 版本库中的最新版本
'BASE' 工作副本的基线版本
'COMMITTED' 最后提交或基线之前
'PREV' COMMITTED的前一版本
-c
[--change] ARG : 在ARG版本(如同 -r
ARG-1:ARG)作的修改
如果ARG为负数则等价于 -r
ARG:ARG-1
--old ARG : 使用 ARG 作为旧目标
--new ARG : 使用 ARG 作为新目标
-N
[--non-recursive] : 过时;尝试 --depth=files
或 --depth=immediates
Svn merge
merge: 将两个源差异应用至工作副本。
用法: 1. merge sourceURL1[@N]
sourceURL2[@M] [WCPATH]
2. merge sourceWCPATH1@N sourceWCPATH2@M [WCPATH]
3. merge [-c M[,N...] | -r N:M ...] SOURCE[@REV] [WCPATH]
1、第一种形式中,源 URL
的版本 N 与 M 作为比较的来源。如果没有指定版本,默认
为 HEAD。
2、在第二种形式中,两个源工作副本路径对应的版本库中的 URL 作为比较的来源。这
里必须指定版本。
3、第三种形式中,SOURCE
可为 URL 或工作副本中的路径(后者会使用版本库中对应
的 URL)。比较版本为 REV 的 SOURCE,就像它在版本 N 到 M 存在一样。如果没
有给出 REV,默之认为 HEAD。选项 “-c M” 等价于 “-r <M-1>:M”,“-c -M” 与
相反,等价于 “-r M:<M-1>”。如果没有指定版本范围,默认为 0:REV。可以指定
多个 “-c” 或 “-r”,并且可以混合使用向前范围或向后范围。
WCPATH 是接收修改的工作副本路径。如果省略了 WCPATH,默认为
“.”,除非来源中
有与当前目录内同名的文件,这时修改会直接应用至该文件。
注意: Subversion 只有当两个合并源有继承关系的时候才会内部跟踪合并操作的源数
据 -- 即如果第一个合并源是第二个的祖先,或者相反。在上述的第三种形式中,已经
保证了满足条件。选项
--ignore-ancestry 忽略继承关系,强制 Subversion 认为合并
源之间没有关系,不跟踪本次合并。
Svn mkdir
svn mkdir
svn://www.svnhost.cn/wuzhong/giant/brunches/shell -m "mk shell dir"
分享到:
相关推荐
《CI持续集成服务器Hudson使用备忘》 在软件开发过程中,持续集成(Continuous Integration,简称CI)是一种实践,它强调开发人员频繁地将他们的代码更改合并到共享存储库中,并且每次合并后都会立即进行自动化构建...
在数据库版本控制中,备忘录模式可以帮助我们记录数据库在不同时间点的结构和数据,使得我们能够回滚到先前的状态,就像在文件系统中使用SVN(Subversion)一样进行版本提交、修改和恢复。 在Java中,实现数据库...
- **Linux**: 命令行操作(ls、cd、cp、mv、grep、find、sed、awk)、文件权限、进程管理、系统调用等。 - **Windows**: DOS命令、注册表编辑、系统服务管理、任务管理器等。 7. **网络安全**: - 密码学基础:...
在Linux环境下,虽然有许多命令行工具可以进行代码阅读,如`grep`、`less`等,但SourceInsight提供的交互式界面和智能跳转功能使其成为开发者的一个得力助手。其主要特点包括: 1. **代码高亮显示**:SourceInsight...