linux连接svn上代码,代码管理平台介绍、安装svn、客户端上使用svn(linux)、客户端上使用svn(windows)...

代码管理平台介绍

代码管理平台介绍--svn

版本控制,记录若干文件内容变化,以便未来查阅特定版本修订状况.

好比某一个业务,须要不断更新,好比产品经理这周提交了产品新的需求,改动了一些代码,咱们把新的代码上传到服务器上去,这时候去访问网站就产生了新的变化. 可能咱们天天都有不少的代码须要更新,假如某天想要看几个月前某个业务都更新了哪些地方、都改了哪些功能,想要作一个统计,那就须要去翻看日志,若是这些日志存在还能找到,若这些日志都不存在,那么前面的变动就什么都不知道了. 有了这些代码管理平台以后,能够便咱们查看前面作了哪些变动以及记录,且支持协同开发.

Svn全称subversion,是一个开源版本控制系统,最初母的是为了更好管理Linux内核代码

Git和svn不一样在于Git不须要依赖服务端就能够工做,即git是分布式的.

GitHub是基于Git的线下web页面代码托管品台,能够选择付费服务

GitLab能够认为是一个开源的GitHub,二者没有直接关系

安装sv

准备两台机器:192.168.2.115 -- 服务端

192.168.2.116 -- 客户端git

下载服务端

[root@root-01 ~]# yum install -y subversion

建立版本库

建立版本库的目录:

[root@root-01 ~]# mkdir -p /data/svnroot/myproject

初始化:

[root@root-01 ~]# svnadmin create /data/svnroot/myproject

初始化后会生成配置文件等:

[root@root-01 ~]# ls -la /data/svnroot/myproject

总用量 8

drwxr-xr-x 6 root root 86 10月 23 11:38 .

drwxr-xr-x 3 root root 23 10月 23 11:34 ..

drwxr-xr-x 2 root root 54 10月 23 11:38 conf

drwxr-sr-x 6 root root 233 10月 23 11:38 db

-r--r--r-- 1 root root 2 10月 23 11:38 format

drwxr-xr-x 2 root root 231 10月 23 11:38 hooks

drwxr-xr-x 2 root root 41 10月 23 11:38 locks

-rw-r--r-- 1 root root 229 10月 23 11:38 README.txt

配置文件目录:

[root@root-01 ~]# cd /data/svnroot/myproject/conf/

[root@root-01 conf]# ls

authz passwd svnserve.conf

说明:authz 文件是用来控制权限的

passwd 文件是用来定义密码的

svnserve.conf 是仓库的配置文件

编辑authz文件

vim authz

在[groups]下面添加:

Anna = user1,user2 Anna是用户组,用户组包含了两个用户(user1和user2)

[/] 方括号里面的根指的是这个目录:/data/svnroot/myproject/conf/

@Anna = rw Anna用户组可读可写

* = r 除了Anna用户组,其余的可读

另外一种方式:

[myproject:/] [myproject:/] 这表示一个项目,这种方式用在svnroot目录下有多个项目,也就是指定某个项目

user1 = rw

编辑passwd文件

[root@root-01 conf]# vim passwd

[users]

# harry = harryssecret

# sally = sallyssecret

添加用户名和密码:

Anna = 123456

user1 = 586898

user2 = 586898

注:前面是用户名,后面是密码

编辑svnserve.conf

vim svnserve.conf

在[general]下面添加:

anon-access = none anon--匿名用户 没有任何权限

auth-access = write auth--被受权的用户 可写

password-db = passwd 指定用户密码的文件是passwd

authz-db = authz 指定用户权限的文件是authz

realm = /data/svnroot/myproject 表示对应哪一个项目生效

启动svn

启动:

[root@root-01 conf]# svnserve -d -r /data/svnroot/

查看进程:

[root@root-01 conf]# ps aux |grep svn

root 3877 0.0 0.0 162188 656 ? Ss 13:48 0:00 svnserve -d -r /data/svnroot/

root 3882 0.0 0.0 112664 968 pts/0 S+ 13:57 0:00 grep --color=auto svn

