以centeros为例,讲讲如何搭建git服务器。

简单来说,其实就是在linux上用git创建一个***.git文件夹,然后客户端的git通过ssh访问这个文件夹而已。

然后再高级点就是利用 SSH公钥整个免密登录,当然,理论上这玩意其实跟git本身没啥关系。

  1. 安装git

方法很多,简单点就yum install git

  1. 创建git服务

    1. 创建用户

其实随便用一个用户就行,也不用特意新建。

但是好像一般都是习惯创建专门账户作为git服务和文件的管理。

比如我们创建一个用户名jyl,密码jyl的账户:

useradd jyl

passwd  jyl

密码太简单时会提示,可以不用管。

  1. git文件

当前登录的比如是root用户,所以我们切换下用户:su jyl,避免创建文件后还得改权限。

进入用户主目录,然后创建一个test.git

git init --bare test.git

  1. 客户端访问

git clone jyl@IP:/home/jyl/test.git

这里要注意的是域名后面一定要从根目录开始写。

然后随便新建个文件写点东西,上传试下。就是这么简单。

  1.  SSH公钥

    1. 客户端创建公钥

比如windows,命令行输入ssh-keygen -t rsa -C "123@test.com",然后直接回车确认每一步,最后在用户目录下会生成公钥文件id_rsa.pub

  1. 服务器写入配置

【依然是以新用户jyl的状态创建文件夹和文件】

mkdir /home/jyl/.ssh

touch /home/jyl/.ssh/authorized_keys

然后再修改下文件和文件夹的权限

chmod 700 /home/jyl/.ssh

chmod 600 /home/jyl/.ssh/authorized_keys

这个authorized_keys中写入客户端的公钥,如果有多个客户端,就每个一行。

怎么把内容写进去方法也特别多,简单点就ssh中vi编辑器打开authorized_keys,然后复制下id_rsa.pub里面内容,写进去完事。

  1. 更改ssh权限

这里主要是配置使用前面创建的.ssh/authorized_keys文件中的公钥

编辑文件

vi /etc/ssh/sshd_config

在其中加入内容

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

最后刷新下服务:

service sshd restart

  1. 关闭ssh登录

通过前面的设置,此时已经不需要输入密码就可以访问了。也就是说SSH远程登录也不需要密码。为了控制该用户只能git使用,需要把shell修改为只能使用git的shell。

vi /etc/passwd

修改:jyl:x:1000:1000::/home/jyl:/bin/bash

jyl:x:1001:1001::/home/jyl:/bin/git-shell

然后刷新服务

service sshd restart

linux搭建git服务相关推荐

  1. linux搭建git服务管理仓库

    一.搭建gitblit版本的git代码仓库 下载前置条件,已经有java环境,java -version或者java --version可以查看 ①下载gitlab安装包官网地址:http://git ...

  2. gogs搭建git服务教程

    使用gogs搭建自己的git服务!!! 一.GIT服务器搭建方式 上一节课我们讲过GIT是一个分布式版本管理系统,既然是分布那么必定会涉及远程通信,那么GIT是采用什么协议进行远程通信的呢? git支 ...

  3. Windows 环境搭建 git 服务

    Windows 环境搭建 git 服务 有时候在本地开发个人项目, 需要对代码进行版本管理, 可在 Windows 上搭建一个自己使用的 git 服务器 当前搭建系统环境 Windows10 安装Gi ...

  4. linux 单机安装yum,Linux搭建Nacos服务(单机版)

    Linux搭建Nacos服务(单机版) 1.下载Nacos安装包 2.安装JDK 3.解压文件 4.启动nacos 5.服务注册&发现和配置管理 6.停止服务 7.开启nacos持久化 8.重 ...

  5. linux配置中心自动化,centos下搭建git服务 基于git服务配置自动化部署 遇到的Linux知识补充...

    安装 git su root yum install -y git 添加 git 用户,用于管理/使用 git 服务/仓库 创建用户 git # 添加名为git的用户, 并且会默认创建一个名为git的 ...

  6. 代码管理平台介绍、安装svn、客户端使用svn、远程仓库、分支管理、标签管理、git别名、搭建git服务、安装gitlab、简单使用gitlab、备份和恢复

    22.1 代码管理平台介绍 现在的开发工作都是由团队合作来完成开发,通常都是团队中的每个人或者每几个人完成一个模块的开发,最后再将模块拼凑起来,形成一个完整的项目,这就涉及到了协同开发.在各个模块的开 ...

  7. linux搭建git服务器,windows客户端配置git

    Linux服务器配置之Git服务器搭建步骤: 一.配置环境 1.服务器:CentOS 8.2(64位) + Git (version 2.27.0) 2.客户端:Windows 10 (64位) + ...

  8. linux搭建git服务器

    Linux服务器配置之Git服务器搭建步骤: 一.配置环境 1.服务器:lCentOS 7.2(64位) + Git (version 1.8.3.1) 2.客户端:Windows 10 Pro(64 ...

  9. 用Gogs在Windows上搭建Git服务

    1.下载并安装Git,如有需求,请重启服务器让Path中的环境变量生效. 2.下载并安装Gogs,请注意,在Windows中部署时,请下载MiniWinService(mws)版本. 3.在Maria ...

  10. linux git 搭建 debian,基于Debian Linux搭建Git服务器

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 因为一些众所周知的原因,某些项目不适合开源(代码写的烂我会乱说?(╯﹏╰)b ).又因为博主不是壕,买不起Github的 ...

最新文章

  1. boost之asio同步io使用实例
  2. XenDesktop 5.6 PVS6.1测试中出现的一例错误:Management Interface:Remote request failed
  3. CodeForces - 570E(dp------------- Codeforces Round #316 (Div. 2)E
  4. VS中添加第三方库及相对路径设置
  5. 计算机二级C语言考的函数,【帮考网】2012计算机等级二级考试C语言:函数递归...
  6. GoogleNet_V3实验
  7. 2021免费注册TK域名使用一年的方法
  8. 每日英语-2018.12.3
  9. 英特尔发布酷睿系列 | 历史上的今天
  10. 二手书市场的快速增长:多抓鱼产品分析报告
  11. 前端如何调用微信授权登录
  12. 怎么判断冠词用a还是an_不定冠词a和an有哪些用法
  13. HGU3336 Count the string (KMP Next数组的应用)
  14. cookies设置,获取和清除
  15. 套路继续, .txt 小说阅读器功能开发
  16. 云付董事长 张凉凉:光环背后的“执拗者”
  17. 最经典的黑客入门教程
  18. 电销外呼系统主要有哪些作用?
  19. 物联网安全复习二感知层安全
  20. 回文字符串——动态规划的一般解决方案

热门文章

  1. android开发学习 ------- android studio 同时用svn和git 进行代码管理 出现的问题
  2. 去哪儿 Api 自动化测试实践
  3. 聚焦数据安全管理——安踏信息安全管理体系实践
  4. android笔记集one
  5. msxml3.dll error '80072efd' 错误的解决办法
  6. PHP配置问题(找不到指定模块)解决办法
  7. 架构运维篇(二):Centos7/Linux安装部署Tomcat环境
  8. JS多维数组转一维数组递归降维-数组扁平化
  9. 平安性格测试题及答案_中国平安EPASS测试题2016年
  10. golang 提示:can‘t resolve file