• 如何搭建git服务器


    一、前言

      现在越来越多的公司用git进行版本控制,不过git是默认是开源的,如果私有的话是需要付费的,如果不想付费自己可以搭建一个git服务器用来版本控制。

    二、服务器端操作

      1、安装git

    sudo apt-get install git

      2、创建一个git用户

    sudo adduser git

      3、创建登录证书

      创建公钥私钥

    # git config --global user.name "test"
    
    # git config --global user.email "xxxx@qq.com"
    
    #ssh-keygen -t rsa -C "xxxx@qq.com"

      在git用户目录下创建.ssh文件夹并在其下创建文件authorized_keys

    # cd  /home/git
    # sudo
    mkdir .ssh # sudo touch .ssh/authorized_keys

      收集需版本控制下的用户的公钥,就是他们自己的id_rsa.pub文件,这个需要生成,具体可以Google生成,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,不同的公钥换行

      4、选定仓库目录,初始化仓库

      比如我是git用户根目录下的agame-server文件夹

      

    sudo git init --bare agame-server

      5、将这个目录授权git用户组

    sudo chown -R git:git agame-server

      6、为了安全考虑,我们禁用shell登录,编辑/etc/passwd找到类似下面的代码并更改

    git:x:1001:1001:,,,:/home/git:/bin/bash
    改成
    git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

    三、客户端操作

      客户端操作就比较简单了直接clone下来就好了

    git clone git@192.168.0.197:agame-server
    //这个ip是我局域网git服务器的ip 具体根据自己的服务器更改 agame-server是我的git仓库同上服务器初始化的仓库  如果是/var/www/agame-server  就是git clone git@192.168.0.197:/var/www/agame-server
    //如果在windows上提示没有权限创建文件夹  就以管理员身份运行下git bash
    //一开最好选择下分支不然可能会提交失败不知道提交到那个分站 git fetch origin(这是我的分支 因为自己搭建的测试服务器没有多个分支)
  • 相关阅读:
    iOS 11和xcode9
    #ifdef __OBJC__宏定义的作用
    项目小分析------从 优普钱包工资单 谈代码的规范性和界面的一般写法
    UIAlertView 点击按钮后控制其是否消失
    iOS 限制输入字数完美解决方案
    tn文本分析语言(四) 实现自然语言计算器
    重磅开源:TN文本分析语言
    差一点其实差很多
    光棍节之夜,用数据分析帮女神学姐选婚房
    你能排第几?2016互联网行业薪酬数据分析
  • 原文地址:https://www.cnblogs.com/IT--Loding/p/6081152.html
Copyright © 2020-2023  润新知