• ubuntu 16.04 搭建git小型服务器


      最近搭建了一个小型git服务器,由于网上资料鱼龙混杂,让我着实踩了不少地雷。做一个记录,以备不时之需。

    一 搞清楚你的需求?

      假如你要搭建的服务器只供几十个人使用,并且没有专门的网管服务的话,切记,一定要简单,简单,只需要按照

    我下面的操作步骤来就行了,别的什么gitosis,Gitolite了,就不要用了,详细原因参考:

    https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000

    接下来介绍安装git server的安装流程:

    1 创建git用户和添加.ssh目录

    $ sudo adduser git
    $ su git
    $ cd
    $ mkdir .ssh && chmod 700 .ssh
    $ touch .ssh/authorized_keys && chmod 600 .ssh/authorized_keys

     接下来,你需要把一些开发者的公钥加到文件authorized_keys 公钥的内容类似下面:

    $ cat /tmp/id_rsa.john.pub
    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCB007n/ww+ouN4gSLKssMxXnBOvf9LGt4L
    ojG6rs6hPB09j9R/T17/x4lhJA0F3FR1rP6kYBRsWj2aThGw6HXLm9/5zytK6Ztg3RPKK+4k
    Yjh6541NYsnEAZuXz0jTTyAUfrtU3Z5E003C4oxOj6H0rfIF1kKI9MAQLMdpGW1GYEIgS9Ez
    Sdfd8AcCIicTDWbqLAcU4UpkaX8KyGlLwsNuuGztobF8m72ALC/nLF6JLtPofwFBlgc+myiv
    O7TCUSBdLQlgMVOFq1I2uPWQOkOWQAHukEOmfjy2jctxSDBQ220ymjaNsHT4kgtZg2AYYgPq
    dAv8JggJICUvax2T9va5 gsg-keypair

    你只需要把他们加到ssh目录下的authorized_keys文件中即可,可以直接粘贴复制,也可以通过类似下面的命令行:

    $ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys
    $ cat /tmp/id_rsa.josie.pub >> ~/.ssh/authorized_keys
    $ cat /tmp/id_rsa.jessica.pub >> ~/.ssh/authorized_keys

    接下需要在服务端创建一个空的:

    $ cd /srv/git
    $ mkdir project.git
    $ cd project.git
    $ git init --bare
    Initialized empty Git repository in /srv/git/project.git/

     服务端配置到此为止。

    2 客户端的配置:

    在的电脑上,配置一下命令,来初始化git客户端和主干:

    # on John's computer
    $ cd myproject
    $ git init
    $ git add .
    $ git commit -m 'initial commit'
    $ git remote add origin git@gitserver:/srv/git/project.git
    $ git push origin master

     接下来就只需要把本地的git文件同步到服务器端即可。

    $ git clone git@gitserver:/srv/git/project.git
    $ cd project
    $ vim README
    $ git commit -am 'fix for the README file'
    $ git push origin master

     到现在,任务完成,到服务器端查看是否已经同步到此。

    参考文档:

    1 https://git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-the-Server 

  • 相关阅读:
    IntelliJ Idea 2017 免费激活方法
    RabbitMq、ActiveMq、ZeroMq、kafka之间的比较
    Oracle锁的机制
    序列化和持久化的区别
    Hibernate框架之get和load方法的区别
    Hibernate框架之入门案例
    Oracle添加数据报文字与格式字符串不匹配错误
    Linux设备驱动程序 之 异步通知
    Linux设备驱动程序 之 poll和select
    Linux设备驱动程序 之 休眠
  • 原文地址:https://www.cnblogs.com/dylancao/p/9026176.html
Copyright © 2020-2023  润新知