1.svn的基本概念在这里就不详述了,下一代的CVS。 2.基本命令 (1)查找帮助 svn help 查看的帮助svn help import,在这里有详细的import命令的用法。 (2)svn import 将一个工程加入到svn中,eg svn import testproject [url | file path] 注:testproject为工程目录路径 (3)svn co [url | path] : 从svn中checkout代码 (4)svn add foo 将foo添加入工程,若foo为目录,所有文件都将加入,若只想加入目录本身,svn add foo --non-recursive svn delete foo 同add相反 svn move foo foo1 改名(类似linux的mv) svn mkdir blort:创建一个目录 (5) 检查修改 svn status:检察你的修改了那些文件 svn diff:列出每个文件的修改明细 生成patchfile svn diff > pathfile 同具体的版本的进行diff svn diff -r 3 比较具体两个版本号的diff svn diff -r 2:3 (6)更新代码及解决冲突 svn up 或者svn update (7)提交修改 svn commit (8) 检查历史 svn log (9)浏览版本库 svn list svn cat 3 版本管理 (1):svn的版本号是一类数字,也可以用特定的关键字表示版本 HEAD :版本最新的版本号 BASE:工作拷贝中一个条目的修订版本号 COMMITTED:项目最近修改的修订版本,与BASE相同或更早 PREV:commit之前的一个版本 比如你想看最新版本的修改 svn log -r HEAD,此时HEAD就会被解释为最新的版本号 (2)用时间查找版本号 svn log -r {2011-04-01}:{2011-04-22} 4 分支与合并 在一个工程目录里都有一个主干trunk目录和一个分支branches目录。 当一个项目很大,有多个人协作开发时,如果大家都在主干目录开发时容易造成混乱。 当你一个人开发一个功能模块时,而开发周期可能比较长才能完成该功能, 此时你不能将未完成的代码提交到主干,容易造成混乱。此时你可开一个分支, 然后在你这个分支目录下工作。 (1)创建分支 svn copy [url] [url] eg:svn copy http://svn./repos/calc/trunk http:://svn./repos/cal/branches/my-calc-branch 此时并不真得弄一个复本,只是一个链接,称为廉价复价。 这个时候你就可以从你的分支目录check out代码,并进行工作了 svn co http:://svn./repos/cal/branches/my-calc-branch. (2)在分支上工作, 可以svn commit,此时并不影响主干。 (3)合并分支: 当你开发周期较长时,而此时主干代码已经发生更交,若时间过长, 很可能你的支支与主干脱节,此时要将主干更新的代码合并到你的分支上。 svn merge url 例如:svn merge http://svn./repos/calc/trunk 将主干部分更新代码合并到你的分支上。
|
|