一.安装SVN和配置SVN

1.安装SVN

apt-get install subversion

2.创建SVN目录,项目目录和配置文件目录

mkdir /var/svn

mkdir /var/svn/project

mkdir /var/conf

3.创建认证文件

vim /var/conf/authz
#加入
[/]
*=
@DEV=rw @basic=r @sync=rw [union:/] chendayi=r [chendayi:/] chendayi=rw [groups] basic=user01

4.创建认证密钥

vim /var/conf/passwd
#加入
[users]
user01=

5.创建SVN服务配置文件

vim /var/conf/svnserve.conf
加入
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

6.修改文件执行权限

chmod +x  /var/conf/authz

chmod +x  /var/conf/passwd

chmod +x  /var/conf/svnserve.conf

7.写个脚本启动svn

vim /var/svn/svnserver.sh
#加入
#!/bin/sh
/usr/bin/svnserve -d -r "/var/svn/project/" --config-file "/var/svn/conf/svnserve.conf" 加入执行权限
chmod +x /var/svn/svnd.sh

8.启动SVN服务器

cd /var/svn/
.svnserver.sh

检查SVN是否启动
netstat-ntlp
tcp 0.0.0.0: 0.0.0.0:* LISTEN /svnserve

二、创建svn仓库并检出

1.创建svn仓库

svnadmin create /var/svn/project/test

执行命令后生成以下文件
ls /var/svn/project/test
conf db format hooks locks README.txt

2.检出项目到网站目录

cd /var/www

svn checkout svn://127.0.0.1/test  ##简写:svn co

三、svn中相关命令

1.往版本库中添加新的文件

svn add test.php 

2.将改动的文件提交到版本库

svn commit -m " add test file for my test " test.php   ##简写:svn ci

3.加锁/解锁

svn lock -m " lock test file " test.php
svn unlock test.php

4.更新版本

##更新到最新版本
svn update test.php ##简写:svn up
##更新到指定版本
svn update -r test.php

5.查看文件或者目录状态

##查看目录下的文件和子目录的状态(正常不显示)
svn status path ##简写:svn st
## ?:不在svn的控制中
## M:内容被修改
## C:发生冲突
## A:预定加入到版本库
## K:被锁定
##查看目录下所有的文件和子目录的状态
svn status -v path
第一列最高版本号 第二列当前工作版本号,第三最后修改人 第四列文件路径。

6.删除文件

svn delete test.php -m " delete test file " ##简写:svn (del, remove, rm)

7.查看文件的所有修改日志

svn log test.php

8.查看文件详细信息

svn info test.php

9.比较差异

##将修改的文件与基础版本比较)
svn diff test.php ## 简写:svn di
##比较两个版本之间的差异
svn diff -r : test.php

10.将两个版本之间的差异合并到当前文件

svn merge -r : test.php     ##一般都会产生冲突,需要处理一下

11.SVN 帮助

svn help

12.版本库下的文件和目录列表

svn list path  ##简写:svn ls

13.创建纳入版本控制下的新目录

svn mkdir

14.恢复本地修改

svn revert  ##该命令不会恢复被删除的目录

15.代码库URL变更

svn switch

16.解决冲突

svn resolved

17.输出指定版本的文件

svn cat -r PREV test.php > test2.php ##PREV 是上一版本,也可以写具体版本号

