centos服务器下搭建git仓库,使用ssh协议管理仓库代码权限    git官网(http://git-scm.com/)

使用ssh协议:

一、安装git,使用yum install git 或者使用 源码包安装git-2.2.0.tar.gz(https://www.kernel.org/pub/software/scm/git/)

  新建git用户与用户组

  # useradd git
  # passwd git

二,新建git仓库(仓库位置自己随用户自己决定,例/var/git/testproject.git)

  1,在/var/git目录下新建 项目名称testproject.git 文件夹

  2,# cd /var/git/testproject.git 进入文件夹,

     # git init --bare 创建裸库(这里需要注意--bare参数,表示是要生成一个"干净"的仓库)

  3,修改权限

    # chown -R git testproject.git
    # chgrp -R git testproject.git
    # chmod -R 775 testproject.git
    # chmod g+s -R testproject.git

三,配置ssh公钥(无需密码更新代码库)

  1,生成 SSH 公钥:

    每个需要使用git仓库的软件开发者,需要在使用git代码库的电脑上面生成一个ssh公钥,具体步骤:

    1.1 进入自己的~/.ssh目录(win系统在用户文件夹下:C:\Users\Administrator\.ssh),查看有没有用 文件名 和 文件名.pub 来命名的一对文件,这个 文件名 通常是 id_dsa 或者 id_rsa。

      *.pub 文件是公钥,另一个文件是密钥。假如没有这些文件(或者干脆连 .ssh 目录都没有),在linux下,你可以用 ssh-keygen 的程序来建立它们,该程序在 Linux/Mac 系统由 SSH 包提供; 在 Windows 上则包含在 MSysGit 包里,git安装目录中,bin路径下ssh-keygen.exe。

      运行后,它先要求你确认保存公钥的位置(.ssh/id_rsa),然后它会让你重复一个密码两次,如果不想在使用公钥的时候输入密码,可以留空。

  2, 复制本机的*.pub中的内容添加至git仓库所在服务器的git用户文件夹下的/home/git/.ssh/authorized_keys文件中 可使用命令# $ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys,将公钥内容追加至授权文件中。

    如果 ~/.ssh/authorized_keys 不存在,你可以直接将id_rsa.pub 文件复制过去并重命名为authorized_keys即可。

  3, ssh使用公钥授权不通过的问题解决:

    查看并修改ssh配置文件:

     # vi /etc/ssh/sshd_config

      RSAAuthentication yes

      PubkeyAuthentication yes

      AuthorizedKeysFile .ssh/authorized_keys

    保存后,service sshd restart 生效

四,使用仓库

  1,在获得授权的电脑上,打开git bash,

    # git clone git@serverip:/var/git/testproject.git     即可下拉代码且无需密码

CENTOS下搭建git代码仓库 ssh协议的更多相关文章

  1. CentOS下搭建Git服务器(基于SSH协议)

    1,安装Git所需依赖包      # yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel      # ...

  2. 在Centos下搭建git并可以通过windows客户端访问

    亲测在本地虚拟机和远程服务器上无问题,如有不懂请留言. 注意事项:以下所有操作是在root权限下操作的.1.Centos服务器版本centos6.5 2.首先安装git,使用yum在线安装 yum i ...

  3. CentOS下搭建Git服务器

    1.首先需要安装Git,可以使用yum源在线安装: [root@localhost Desktop]# yum install -y git 2.创建一个git用户,用来运行git服务 # addus ...

  4. linux(centos)下安装git并上传代码些许步骤(亲自验证过的步骤)

     曾经听说了好多次github,但直到近期才第一次学习使用github来托管自己在linux下的代码! 说实话.我自己在使用的时候从网上查了好多教程.但总认为难以掌握(步骤过于繁琐),自己操作的时候还 ...

  5. 在Linux下搭建Git服务器的方法是什么样?

    第一步 安装git:可以通过命令的方式快速安装,不同的linux的安装方法可能不一样,我的是采用的yum方法.ubuntu可以用apt-get命令.sudo yum install git 第二步 添 ...

  6. 本地windows下搭建git的本地服务器

    本地windows下搭建git的本地服务器 准备工作: 本地安装java环境,配置环境变量(略) 下载gitblit文件,百度一大堆 开始第一步: 减压gitblit压缩包到某个目录下,比如我在:H: ...

  7. 【转】在Linux下搭建Git服务器

    在 Linux 下搭建 Git 服务器 环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.windows. ...

  8. 在 Linux 下搭建 Git 服务器

    环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.windows.1) ① 安装 Git Linux 做为 ...

  9. 最新搭建GIT服务器仓库

    新开了一个项目,现在需要将代码放在公司GIT服务器上面.所以这里需要了一些问题..记录一下.因为原来公司这边的服务器的git用户都是创建好的.这里没有创建.需要的可以看看:http://www.cnb ...

随机推荐

  1. PHP丨PHP基础知识之条件语SWITCH判断「理论篇」

    Switch在一些计算机语言中是保留字,其作用大多情况下是进行判断选择.以PHP来说,switch(开关语句)常和case break default一起使用 典型结构 switch($control ...

  2. TXT文件的写入及读出

    一.文件的读出: file = open('url/data.txt','r',encoding='utf-8')#打开模式r w a,当文件在当前工作区域直接写文件名:如果不在当前工作区域要写绝对地 ...

  3. python3.6 + django2.0.6 + xadmin0.6

    django2.0集成xadmin0.6报错集锦 http://www.lybbn.cn/data/bbsdatas.php?lybbs=50 1.django2.0把from django.core ...

  4. Java 重写hashCode()与equals()

    为什么要重写hashCode() 和 equals() equals() 默认的Object类里面equals()方法是根据对象所在的内存来做判断的,如果两个对象引用指向的是同一个内存,则返回true ...

  5. SpringBoot -- 项目结构+启动流程

    一.简述: 项目结构 二.简述:启动流程 说springboot的启动流程,当然少不了springboot启动入口类 @SpringBootApplication public class Sprin ...

  6. Java WebService(实战) 简单实例

    一.准备工作(以下为本实例使用工具) 1.MyEclipse10.7.1 2.JDK 1.6.0_22 二.创建服务端 1.创建[Web Service Project],命名为[TheService ...

  7. postman写测试用例

    接口测试引用聚合数据(手机号码归属地)接口 1,点击postman左上角红框+New Collection来创建文件,用来存放测试用例 文件名为号码归属地查询(随意)  2,右击文件选择Add Req ...

  8. The meaningless Game

    题目 Slastyona and her loyal dog Pushok are playing a meaningless game that is indeed very interesting ...

  9. Linux中清空docker容器日志

    新建文件docker-clear-log,放在/usr/local/bin/目录下,文件内容如下: #!/bin/bash -e if [[ -z $ ]]; then echo "No c ...

  10. 11. RobotFramework内置库-Collections

    Collections库是RobotFramework用来处理列表和字典的库,详细可参见官方介绍. 官方地址:http://robotframework.org/robotframework/late ...