linux下部署git服务器
我这里用的是redhat7.4, 直接开始吧.
环境
服务端: Redhat7.4 + git(version 1.8.3.1) IP:192.168.137.168
客户端: win7 + git (version 2.19.1)
Git
server:
[root@localhost gittest.git]# git --version
git version 1.8.3.1
我这里是有的, 没有的话
yum install git -y
client:
官网地址: https://git-for-windows.github.io/
服务器操作
- 新建git用户与赋予密码
useradd git
passwd git
注:这里的密码我用1234
- 为服务器创建一个git用的文件夹(git仓库)
mkdir /usr/local/gittest.git
注:这个目录可以随便建(项目在哪就放哪), 只要后面授权给git用户管理就行
- 初始化
git init --bare /usr/local/gittest.git
- 授权
chown -R git:git /usr/local/gittest.git
注:这个就很简单了,在/usr/local/gittest.git下会看到生成了目录
客户端操作
注:这一波用的不是powershell或者cmd, 确定客户端的git已安装.
- 简介

- 新建目录
hp@hp-PC MINGW64 /d/wamp64
$ mkdir gittest_gitbash hp@hp-PC MINGW64 /d/wamp64
$ ls
gittest/ gittest_gitbash/ www/
c
hp@hp-PC MINGW64 /d/wamp64
$ cd gittest_gitbash/
hp@hp-PC MINGW64 /d/wamp64/gittest_gitbash
$ pwd
/d/wamp64/gittest_gitbash
- clone项目
git clone git@192.168.137.168:/usr/local/gittest.git
注:这个就很容易理解了, 将服务器上面的文件夹下的东西拉取到本地(就是这个目录下d:\wamp64\gittest_gitbash)
- 自动弹出提示
The authenticity of host '192.168.137.168 (192.168.137.168)' can't be established.
RSA key fingerprint is SHA256:Ve6WV/SCA059EqoUOzbFoZdfmMh3B259nigfmvdadqQ.
Are you sure you want to continue connecting (yes/no)? yes
成功!
- 发现
此时会在本地C:\Users\用户名\.ssh 下生成文件 known_hosts
- 创建公钥私钥
ssh-keygen -t rsa -C "邮箱"
注:此时C:\Users\用户名\.ssh 下会多出两个文件 id_rsa 和 id_rsa.pub

- 服务器Git打开rsa认证
[root@localhost gittest.git]# cd /etc/ssh/
[root@localhost ssh]# ls
moduli sshd_config ssh_host_ecdsa_key.pub ssh_host_ed25519_key.pub ssh_host_rsa_key.pub
ssh_config ssh_host_ecdsa_key ssh_host_ed25519_key ssh_host_rsa_key
[root@localhost ssh]# vim sshd_config
- 打开三个注释
RSAAuthentication yes
PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys

- 重启sshd
systemctl stop sshd.service
systemctl start sshd.service
- 在git用户目录新建.ssh目录
mkdir /home/git/.ssh
- 授权
chown -R git:git /home/git

- 将客户端公钥上传到服务器端git用户目录.ssh
cd C:\Users\用户
ssh git@192.168.137.168 'cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub
注:这里要切换到.ssh的上一级目录, 因为要将authorized_keys文件当前内容上传到服务器中
- 再看一下服务器上面的目录

- 客户端再次clone远程仓库
git clone git@192.168.137.168:/usr/local/gittest.git

结尾
- 禁止git用户ssh登录
vim /etc/passwd
将
git:x:1004:1005::/home/git:/bin/bash
改为
git:x:1004:1005::/home/git:/bin/git-shell
Git服务器搭建完毕!
后续
- 删除远程分支点
git remote remove origin

- 新建远程分支点
origin 为远程仓库别名 后面http 为远程仓库地址
git remote add origin git@192.168.137.168:/home/git/data/git/learngit.git

- 本地库提交到远程分支(上传)
git push <远程主机名> <本地分支名>:<远程分支名>
git push learngit master:origin