Ubuntu12.04 SVN安装过程的更多相关文章

  1. Modelsim6.5在Ubuntu12.04的安装过程

    注:本人是在虚拟机Ubuntu12.04安装成功的,但是在虚拟机Ubuntu11.10却没有安装成功,具体原因至今未详,以后如果知道再补充吧.本博文主要的参考博文是http://blog.csdn.n ...

  2. 在vmware 6.5+ubuntu12.04上安装VMware tools出现问题的分析

    笔者已经写了一篇关于安装"VMware Tools",以实现文件共享的文章,那篇文章对于你实现共享操作是足够了, 所以,倘若你赶时间不如直接去在虚拟机的linux中利用VMware ...

  3. Ubuntu12.04下安装sourcenavigator-NG4.5阅读源代码

    大家知道Windows下有一个很好的查看源代码的软件sourceinsight,使用sourceinsight查看Linux内核代码.嵌入式软件开发中的C语言项目源代码.驱动程序代码很是方便.在Lin ...

  4. 阿里云ubuntu12.04下安装使用mongodb

    阿里云ubuntu12.04下安装mongodb   apt-get install mongodb 阿里云ubuntu12.04下卸载mongodb,同时删除配置文件     apt-get pur ...

  5. Ubuntu14.04 Tomcat 安装过程记录

    Ubuntu14.04 Tomcat 安装过程记录 检查java的版本 zhousp@ubuntu:~$ sudo java -version [sudo] password for zhousp: ...

  6. ubuntu-12.04.4-alternate-i386安装

    Ubuntu-12.04.4安装 0.网络配置环境: 1. 选择中文简体. 2.选择第一个,安装ubuntu . 3.询问是否安装所选择的语言版本,选择yes. 4.选择“否”默认键盘布局,选择 no ...

  7. ubuntu10.04 svn安装方法

    ubuntu10.04 svn安装方法:sudo apt-get install subversion sudo apt-get install libneon27-dev orsudo apt-ge ...

  8. ubuntu12.04 svn ssl错误

    1,ubuntu12.04 svn ssl错误提示: OPTIONS of '<url>': SSL handshake failed: SSL error: Key usage viol ...

  9. 在ubuntu12.04上安装6款顶级漂亮的BURG主题

    BURG 基本上是一个基于GRUB的Linux引导装载程序.BURG格有一个高度可配置的菜单系统,可选择文本和图形模式.简而言之,BURG可广泛定制,有良好免费的BURG主题.选择自己最喜欢的,下面我 ...

随机推荐

  1. c# 删除word文档中某一页

    object objPage = 14; int pages = oDoc.ComputeStatistics(Microsoft.Office.Interop.Word.WdStatistic.wd ...

  2. jsp文件中charset和pageEncoding的区别

    jsp文件中charset和pageEncoding的区别:  contentType的charset是指服务器发送给客户端时的内容编码,contentType里的charset=utf-8是指示页面 ...

  3. encode 与 decode

    decode 将其它编码的字符串转换成unicode编码,例如:str1.decode("gb2312"),表示将gb2312编码的字符串转换成unicode编码 encode 将 ...

  4. 【week2】燃尽图

    燃尽图(burn down chart)是在项目完成之前,对需要完成的工作的一种可视化表示.燃尽图有一个Y轴(工作)和X轴(时间).理想情况下,该图表是一个向下的曲线,随着剩余工作的完成,“烧尽”至零 ...

  5. Directory类的使用、Alt+Shift+F10可以查看其命名空间

    对于一个对象,按下Alt+Shift+F10可以查看其命名空间. Directory类的使用 using System; using System.Collections.Generic; using ...

  6. 在intelllij中debug的时候使用log4j输出

    一般在本地调试的时候,在控制台打印输出都会使用system.out.print,但是在线上运行的时候一般都是使用log4j进行日志输出. 那么在编写代码的时候,又不想写两份,直接写LOG是常规动作. ...

  7. TCP标志位简析

    TCP标志位简析   TCP标志位  URG:此标志表示TCP包的紧急指针域(后面马上就要说到)有效,用来保证TCP连接不被中断,并且督促中间层设备要尽快处理这些数据: ACK:此标志表示应答域有效, ...

  8. Swift学习与复习

    swift中文网 http://www.swiftv.cn http://swifter.tips/ http://objccn.io/ http://www.swiftmi.com/code4swi ...

  9. BZOJ 2306 幸福路径(DP)

    题解来源:http://www.cnblogs.com/jianglangcaijin/p/3799494.html 最后必然是走了一条链,或者是一个环(一直绕),或者是一条链加一个环.设f[i][j ...

  10. C++中Set的使用

    /* #include <string> // 使用 string 类时须包含这个文件 #include <iostream> // 这个就加上去吧.c++的输入和输出. us ...