美文网首页Git我用 LinuxLinux学习之路
Cent OS 搭建git服务器及配置SSH访问-详细步骤

Cent OS 搭建git服务器及配置SSH访问-详细步骤

作者: 橘子周二 | 来源:发表于2018-02-27 17:37 被阅读29次

    最近开始折腾linux(先借的哈哈,那个前端开发还没个后台好基友呢)
    也算数初步入门了吧,刚好公司git需要迁移于是就有了这篇文章。
    虽然遇到问题都解决了,但是也在反思,仅仅明白命令的作用还不足。还是要对系统环境有一个广度的认知才行,在解决问题时才能有正确的方向。

    一、Cent OS git 安装

    • 1.下载linux对应的压缩安装包,上传至服务器目录(你也可以直接使用wget工具下载,但服务器一般下载都比较慢)
      下载地址:https://www.kernel.org/pub/software/scm/git/
      我这里下载的是:git-2.9.0.tar.gz

    • 2.解压
      tar xzf git-2.9.0.tar.gz

    • 3.设置安装路径前缀,安装路径/usr/local/SoftWareName

    cd git-2.9.0
    configure --prefix=/usr/local/git -with-tcltk 
    

    通常首次安装git,configure可能都没有配执行路径,换成这样即可:
    ./configure --prefix=/usr/local/git -with-tcltk

    • 4 安装
      还是在 解压目录git-2.9.0
    //make all 可安装说明文档
      make 
      make install
    

    运行 git --version 查看是否成功
    如果是首次安装就还需将git 命令执行路径添加到 PATH

    vim /etc/bashrc
    //末尾加入如下命令
    export PATH=/usr/local/git/bin:$PATH保存退出
    //刷新配置
    source /etc/bashrc
    //重新运行 git --version
    [root@xx git-2.9.0]# git --version
    git version 2.9.0
    

    到这里安装就结束了。

    二、服务器创建git远程仓库

    1.创建一个裸仓
    git init --bare
    为什么使用--bare?

    2.创建项目仓库(work tree 目录)

    cd myProject.git/
    git init
    

    完成项目仓库初始化。此时已经可以访问这个仓库了。
    3.配置远程仓库地址
    git remote add origin git@xx.xx.xx/xx/myProject.git
    查看是否添加成功
    git remote -v

    这里可以随便添加个文件,比如加个README.md

    4.从远程仓库clone 到本地。
    git clone ssh://git@xx.xxx./xx/myProject.git

    5.测试提交可能会遇到需要设置denyCurrentBranch 的错误提示
    到服务器端.修改work tree 下 .git/config 文件。末尾添加

    [receive]
    denyCurrentBranch = ignore
    

    或者直接执行
    git config receive.denyCurrentBranch ignore

    保存重新提交。
    6.服务器查看提交的文件
    刷新提交
    git reset --hard
    运行完毕,可看到见修改内容就大功告成

    三、配置ssh 访问方式

    关于git在linux上的用户管理方式,这里就省略了。
    我上面使用的用户叫 git ,所以这里默认就在git 根目录操作

    1.切换至root 用户

    su root
    cd /etc/ssh
    vim sshd_config
    

    解开下面三行注释

    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh/authorized_keys
    

    保存重启sshd服务
    /etc/rc.d/init.d/sshd restart
    上面看到 身份认证文件要放到.ssh目录下
    2.创建身份认证文件并添加公钥
    进入git 用户根目录创建 .ssh 文件夹及 authorized_keys文件

    cd /home/git
    mkdir .ssh
    cd .ssh
    touch authorized_keys
    vim authorized_keys
    //将公钥添加至文件末尾 保存退出
    

    3.使用root 用户 开启ssh 访问,并拒绝使用ssh 直接登陆进服务器
    vim /etc/passwd
    找到
    git:x:502:504::/home/git:/bin/git-shell
    修改为git 软件安装目录下的shell命令路径
    git:x:502:504::/home/git:/usr/local/git/bin/git-shell
    重新在客户端commit push 就不用输入密码了。


    END

    相关文章

      网友评论

        本文标题:Cent OS 搭建git服务器及配置SSH访问-详细步骤

        本文链接:https://www.haomeiwen.com/subject/zhyyxftx.html