zoukankan      html  css  js  c++  java
  • 虚拟机 Ubuntu 搭建Git服务器

    准备环境:

    虚拟机 Ubuntu

    本地 Win7

    搭建步骤:

    1.安装Git和ssh

    sudo apt-get install git
    sudo apt-get install openssh-server openssh-client

    2.增加Git用户

    sudo adduser git

      给用户git sudo权限,切换至root用户下修改/etc/sudoers文件

    3.创建ssh证书认证文件

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

      修改authorized_keys文件的权限

    sudo chmod 777 /home/git/.ssh/authorized_keys

    4.把需要访问git服务器的客户端公钥id_rsa.pub的内容复制到authorized_keys文件

      本地git bash,将客户端id_rsa.pub文件上传至服务器

       复制该文件内容至authorized_keys文件

    cat /home/git/id_rsa.pub
    echo "<将上一步输出的内容复制>" >> /home/git/.ssh/authorized_keys

    5.修改相关文件权限

    sudo chmod 700 /home/git
    sudo chmod 700 /home/git/.ssh
    sudo chmod 600 /home/git/authorized_keys
    sudo chown -R git:git /home/git
    sudo chown -R git:git /home/git/.ssh
    sudo chown -R git:git /home/git/.ssh/authorized_keys

    6.建立代码仓库

    sudo mkdir /home/mygit

      初始化裸仓库

    sudo git init --bare /home/mygit/project.git

      更改权限

    sudo chown -R git:git /home/mygit/project.git

    7.在客户端clone仓库

    $ git clone git@<git服务器ip地址>:/home/mygit/project.git

    8.禁用git用户登录权限,修改/etc/passwd文件中git的设置

      

    实现目录文件同步:

    1.进入裸仓库的hoos目录

    cd /home/mygit/project.git/hooks

    2.创建post-receive文件

    sudo touch post-receive

    3.修改该文件内容(更新代码位置是:/home/mygit/project)

    #!/bin/sh
    GIT_WORK_TREE=/home/mygit/project  git checkout -f

    4.添加执行权限

    sudo chmod +x post-receive

    5.修改所有者

    sudo chown -R git:git /home/mygit/project

    参考文章:

    https://www.cnblogs.com/daner1257/archive/2019/04/24/10761849.html

    https://blog.csdn.net/weixin_42130167/article/details/84565059

     https://blog.csdn.net/u012763794/article/details/51007961

  • 相关阅读:
    Bootstrap 实战之响应式个人博客 (一)
    观察者(发布——订阅)模式
    迭代器模式
    代理模式
    策略模式
    单例模式
    CSS3 媒体记
    CSS3 动画记
    css3 过渡记
    CSS3 变形记
  • 原文地址:https://www.cnblogs.com/rn-05181226-rw/p/12491619.html
Copyright © 2011-2022 走看看