- 本地分支拉取远程分支(下载)
linux下部署git服务器的更多相关文章
- 【转】在Linux下搭建Git服务器
在 Linux 下搭建 Git 服务器 环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.windows. ...
- Linux下部署FTP服务器
Linux下部署FTP服务器 下载安装包 在这里介绍的是离线部署FTP,首先下载对应的rpm包,下载链接为: 下载vsftpd服务 下载FTP客户端 安装ftp服务器 关闭防火墙 service ip ...
- Linux下搭建Git服务器
1.安装Git 见 Jenkins持续集成环境部署 第四节 2.创建Git用户和用户组 groupadd git useradd git -g git 3.创建证书切换到git用户创建证书 su gi ...
- 在 Linux 下搭建 Git 服务器
环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.windows.1) ① 安装 Git Linux 做为 ...
- 在Linux下搭建Git服务器的方法是什么样?
第一步 安装git:可以通过命令的方式快速安装,不同的linux的安装方法可能不一样,我的是采用的yum方法.ubuntu可以用apt-get命令.sudo yum install git 第二步 添 ...
- 在 Linux 下搭建 Git 服务器(yum安装)
服务端(linux): 1. 安装git [root@localhost ~]# yum -y install git 2. 增加一个git账户 为了管理的方便,在linux下面增添一个 " ...
- 在Linux下搭建Git服务器步骤
环境: 服务器 CentOS6.6 + git(version 1.7.1) 客户端 Windows10 + git(version 2.8.4.windows.1) ① 安装 Git Linux ...
- Linux 下搭建Git 服务器详细步骤
参考: https://www.cnblogs.com/dee0912/p/5815267.html#_label0 https://blog.csdn.net/carfge/article/deta ...
- kali linux 下搭建git服务器
参考:http://www.cnblogs.com/dee0912/p/5815267.html https://www.liaoxuefeng.com/wiki/001373951630592960 ...
随机推荐
- vue--项目文件
build config:webpack的配置文件 node_modules: 依赖的npm包 src: 项目代码 static:依赖的第三方库 ps:static中有个文件.gitkeep 因为新建 ...
- maven的下载,安装配置以及build一个java web项目
一.下载 下载地址:http://maven.apache.org/download.cgi 二.安装 下载完成后,解压,进入到bin目录: 三.环境变量配置 复制bin目录下的文件的路径(如:xxx ...
- es6函数的扩展
扩展运算符 含义 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. 扩展运算符的应用 (1)合并数组 // ES5 [1, 2].co ...
- NHibernate初学者指南系列文章导航
NHibernate初学者指南系列文章导航 前面的话 经过三个多周的时间,终于将这个系列完成了,谢谢大家的关注和支持,有很多不足之处还望大家包涵. 本系列参考的书籍为NHibernate 3 Be ...
- oracle将unix 时间戳转换为date类型
select to_date('19700101','yyyyMMdd')+numtodsinterval(8*3600,'second')+numtodsinterval(60,'second') ...
- linux正则
正则表达式 分两类: 基本正则表达式:BRE 扩展正则表达式:ERE :grep -E, egrep 正则表达式引擎: 采用不同算法,检查处理正则表达式的软件模块 PCRE(Perl ...
- ASCII 码
http://baike.baidu.com/link?url=Y4crTsVq678Z8fr92DAGIrqVHoexVXsMc-WKBMVUKGDq4KbEOuhWbUQXuQEtnlom4yln ...
- sitecore系列教程之Sitecore个性化定制体验的内容策略
这是利用Sitecore个性化引擎实现数字化转型的三部分系列文章的第一部分. 想象一下这种情况:您是一家B2C公司,拥有源源不断的客户群,支持您的直接面向消费者的产品.您最近推出了一项新服务,旨在为不 ...
- linux基础操作
1.pwd 2.clear 3.who 4.cal 5.uname 6.wc 7.man在线帮助命令 8.--help.info.whatis 9.使用su命令以root身份进入linux 10.Sh ...
- 微信小程序制作家庭记账本之三
第三天,学习别人的代码,了解到wxml跟JAVAWEB中的JSP差不太多,可以形成整个页面的轮廓.wxss对每个文本框按钮进行大小颜色修饰.json的作用很是迷惑,也不清楚各种文件是怎样相互作用的.