查看监听端口3690:

[root@root-01 conf]# netstat -nlpt |grep svn

tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 3877/svnserve

客户端上使用svn(Linux)

下载客户端

说明:客户端下载subversion就可使用svn命令web

[root@root-02 ~]# yum install -y subversion

检索

检索:

[root@root-02 ~]# cd /home

[root@root-02 svn]# svn checkout svn://192.168.2.115/myproject --username=user1

认证领域: /data/svnroot/myproject

“user1”的密码:

-----------------------------------------------------------------------

注意! 你的密码,对于认证域:

/data/svnroot/myproject

只能明文保存在磁盘上! 若是可能的话,请考虑配置你的系统,让 Subversion

能够保存加密后的密码。请参阅文档以得到详细信息。

你能够经过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,

来避免再次出现此警告。

-----------------------------------------------------------------------

保存未加密的密码(yes/no)?yes

取出版本 0。

[root@root-02 home]# ls

myproject

客户端更新的文件上传到服务端

说明:是在客户端操做vim

[root@root-02 ~]# cd /home/myproject

拷贝文件:

[root@root-02 myproject]# cp /etc/favicon.png .

增长:

[root@root-02 myproject]# svn add ./favicon.png

A (bin) favicon.png

上传到服务端:

[root@root-02 myproject]# svn commit -m "add favicon.png"

正在增长 (二进制) favicon.png

传输文件数据.

提交后的版本为 2。

查看服务端

服务端本地是没法显示刚客户端上传的文件:

[root@root-01 ~]# cd /home/svntest/myproject

[root@root-01 myproject]# ls

升级能够看到客户端上传的文件:

[root@root-01 myproject]# svn up

正在升级 '.':

A favicon.png

更新到版本 2。

[root@root-01 myproject]# ls

favicon.png

客户端上使用svn(windows)

下载svn

svn官网:https://tortoisesvn.net/windows

点击DE EN ZH --> 点击下载 --> 根据系统下载32位或64位bash

a98328b87f4c48d3b44670f231eaa59a.gif

下载完成后点击打开,全部都点击下一步

a98328b87f4c48d3b44670f231eaa59a.gif

在桌面建立一个目录,命名为myproject

点击右键,看看有没有红色框框内的两个图标,若没有的话,重启电脑服务器

a98328b87f4c48d3b44670f231eaa59a.gif

点击svn checkout

说明: 红色框框内的IP地址和目录须要填写 --->点击oktcp

a98328b87f4c48d3b44670f231eaa59a.gif

点击ok后会弹出认证对话框

填写用户名和密码 -->点击ok分布式

a98328b87f4c48d3b44670f231eaa59a.gif

最后还会弹出一个对话框,点击ok便可

a98328b87f4c48d3b44670f231eaa59a.gif

checkout后,myproject目录就有两个文件svn

a98328b87f4c48d3b44670f231eaa59a.gif

把客服端的1.txt上传到服务端

建立1.txt --> 点击右键Tortoise SVN -->点击Add -->点击SVNcommit -->会弹出一个对话框,要填写add 1.txt -->点击ok --> 再点击ok网站

a98328b87f4c48d3b44670f231eaa59a.gif

a98328b87f4c48d3b44670f231eaa59a.gif

查看服务端,升级后就有1.txt

[root@root-01 ~] cd /home/svntest/myproject

升级:

[root@root-01 myproject]# svn up

正在升级 '.':

A 1.txt

更新到版本 5。

[root@root-01 myproject]# ls

123.txt 1.txt favicon.png fstab test.txt

在Linux上建立11.txt,上传到服务端

[root@root-01 myproject]# vim 11.txt

[root@root-01 myproject]# svn add 11.txt

A 11.txt

[root@root-01 myproject]# svn commit -m "add 11.txt"

正在增长 11.txt

传输文件数据.

提交后的版本为 6。

Windows要想查看这个文件,点击右键SVNUpdate便可

a98328b87f4c48d3b44670f231eaa59a.gif

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值