centos 搭建git服务器
首先服务器需安装git
参考链接:https://www.cnblogs.com/-mrl/p/11045998.html
搭建git服务器
1.新建git仓库主目录,可以选择创建在/data目录下。也可以选择放置在/var目录下【mkdir -p :递归创建目录,即使上级目录不存在,会按目录层级自动创建目录】
mkdir -p /data/gitrepos
2.新建访问用户,下面新增zhangsan,lisi两个git用户,添加后用户会生成/home/zahngsan家目录;
useradd zhangsan useradd lisi
或【适用于使用密码登录的情况】
seradd -M zhangsan //-M 表示不创建家目录
3.给用户设置密码,分别设置登陆密码,拉取代码和提交代码需要提供密码;
passwd zhangsan passwd lisi
4.变更git仓库的所有者到任何人 ,赋予nobody就是把权限给了所有人;
chown -R nobody:nobody /data/gitrepos
5.修改git仓库的读写权限,这样子git仓库就能读写了,否则会报错拒绝提交的;
chmod -R 755 /data
6.修改用户shell登陆权限(禁止客户端shell登录),找到最后头的zhangsan、lisi,把冒号后面的/bin/bash改成/usr/local/git/bin/git-shell,就是你的git安装目录下的/bin/git-shell,然后保存退出。【每次都想输入密码则可忽略】
vi /etc/passwd
如:
7.添加用户的SSH公钥,免密码登录【使用密钥对来增强安全性,并且免去输密码的麻烦,如需每次输入密码登录该步骤可省去】。【每次都想输入密码则可忽略】
创建公钥目录
mkdir -p /home/zhangsan/.ssh
切换目录后创建密钥存放文件
cd /home/zhangsan/.ssh vi authorized_keys
将从zahngsan、lisi的电脑的C:/users/用户名/.ssh目录下找到id_rsa.pub,分别设置到对应的用户的.ssh目录中authorized_keys文件中;
(PS1:如果张三没有id_rsa.pub文件的话,那就用cmd执行git config --global user.name "zahngsan" git config --global user.email "张三的能接收邮件的邮箱",然后执行 ssh-keygen,然后按三下回车【PS:它先要求你确认保存公钥的位置(.ssh/id_rsa),然后它会让你重复一个密码两次,如果不想在使用公钥的时候输入密码,可以留空。】,就有那个文件了)
(PS2:也可是使用以下方法获取id_rsa.pub文件
下载git客户端安装好后右键选择Git GUI Here->Help->Show SSH Key
)
命令截图如下:
验证git服务器
1.linux git服务器创建裸仓库目录 创建裸仓库目录,test为项目名
mkdir -p /data/gitrepos/test
2.linux git服务器创建裸仓库 ,git服务器初始化仓库的时候一定要加上--bare,否则你的仓库不能推送代码,test为项目名;
git init --bare /data/gitrepos/test/test.git
3.linux git服务器修改git仓库的读写权限,这样子git仓库就能读写了,否则会报错拒绝提交的,如果push出错有可能这里的权限问题;
chmod -R 777 /data/gitrepos/test
4.在window安装git客户端,打开git bash切换到指定目录,输入git clone zhangsan@服务器IP:/data/gitrepos/test/test.git【PS:如git clone zhangsan@192.168.0.119:/data/gitrepos/test/test.git】,
然后按照提示输入密码就能clone项目;【PS:设置了SSH公钥免密码登录则不需要输入密码】
5.在window然后增加个readme.txt或者其他文件,然后随意添加文字内容,然后在git bash切换到test目录,执行git add readme.txt, git commit -m"新增readme文件", git push -u origin master,就看执行push以后是否成功就行了。
linux 命令如下:
git bash命令如下:
把用户添加到用户组【可不设置】
1.新建访问用户组: groupadd developer(创建developer用户组,你也可以改成其他的);
2.变更git仓库的所有人为developer用户组: chgrp -R developer /data/gitrepos/test, 这是修改权限给git用户组的。
3.添加用户到用户组: usermod -G developer zhangsan, usermod -G developer lisi
如果团队很小,把每个人的公钥收集起来放到服务器的authorized_keys
文件里就是可行的。如果团队有几百号人,就没法这么玩了,这时,可以用Gitosis来管理公钥。
转载于:https://www.cnblogs.com/-mrl/p/11050860.html
centos 搭建git服务器相关推荐
- CentOS 搭建 Git 服务器
官方文档移步 Git 服务器的搭建 安装 Git #yum install git 创建 Git 专用用户 #useradd git,改密码 #passwd git,切换至 Git 用户 #su gi ...
- CentOS搭建Git服务器
安装git yum install -y git 创建git用户 adduser git 初始化git仓库 git init --bare learngit.git 设置仓库所有者 chown -R ...
- CentOs上搭建git服务器
CentOs上搭建git服务器 首先安装setuptools wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0 ...
- CentOS下搭建Git服务器Gitosis
说明:由于条件有限,我这里使用的是同一台centos的,但教程内容基本上通用. 1.编译安装git git安装教程:http://blog.haohtml.com/archives/10093 2.安 ...
- centos7 下搭建git服务器
总的来说,搭建git和svn形式差不多 1.首先要在服务器安装git环境,创建用户密码和仓库等 2.然后个人主机(基本是window)安装git客户端 3.将个人主机客户端的秘钥写到git服务器的一个 ...
- ngrok linux开机自启动,CentOS 搭建ngrok服务器
原标题:CentOS 搭建ngrok服务器 1一.前提条件 1. 准备好一台主机,带公网IP 2. 准备一个一级域名,做好泛解析(二级域名的没有配置成功,汗...) 切记 一定要做好域名泛解析 二.安 ...
- CentOS7搭建Git服务器
CentOS7搭建Git服务器 文章目录 CentOS7搭建Git服务器 前言 搭建步骤 参考链接 前言 现有一台操作系统为CentOS 7的服务器,要将其作为代码库服务器使用,要求使用Git进行代码 ...
- 腾讯云实验之搭建 GIT 服务器教程
搭建 GIT 服务器教程 image.png 下载安装 git 任务时间:5min ~ 10min Git 是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 此实验以 Ce ...
- git ssh配置文件 服务器_Linux 环境 搭建Git 服务器,并且修改SSH端口使用
1.环境配置说明 服务器 CentOS 7 + git(git version 1.8.3.1) 客户端 Windows10 + SourceTree 2.安装 Git 服务器端安装: sudo yu ...
最新文章
- 窗帘效果图css,vuejs、微信小程序窗帘效果
- CSS中的BFC机制
- VTK:相互作用之EllipticalButton
- java发生fullgc的时机_2021-01-02:java中,MinorGC、MajorGC、FullGC 什么时候发生?
- 用python做自动化测试仪器_使用python进行windows自动化测试(1)
- django准备 —环境配置,及其虚拟环境安装、django安装、数据库安装、新建项目...
- 计算机前端学哪些好学,Web前端能干什么工作,好学吗
- win10下装win7双系统_电脑安装双系统win7+win10,安装顺序不同,使用会有什么不同?...
- Flutter报错 Navigator operation requested with a context that does not include a Navigator.
- 微信小程序下拉刷新上拉加载
- 计算机桌面弹窗,网站弹窗广告:教你4种方法,永久关闭电脑弹窗广告,还你一个干净的桌面 _ 惠州SEO...
- 阿里云 CentOS7.9 搭建 Hexo 个人博客教程
- 矩阵正定 matlab,MatLab的:CHOL矩阵必须是正定
- github网站扩展增强
- 2022年国庆红旗头像制作微信小程序源码
- 十年•杭研大咖说 | 邱似峰:从应届生到网易视频云CTO的蜕变
- RISC-V指令集架构------RV32F/RV32D浮点扩展指令集
- 总结运用kali破解WIFI密码的多种方法
- 为什么 MySQL 执行完 Delete 操作之后,空间没有释放?
- yii2 分析 basic\vendor\yiisoft\yii2-gii