SVN上线步骤笔记
项目代码位置: /data/svn/play_out
项目代码目录名称: test
SVN创建位置:/data/svn/repos_Web
svn线上地址:svn://192.168.1.1/repos_Web/trunk //trunk创建svn主干,创建branches分支和创建主干一样。如svn://192.168.1.1/repos_Web/branches
1.安装svn
#yum -y install subversion
2.创建svn版本库
#svnadmin create /data/svn/repos_Web
3.配置svn
#cd /data/svn/repos_Web/conf
#ls
authz passwd svnserve.conf
#vim authz //认证用户文件
[groups]
Technical = danny,tom,jeck //用户分组
[repos_Web:/]
@Technical = rw //用户组赋权
danny = rw //用户赋权
* = //其他所有用户权限为无
#vim passwd //认证用户密码文件
[users]
# harry = harryssecret
# sally = sallyssecret
danny = 123456xyz //用户名 = 用户密码
#vim svnserve.conf //svn主配置文件authz和passwd都在该文件中定义,取消其注释即可
anon-access = none //禁止匿名用户访问
auth-access = write //给予赋权用户写的权限
password-db = passwd //定义密码文件为passwd(默认)
authz-db = authz //定义授权用户文件为authz(默认)
4.将工作代码库添加到版本库中
svn import /data/svn/play_out/test file:///data/svn/repos_Web/trunk -m "create SVN"
扩展:创建分支并导入项目
1)先在主干上下载代码/tmp/test 2)创建分支svn://192.168.1.1/repos_Web/branches 3)导入代码svn import /tmp/test file:///data/svn/repos_Web/branches -m "create branches SVN"
5.启动svn
svnserve -d -r /data/svn --config-file=/data/svn/repos_Web/conf/svnserve.conf
-d 以守护进程启动
-r 指定svn仓库的/根目录,表示svn以此目录为/,此处为repos_Web的上一级目录
--config-file 指定启动配置文件,可多个库共用一个配置文件,这样做的好处就是不用每个库都去设置配置文件
6.下载
svn co svn://192.168.1.1/repos_Web/trunk (会提示输入svn账号密码)
也可以直接加上账号密码下载
svn --username danny --password 123456xyz co svn://192.168.1.1/repos_Web/trunk
7.更新
进入svn下载目录
svn updaate
或者
svn update 目录
提示:阿里云注意开启相应安全组端口
补充:
1. 修改svn版本库路径,然后通过/etc/init.d/svnserver start启动
vim /etc/init.d/svnserver
args="--daemon --pid-file=${pidfile} -r /data/svn --config-file=/data/svn/repos_Web/conf/svnserve.conf"
或者在原配置args="--daemon --pid-file=${pidfile} $OPTIONS" 前添加
OPTIONS="-r /data/svn --config-file=/data/svn/repos_Web/conf/svnserve.conf"
2.查看svn文件目录结构
svn list svn://192.168.1.1/repos_Web
svn list svn://192.168.1.1/repos_Web/trunk
3.添加数据并提交
svn add file_name # 这里注意文件并没有上传到服务器,只是准备上传。只有commit成
功后才会将文件上传。
[root@localhost shell]# cd b
[root@localhost b]# echo 456 > 2.txt
[root@localhost b]# svn add 2.txt
A 2.txt
[root@localhost b]# svn commit -m "add 2.txt" //上传数据(修改数据后也需要执行该条语句才能修改上传成功)
增加 b/2.txt
传输文件数据.
提交后的版本为 2。
4. 查看版本库详细信息
1)进入工作目录,svn info
2)任意路径,svn info svn://192.168.1.1/repos_Web/trunk
5. 查看svn状态
1)svn status //正常没有回显,如果有回显表示有修改没有commit,A为添加、M为修改、D为删除
M a.txt
2)svn status -v 目录或文件绝对路径
6.修改当前工作目录文件版本号
进入工作目录
svn update -r 版本号 //更新到指定版本号的版本
7.查看各个版本都有哪儿些变化
svn log svn://192.168.1.1/repos_Web/trunk
8.比较历史各个版本都有那些变化
[root@Danny-server /]# svn diff -r 1:2 /opt/sp2p/t1 //进入工作目录输入svn diff -r 1:2或直接加上绝对路径
Index: /opt/sp2p/t1/c
===================================================================
--- /opt/sp2p/t1/c (版本 1)
+++ /opt/sp2p/t1/c (版本 2)
@@ -1 +1,2 @@
789
+1010
SVN上线步骤笔记的更多相关文章
- Eclipse中配置SVN(步骤简述)
————Eclipse中配置SVN(步骤简述)———— 1.有客户端(tortoiseSVN),服务器端(visualSVN) 两种,根据需要安装,安装后需重启电脑 2.服务器端配置:创建版本库(放工 ...
- SVN命令行笔记
SVN命令行笔记 近期玩了一下命令行,记录如下. svn info <path> #查看文件,路径信息 svn log <path> #查看文件,路径历史记录 svn st(s ...
- FlashBuilder4安装SVN插件步骤
1. 选择菜单 帮助–> 安装新软件 2. 在使用里键入地址: http://subclipse.tigris.org/update_1.6.x并点击添加 在Subclipse栏里选择带有Re ...
- Eclipse在SVN安装步骤(两种)和使用方法
一.至Eclipse安装SVN,最常见的两种方式:手动模式,使用安装向导.具体操作步骤如下: 单程:手动安装 1.官方网站下载,从site-1.6.9.zip文件,网址是:subclipse.tigr ...
- ubuntu中搭建svn服务器步骤
1.安装软件包: sudo apt-get install subversion 2.建立相关文件夹(这里svn放在home文件夹中) cd /home sudo mkdir svn cd /home ...
- SVN快速入门笔记【转】
1. SVN版本控制软件目的 协作开发 远程开发 版本回退 2. 什么是SVN subVersion 支持平台操作 支持版本回退 3. 获取SVN软件 属于C/S结构软件(客户端与服务端) serve ...
- eclipse中导入SVN项目步骤
1.eclipse中安装SVN插件 在线安装步骤: (1)点击 Help --> Install New Software...(2)在弹出的窗口中点击add按钮,输入Name(任意)和Loca ...
- Xcode配置SVN详细步骤
转载:http://blog.csdn.net/weiqubo/article/details/8288635 Xcode 默认自带Git 与 SVN,我们本篇介绍SVN的详细配置步骤如下: 1. ...
- 配置Xcode版本控制SVN详细步骤内含解决Xcode/Mac OS10.8无法配置SVN的解决方法
本站文章均为李华明Himi原创,转载务必在明显处注明:(作者新浪微博:@李华明Himi ) 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/game-de ...
随机推荐
- Java中static、final、static final的区别【转】
说明:不一定准确,但是最快理解. final: final可以修饰:属性,方法,类,局部变量(方法中的变量) final修饰的属性的初始化可以在编译期,也可以在运行期,初始化后不能被改变. final ...
- Objective-C 在main函数之前的过程
main函数是我们所熟知的程序入口,Java.Python.C++等,虽语法各异,但皆是如此.然而,程序真正的起点并非main函数,在此之前,就已经干了很多事情. 1.在main函数打个断点,从调用栈 ...
- NSTimer深入理解
NSTimer,即计时器,用于定时执行一些任务,一次或者多次. 系统Foundation框架提供的最常用方法如下,创建一个NSTimer,并将它放到当前runloop的default mode中. + ...
- java的classloader不求甚解
先简单介绍下java的classloader,网上资料很多,就说点关键的. Java 中的类加载器大致可以分成两类,一类是系统提供的,另外一类则是由 Java 应用开发人员编写的.系统提供的类加载器主 ...
- 解决Skyline 6.5版本中3DML模型单体化后外部网页挂接问题
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- os模块和shutil模块
# coding=utf-8 import os path="D:\\test" ######### 目录结构如下 # test # / \ \ \ # test01 test02 ...
- python中#!/usr/bin/python与#!/usr/bin/env python的区别
目的是在运行python脚本的时候告诉操作系统我们要用python解释器去运行py脚本 所以我们在第一句往往会写如下两句中的其中一句: #!/usr/bin/python 或 >#!/usr/b ...
- ${pageContext.request.contextPath}的作用【转载】
原文地址:http://ps329795485-126-com.iteye.com/blog/1290662 刚开始不知道是怎么回事,在网上也查找了一些资料,看了还是晕. 看了另一个大侠的,终于有了点 ...
- 格式化angularjs日期'/Date(-62135596800000)/'
在实现在angularjs时,发现经序列化后的日期需要格式化显示. 翻看以前的博客,似乎有写过一篇有关js方面的解决办法<格式化json日期'/Date(-62135596800000)/'&g ...
- BJOI2019 题解
BJOI2019 题解 在更了在更了 P5319 [BJOI2019]奥术神杖 对\(V_i\)求个\(\ln\)变成了让平均数最大,显然套分数规划,然后ac自动机上面dp #include<b ...