linux搭建git服务
以centeros为例,讲讲如何搭建git服务器。
简单来说,其实就是在linux上用git创建一个***.git文件夹,然后客户端的git通过ssh访问这个文件夹而已。
然后再高级点就是利用 SSH公钥整个免密登录,当然,理论上这玩意其实跟git本身没啥关系。
- 安装git
方法很多,简单点就yum install git
- 创建git服务
- 创建用户
其实随便用一个用户就行,也不用特意新建。
但是好像一般都是习惯创建专门账户作为git服务和文件的管理。
比如我们创建一个用户名jyl,密码jyl的账户:
useradd jyl
passwd jyl
密码太简单时会提示,可以不用管。
- git文件
当前登录的比如是root用户,所以我们切换下用户:su jyl,避免创建文件后还得改权限。
进入用户主目录,然后创建一个test.git
git init --bare test.git
- 客户端访问
git clone jyl@IP:/home/jyl/test.git
这里要注意的是域名后面一定要从根目录开始写。
然后随便新建个文件写点东西,上传试下。就是这么简单。
- SSH公钥
- 客户端创建公钥
比如windows,命令行输入ssh-keygen -t rsa -C "123@test.com",然后直接回车确认每一步,最后在用户目录下会生成公钥文件id_rsa.pub
- 服务器写入配置
【依然是以新用户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里面内容,写进去完事。
- 更改ssh权限
这里主要是配置使用前面创建的.ssh/authorized_keys文件中的公钥
编辑文件
vi /etc/ssh/sshd_config
在其中加入内容
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
最后刷新下服务:
service sshd restart
- 关闭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服务相关推荐
- linux搭建git服务管理仓库
一.搭建gitblit版本的git代码仓库 下载前置条件,已经有java环境,java -version或者java --version可以查看 ①下载gitlab安装包官网地址:http://git ...
- gogs搭建git服务教程
使用gogs搭建自己的git服务!!! 一.GIT服务器搭建方式 上一节课我们讲过GIT是一个分布式版本管理系统,既然是分布那么必定会涉及远程通信,那么GIT是采用什么协议进行远程通信的呢? git支 ...
- Windows 环境搭建 git 服务
Windows 环境搭建 git 服务 有时候在本地开发个人项目, 需要对代码进行版本管理, 可在 Windows 上搭建一个自己使用的 git 服务器 当前搭建系统环境 Windows10 安装Gi ...
- linux 单机安装yum,Linux搭建Nacos服务(单机版)
Linux搭建Nacos服务(单机版) 1.下载Nacos安装包 2.安装JDK 3.解压文件 4.启动nacos 5.服务注册&发现和配置管理 6.停止服务 7.开启nacos持久化 8.重 ...
- linux配置中心自动化,centos下搭建git服务 基于git服务配置自动化部署 遇到的Linux知识补充...
安装 git su root yum install -y git 添加 git 用户,用于管理/使用 git 服务/仓库 创建用户 git # 添加名为git的用户, 并且会默认创建一个名为git的 ...
- 代码管理平台介绍、安装svn、客户端使用svn、远程仓库、分支管理、标签管理、git别名、搭建git服务、安装gitlab、简单使用gitlab、备份和恢复
22.1 代码管理平台介绍 现在的开发工作都是由团队合作来完成开发,通常都是团队中的每个人或者每几个人完成一个模块的开发,最后再将模块拼凑起来,形成一个完整的项目,这就涉及到了协同开发.在各个模块的开 ...
- linux搭建git服务器,windows客户端配置git
Linux服务器配置之Git服务器搭建步骤: 一.配置环境 1.服务器:CentOS 8.2(64位) + Git (version 2.27.0) 2.客户端:Windows 10 (64位) + ...
- linux搭建git服务器
Linux服务器配置之Git服务器搭建步骤: 一.配置环境 1.服务器:lCentOS 7.2(64位) + Git (version 1.8.3.1) 2.客户端:Windows 10 Pro(64 ...
- 用Gogs在Windows上搭建Git服务
1.下载并安装Git,如有需求,请重启服务器让Path中的环境变量生效. 2.下载并安装Gogs,请注意,在Windows中部署时,请下载MiniWinService(mws)版本. 3.在Maria ...
- linux git 搭建 debian,基于Debian Linux搭建Git服务器
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 因为一些众所周知的原因,某些项目不适合开源(代码写的烂我会乱说?(╯﹏╰)b ).又因为博主不是壕,买不起Github的 ...
最新文章
- boost之asio同步io使用实例
- XenDesktop 5.6 PVS6.1测试中出现的一例错误:Management Interface:Remote request failed
- CodeForces - 570E(dp------------- Codeforces Round #316 (Div. 2)E
- VS中添加第三方库及相对路径设置
- 计算机二级C语言考的函数,【帮考网】2012计算机等级二级考试C语言:函数递归...
- GoogleNet_V3实验
- 2021免费注册TK域名使用一年的方法
- 每日英语-2018.12.3
- 英特尔发布酷睿系列 | 历史上的今天
- 二手书市场的快速增长:多抓鱼产品分析报告
- 前端如何调用微信授权登录
- 怎么判断冠词用a还是an_不定冠词a和an有哪些用法
- HGU3336 Count the string (KMP Next数组的应用)
- cookies设置,获取和清除
- 套路继续, .txt 小说阅读器功能开发
- 云付董事长 张凉凉:光环背后的“执拗者”
- 最经典的黑客入门教程
- 电销外呼系统主要有哪些作用?
- 物联网安全复习二感知层安全
- 回文字符串——动态规划的一般解决方案
热门文章
- android开发学习 ------- android studio 同时用svn和git 进行代码管理 出现的问题
- 去哪儿 Api 自动化测试实践
- 聚焦数据安全管理——安踏信息安全管理体系实践
- android笔记集one
- msxml3.dll error '80072efd' 错误的解决办法
- PHP配置问题(找不到指定模块)解决办法
- 架构运维篇(二):Centos7/Linux安装部署Tomcat环境
- JS多维数组转一维数组递归降维-数组扁平化
- 平安性格测试题及答案_中国平安EPASS测试题2016年
- golang 提示:can‘t resolve file