• centos安装git服务端和svn服务端


    • git服务端

    首先确保有ssh,centOS自带openssh

    1.查看ssh版本

    ssh -V

    2.安装git

    确保在root用户下执行该命令

    $su root
    #yum install -y git

    验证是否安装成功,输出git version ....则成功

    git --version

    3. 添加git的管理账户,添加该账户之后,在后面需要禁止该账户远程登录,否则会有安全隐患。

    // 以下也为root账户
    #useradd git // 添加git账户
    #passwd git // 为git用户设置密码
    
    #cd /home && ls -al // 查看/home下的目录,添加用户则默认会有一个git的目录,并且用户和组都为git

    4.使用过GitHub都知道ssh的公钥,我们搭建自己的私人git服务端,需要将客户端的私钥保存到服务端

    #su git  // 切换git用户
    $cd /home/git
    $mkdir .ssh
    $cd /home/git/.ssh
    $touch authorized_keys    // 保存公钥的文件
    $ chmod 700 /home/git/.ssh/     // 设置权限
    $ chmod 600 /home/git/.ssh/authorized_keys

    5.将客户端的私钥上传服务器

      在用户主目录下会有一个.ssh的隐藏文件夹,文件夹下有id_rsa和id_rsa.pub两个文件。如果没有请百度

    将id_rsa.pub上传至服务器,并使用

    $cat id_rsa.pub >> authorized_keys

    写入认证文件。

    6.服务器创建测试git仓库

    // 切换到git账号
    $ su git // 进入git账号的用户主目录。
    
    $ cd /home/git  // 在用户主目录下创建 test.git仓库的文件夹
    
    $ mkdir test.git  && cd test.git  // 在test.git目录下初始化git仓库
    
    $ git init --bare
    Initialized empty Git repository in /home/git/test.git/

    此时,客户端就可以clone或者remote add此仓库了

    6.客户端测试连接git仓库,在客户端执行

    $ mkdir demos && cd demos
    $ git init
    $ touch a.txt
    $ echo 'xxxx.com' >> a.txt
    
    $ git add .
    $ git commit -m 'the first commit'
    
    # 把当前仓库跟远程仓库添映射
    $ git remote add origin git@xxxx.com:test.git
    
    # 把当前仓库push到远程仓库。
    $ git push -u origin master

    7.禁用客户端shell登录

    在/home/git下创建git-shell-commands,并且目录为git账户

    $ su git
    $ mkdir /home/git/git-shell-commands

    修改/etc/passwd文件

    $ vim /etc/passwd
    
    # 可以通过 vim的正则搜索快速定位到这行,  命名模式下  :/git:x
    
    # 找到这句, 注意1000可能是别的数字
    git:x:1000:1000::/home/git:/bin/bash
    
    # 改为:
    git:x:1000:1000::/home/git:/bin/git-shell
    
    # 最好不要直接改,可以先复制一行,然后注释掉一行,修改一行,保留原始的,这就是经验!!!
    # vim快捷键: 命令模式下:yy复制行, p 粘贴  0光标到行首 $到行尾 x删除一个字符  i进入插入模式 
    # 修改完后退出保存:  esc进入命令模式, 输入::wq!   保存退出。

    如果有其他小伙伴要连接git服务器,仅需要把他的公钥也添加到authorized_keys即可。

    GIT服务端的安装参照博客:http://cnblogs.com/fly_dragon/p/8718614.html


    • SVN服务端

      使用命令:

    yum install subversion

    即可完成svn服务端的安装。

      检查安装:

    svnserve --version

    使用上面的命令检查版本。

      配置版本库:

    默认项目在/var/svn下。我想放在/home/svn目录下,需要编辑svn的配置文件

    [root@localhost home]# vi /etc/sysconfig/svnserve
    
    # OPTIONS is used to pass command-line arguments to svnserve.
    #
    # Specify the repository location in -r parameter:
    OPTIONS="-r /home/svn"

       创建自己的版本库(项目名:testProject):

    svnadmin create /home/svn/testProject

    创建之后,在/home/svn目录下有testProject的文件夹

      配置版本库的用户名和密码,在testProject下的conf目录有这些配置文件

    vi /home/svn/testProject/conf/passwd

    该文件中是密码的配置,格式是“用户名” = “密码”

    [users]
    # harry = harryssecret
    # sally = sallyssecret
    user1 = 123456
    user2 = 123456

      配置版本库的权限:

    vi /home/svn/testProject/conf/authz

    在文件末尾加上用户的权限,一般用户有根目录的权限

    [/]
    user1 = rw
    user2 = rw

      修改版本库的配置:

    [general]
    anon-access = none                     #控制非鉴权用户访问版本库的权限
    auth-access = write                    #控制鉴权用户访问版本库的权限
    password-db = passwd                   #指定用户名口令文件名
    authz-db = authz                       #指定权限配置文件名

      启动版本库:

    svnserve -d -r /home/svn/

      停止svn:

    killall svnserve

      同步:  

      不能直接在版本库中存文件,svn中将存的是压缩过后的文件,不能直接将文件拷贝到服务端的版本库文件目录下。需要先同步空的版本库到本地,然后将文件add到SVN,然后commit。

  • 相关阅读:
    [git 学习篇] git commit原理 --实践体会
    [git 学习篇]工作区和暂存区
    [git 学习篇] git文件版本回退再学习
    [git 学习篇]版本回退
    [git 学习篇] 修改文件
    [git 学习篇] 提交文件
    [git 学习篇] --创建git创库
    [测试框架学习] 测试框架的结构包含
    [python测试框架] http接口测试框架
    向SharePoint页面添加后台代码
  • 原文地址:https://www.cnblogs.com/to-red/p/11731607.html
Copyright © 2020-2023  润新知