环境说明 
- CentOS 7.x 最小安装 
- 配置网络连接

1. 安装Git及创建用户

# 安装Git
$ yum install git # 创建一个git用户组和用户,用来运行git服务
$ groupadd git
$ adduser git -g git

禁止git用户登录:

修改/etc/passwd文件,修改

# 找到这句:
git:x:503:503::/home/git:/bin/bash # 改为:
git:x:503:503::/home/git:/bin/git-shell

2. 创建证书登录

$ mkdir /home/git/.ssh
$ chmod 700 /home/git/.ssh
$ touch 700 /home/git/.ssh/authorized_keys
$ chmod 600 /home/git/.ssh/authorized_keys

注意,如果是采用的sudo方式来创建git和相应的文件的,需要设置/home/git/.ssh/的owner为git,否则还是每次要输入密码的。

# owner改为git
$ sudo chown -R git:git /home/git/.ssh/

编辑/home/git/.ssh/authorized_keys,把客户端的公钥放进去,1个公钥1行。

附:如何创建私钥:

# 创建私钥,文件位于用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件
$ ssh-keygen -t rsa -C "youremail@example.com"

3.初始化Git仓库

$ cd /srv
$ mkdir gitrepo
$ chown git:git gitrepo/
$ cd gitrepo # 创建一个空的Git仓库,服务器上的Git仓库通常都以.git结尾
$ git init --bare project.git # 将仓库所属用户改为git
$ chown -R git:git project.git

4. 克隆仓库

在另一台电脑上(下面称为:Client),安装git,并且运行下面的命令:

$ git clone git@10.123.123.123:/srv/gitrepo/project.git

5. 验证安装

5.1. 推送到远程服务器

在本地Client的project目录下,创建一个文件:text.txt,内容随意,然后上传到远端:

$ git push origin master

5.2. 检验

在本地Client的另外一个目录下,克隆一下:

$ git clone git@10.123.123.123:/srv/gitrepo/project.git

看看text.txt文件是否存在,内容是否对。

5.3. 常用的Git命令:

$ git add . 添加所有文件  注意有个 .
$ git commit -m '注释' 提交本地
$ git push origin master提交给默认分支
$ git -rm 删除
$ git pull origin master 从默认分支下载
$ git branch -v 查看所有分支

注意:
因为git默认走的是ssh端口,而ssh端口默认为22,公司一般都修改了该默认端口;此时需要如下操作:
在用户的家目录下的./ssh/目录里创建config文件:
vim /home/git/.ssh/config
以ip访问的,则添加如下内容:
Host "114.113.152.105"
Port 21113

在CentOS 7中搭建Git服务器的更多相关文章

  1. CentOS 6.4 搭建git 服务器

    CentOS 6.4 搭建git 服务器 (2013-11-22 19:04:09)转载▼ 标签: it 分类: Linux 此文件是依据markdown所编写,更好效果参见本人github的文档ht ...

  2. Centos 6.4搭建git服务器【转】

    前阵子公司需要,让我搭个Git服务器,把之前用的SVN上代码迁移到git上去,所以就在阿里云主机上搭了一个,记录了下安装过程,留存文档以备查阅.本篇本章只涉及搭建部分的操作,更多git的使用可以参考文 ...

  3. 在linux中搭建git服务器

    个人觉得, 以下搭建git服务器的过程就像是在linux增加了一个用户, 而这个用户的登录shell是 git-shell, 太刨根问底的东西我也说不清楚, 还是看下面的过程吧. 过程参考了网上的文章 ...

  4. 自定义Git之使用centos搭建git 服务器

    Github 公开的项目是免费的,但是如果你不想让其他人看到你的项目就需要收费. 这时我们就需要自己搭建一台Git服务器作为私有仓库使用. 接下来我们将以 Centos 为例搭建 Git 服务器. 1 ...

  5. Windows/Linux 环境搭建Git服务器 + vs2012集成git

    1. 下载.安装Git 我的系统是Windows 7,需要安装Git for Windows. 下载地址: http://code.google.com/p/msysgit/downloads/lis ...

  6. 在CentOS搭建Git服务器 转

    在CentOS搭建Git服务器 来自 :http://www.jianshu.com/p/69ea5ded3ede 前言 我们可以GitHub发布一些开源代码的公共仓库,但对于私密仓库就需要收费了.公 ...

  7. CentOs上搭建git服务器

    CentOs上搭建git服务器 首先安装setuptools wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0 ...

  8. CentOS搭建Git服务器及权限管理

    声明:本教程,仅作为配置的记录,细节不展开,需要您有一点linux的命令基础,仅作为配置参考. 1. 系统环境 系统: Linux:CentOS 7.2 64位 由于CentOS已经内置了OpenSS ...

  9. 搭建 Git 服务器(基于 CentOS 7)

    服务器上的-Git-架设服务器-官网参考 对于规模比较小的团队,可以直接搭建 Git 服务器,逐个收集研发同学的证书配置进来即可.如果团队规模比较大,可以直接采用 GitLab.Drone 等现成的带 ...

随机推荐

  1. QT插件+ROS 3 导入现有ROS包

    http://blog.csdn.net/u013453604/article/details/52167213#t5

  2. 手把手教你Chrome浏览器安装Postman(含下载云盘链接)(转)

    文章转自http://www.ljwit.com/archives/php/278.html 说明: Postman不多介绍,是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件.本文主要 ...

  3. String.valueOf()方法注意

    String.valueOf();可以将 int char long float double boolean char[] 转化为字符串输出,但不是这几个类型时候,则会使用Object类型接收,底层 ...

  4. saltstack学习之一:服务架构以及相关配置安装运行

    概要 saltstack是基于Python开发的C/S架构的一款批量管理工具,底层采用动态的连接总线(ZeroMQ消息队列pub/sub方式通信),使用ssl证书签发的方式进行认证管理,使其可以用于编 ...

  5. android 给LinearLayout中添加一定数量的控件,并让着一定数量的控件从右到左移动,每隔若干秒停顿一下,最后一个view链接第一个view,然后继续移动循环往复,形成一个死循环简单动画效果

    主类:IndexAnimationLinearLayout.java package com.yw.sortlistview; import java.util.ArrayList; import j ...

  6. RBAC 基于权限的访问控制 serviceaccount -- clusterRole clusterRoleBinding

    1.Role , RoleBinding 的作用对象都是namespace. 2.通过RoleRef,可以看到,RoleBinding对象通过名字,直接引用前面定义的Role,实现subject(us ...

  7. Windows 系统安装Docker Compose 步骤

    参考 Docker Compose official 官方安装指南: https://docs.docker.com/compose/install/ 实际上到目前为止还不能直接在Windows上安装 ...

  8. 解决RobotFramework的关键字不能高亮的问题

    一个可能的原因:路径中存在汉字,RobotFramework对这方面运行的不太好.

  9. BJOI2018简要题解

    BJOI2018简要题解 D1T1 二进制 题意 pupil 发现对于一个十进制数,无论怎么将其的数字重新排列,均不影响其是不是 \(3\) 的倍数.他想研究对于二进制,是否也有类似的性质. 于是他生 ...

  10. Java开源博客My-Blog之mysql容器重复初始化的严重bug修复过程

    写在前面的话 <Docker+SpringBoot+Mybatis+thymeleaf的Java博客系统开源啦> <Java开源博客My-Blog之docker容器组件化修改> ...