git的CentOS服务端安装和windows客户端的使用
git的CentOS服务端安装和windows客户端的使用
此教程以 ***vps CentOS 6 x64 的系统为环境,搭建 git 服务端。windows 7 系统为客户端。
git客户端
在Windows上使用Git,可以从Git官网直接下载安装程序,然后按默认选项下一步下一步安装即可.
安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!
安装完成后,设置用户名称和用户游戏,在Git Bash命令行输入:
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
接下来如果连接远程仓储的就需要每次输入密码。这里我们使用无密码的ssh方式。
创建SSH Key
windows下SSH Key保存的位置一般为 C:\Users\Administrator\.ssh
这个位置。如果没有.ssh目录和id_rsa
和id_rsa.pub
这两个文件,就需要创建SSH Key。
$ ssh-keygen -t rsa -C "youremail@example.com"
git的一些其他操作这里就说了。
git的CentOS服务端安装
我的使用工具是xhell来链接服务器操作
安装依赖库和编译工具
为了后续安装能正常进行,我们先来安装一些相关依赖库和编译工具
由于我的服务器是新购的所有我要安装一些常用工具
安装文本编辑器
yum install vim
自动下载工具
yum install wget
安装git依赖库和编译工具
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
安装编译工具
yum install gcc perl-ExtUtils-MakeMaker
下载 git
选一个目录,用来放下载下来的安装包,这里将安装包放在
/usr/local/src
目录里
cd /usr/local/src
到官网找一个新版稳定的源码包下载到
/usr/local/src
文件夹里
wget https://www.kernel.org/pub/software/scm/git/git-2.10.0.tar.gz
解压和编译
解压下载的源码包
tar -zvxf git-2.10.0.tar.gz
解压后进入 git-2.10.0 文件夹
cd git-2.10.0
执行编译
make all prefix=/usr/local/git
这一步执行的时间较长
- 编译完成后, 安装到
/usr/local/git
目录下
make install prefix=/usr/local/git
配置环境变量
将 git 目录加入 PATH
将原来的 PATH 指向目录修改为现在的目录
echo 'export PATH=$PATH:/usr/local/git/bin' >> /etc/bashrc
生效环境变量
source /etc/bashrc
此时我们能查看 git 版本号,说明我们已经安装成功了。
git --version
创建 git 账号密码
为我们刚刚搭建好的 git 创建一个账号
useradd -m git
然后为这个账号设置密码
passwd git
控制台输入创建密码后,输入您自定义的密码,并二次确认。
设置authorized_keys
- 创建.ssh目录
cd /home/git
mkdir .ssh
- 创建authorized_keys文件
cd .ssh
touch authorized_keys
- 利用vim复制客户端公钥到authorized_keys里面
vim authorized_keys
然后切换到windows(客户端)系统中把C:\Users\Administrator\.ssh\
利用文本编辑器打开id_rsa.pub
文件。 把里面的内容复制。
然后粘帖到authorized_keys
文件中。如何利用vim编辑器这里自己百度下
设置sshd_config配置
- 打开并编辑sshd_config
vim /etc/ssh/sshd_config
找到下面的3个配置,把前面的#
号去掉,并且设置AuthorizedKeysFile
文件的路径为/home/git/.ssh/authorized_keys
保存退出即可
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile /home/git/.ssh/authorized_keys
创建 git 仓库并初始化
- 创建git仓库
cd /home/git
mkdir project.git
- 初始化git仓库
git init --bare project.git
配置用户权限
- 给 git 仓库目录设置用户和用户组并设置权限
chown -R git:git /home/git
chmod 700 /home/git
- 给 ssh 目录和authorized_keys文件设置权限
cd /home/git/.ssh
chmod 600 authorized_keys
cd ../
chmod 700 -R .ssh
- 最后安全目的, 限制 git 账号的 ssh 连接只能是登录 git-shell
vim /etc/passwd
替换最后一行为git:x:1001:1001:,,,:/home/git:/usr/local/git/bin/git-shell
如果按照刚才的步骤执行, 这个位置应该是 /usr/local/git/bin/git-shell, 否则请通过 which git-shell 命令查看位置
克隆你的仓库
切换到windows客户端,进入文件夹中,右击git Bash在命令行中输入你需要的clone地址
git clone git@<您的 git服务器IP 地址>:/home/git/project.git
或者
git clone ssh://git@<您的 git服务器IP 地址>:/home/git/project.git
转载于:https://www.cnblogs.com/SourceKing/p/8012116.html
git的CentOS服务端安装和windows客户端的使用相关推荐
- memcached win64位服务端安装和java客户端实例
项目开发中需要用到memcached缓存记录下来相关操作方便日后复习,如果有错误或遗漏请留言. memcached服务端安装 下载安装包 下载地址 32位系统 1.4.4版本:http://stati ...
- windows 下frp服务启动_内网穿透frp linux服务端搭建和windows客户端使用
一.Linux 服务端搭建 1.下载安装 wget --no-check-certificate https://raw.githubusercontent.com/clangcn/onekey-in ...
- st550服务器安装2008系统,windows2008 git服务端安装
windows2008 git服务端安装 [2021-02-12 14:07:49] 简介: 系统运维 SQL 2008新实例基础安装1.默认实例安装(略过,可自行百度.google):2.准备:w ...
- zabbix php 5.6 安装配置,CentOS 5.6下Zabbix 1.8.5 服务端安装部署
CentOS 5.6下Zabbix 1.8.5 服务端安装部署 CentOS 5.6 x86_64 + Zabbix 1.8.5 IP:192.168.88.130 一.安装LAMP环境依赖包: # ...
- 开源入侵检测系统OSSEC搭建之一:服务端安装
OSSEC是一款开源的多平台的入侵检测系统,可以运行于Windows, Linux, OpenBSD/FreeBSD, 以及 MacOS等操作系统中.主要功能有日志分析.完整性检查.rootkit检测 ...
- mysql5.7只安装服务端_Windows Mysql5.7.11 服务端安装详解
MySQL服务端安装过程主要是选择安装类型(自定义.典型和完整版),一般我都会选择自定义主要是为了安装到指定目录上,此过程省略,下面着重记录配置过程. 1.配置my.ini文件 在解压的目录下面复制m ...
- 基于Flask+Nginx+uWSGI实现CentOS服务端模型部署及预加载
基于Flask+Nginx+uWSGI实现CentOS服务端模型部署及预加载http://www.manongjc.com/article/37802.html
- NFS介绍,NFS服务端安装配置,NFS配置选项
2019独角兽企业重金招聘Python工程师标准>>> NFS介绍: NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网 ...
- java自动化测试成长日记-之CVS客户端和服务端安装和部署1:CVS服务端的配置和基本使用...
CVS服务端的配置和基本使用 在做java自动化测试集成环境搭建的时候,无论怎样,你都会选择一个源代码管理工具,如:SVN,CVS,VSS等:但如果你使用Eclipse工具,建议你使用CVS源代码管理 ...
最新文章
- 多维数据查询效率分析(1)
- fft ocean注解
- 从html表单内提取信息,如何从JavaScript中获取FormData中的数据?
- textureview 旋转90度后平铺_C++初级编程NOIP题:11H1537: 图像旋转
- 华为路由器上有没有mac表_MAC地址表、ARP缓存表、路由表及交换机、路由器基本原理...
- 隐马尔科夫模型(HMM)笔记(公式+代码)
- recycleview 自动循环滚动_划重点 | 不能不知的滚动轴承知识—轴承分类(续)
- @Import注解使用及源码分析
- 攀达计算机usb控制器,[如何用注册表打开被屏蔽的USB插口.docx
- java中读取logback日志文件_java 中使用logback日志,并实现日志按天分类压缩保存。...
- 网络编程之 listen()函数的使用与三次握手的理解
- cgic 测试demo
- 距离度量以及python实现(一)
- 达奇机器人怎么看电量_圣诞怎么过?看看电影吃点儿特别的
- mysql导入mdb_mysql导入数据库.mdb
- curl安装失败/区块链配置
- 任正非《以客户为中心》
- c语言碰撞算法,c – 任意大小凸多边形之间碰撞检测的算法
- matlab专区--------------matlab里面如何保留小数特定位数
- WebRTC禁用NACK
热门文章
- SQL SERVER 2014 安装图解(含 SQL SERVER 2014 安装程序共享)
- 获取指定路径下所有PDF文件的总页数
- mysql执行脚本的方法
- Java中int为什么占四个字节?
- java selenium click_按钮单击selenium java
- 阿里P8前端工程师:如何成为一名优秀的前端工程师!
- 只会 Vue 的前端工程师是没有前途的
- 详解+G - 数据结构实验之栈与队列七:出栈序列判定
- linux安全基线检查,CentOS Linux 7安全基线检查
- mysql i o error_警告:mysqli_ERROR()需要精确的一个参数,0给定的错误