CentOS7虚拟机配置git仓库(配置虚拟机,网络,git仓库,windows端git访问)
想要达成的目的:从windows使用git访问CentOS7服务器上搭建的git仓库
用到的软件:
(1)VMware-workstation-full-15.5.0-14665864.exe
(2)CentOS7镜像:CentOS-7-x86_64-DVD-2009.iso
(3)Git-2.35.1.2-64-bit.exe,windows下的git,可从这个网址下载:https://git-scm.com/download/win
(4)TortoiseGit-2.13.0.1-64bit.msi和TortoiseGit-LanguagePack-2.13.0.0-64bit-zh_CN.msi, windows端的git界面操作工具
(5)git-2.35.1.tar.gz, 用于更新CentOS7里的git版本到最新版本,可到“https://mirrors.edge.kernel.org/pub/software/scm/git/”下载
一、安装VMware
基本上就“下一步”就可以了
二、安装CentOS7
1、打开VMware的“文件”--“新建虚拟机”,选择”自定义”。当然你也可以选择“典型”(这样不需要自己配置一些东西,采用其默认的就行)
2、“安装程序光盘映像文件(iso)”选择自己电脑目录下的“CentOS-7-x86_64-DVD-2009.iso”
3、选择CentOS7安装好后放置的路径
4、根据自己主机的处理器配置进行选择
5、根据自己主机的配置选择内存大小
6、网络选择“桥接”
7、磁盘大小根据自己需要选择,默认是20G
8、其他没有特殊说明的,采用默认的配置即可。
9、配置之后,开始安装,推荐“Test this media & install CentOS7”
10、 等待一会安装,选择“中文”
11、之前上边蹦出的是语言选择,上边点击“继续”之后进入此界面,将画红框的配置一下
12、我选择的是“开发及生成工作站”,并把右边的附加选项都选上,就是不管用不用的着,先安上
13、“安装目标位置”点击“本地标准磁盘”就行
14、上边配置完后“开始安装”才能点击
15、安装过程中要等一会,在这过程中可以配置root密码和创建用户
16、安装完成重启
17、点进去接收许可
18、根据向导进行配置完即可
三、配置CentOS7网络
1、在安装CentOS7的时候已经将网络选择为桥接,如果没选可从下图进行设置
2、VMware菜单栏->编辑->虚拟网络编辑器
3、在虚拟机里的终端切换到root权限,修改文件“/etc/sysconfig/network-scripts/ifcfg-ens33”,将ip设置为静态ip,不然虚拟机每次启动可能ip会变
原始文件
修改后文件:
4、虚拟机里重启网络服务“service network restart ”
5、然后ping一下自己宿主机的ip和其他同事ip,是否能ping通
6、通过自己宿主机和同事电脑ping一下虚拟机ip,是否都能ping通。
四、在CentOS7虚拟机里安装git
1、可到https://mirrors.edge.kernel.org/pub/software/scm/git/网站下载最新版本,我下载的是git-2.35.1.tar.gz
2、查看原系统是否安装git,rpm -qa git
3、切换root用户删除原有的git,yum remove git
删除完成
4、通过虚拟机创建共享目录,把下载的git的最新压缩包放到共享目录下
5、创建“/usr/local/git”目录,并把共享目录下的git包拷贝到此目录下
6、解压git压缩包, “tar -zxvf git-2.35.1.tar.gz ”
7、进入git解压后的目录开始进行编译操作,并指定git安装路径, “make prefix=/usr/local/git all”
8、当git源码编译操作完成后,执行安装操作,“make prefix=/usr/local/git install”
9、安装完git服务后,配置环境变量“vim /etc/profile”添加如下代码
GIT_HOME=/usr/local/git
PATH=$PATH:$GIT_HOME/bin
10、配置完成后,使用命令重载配置文件, “source /etc/profile”
11、验证git版本号“git --version“
12、创建链接
ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
五、CentOS7建立git仓库
1、创建CentOS7的一个用户组,用户名,用户密码,用户组取名为git,用户名取名为git,密码也是git
2、在Git服务器上首先需要将/etc/ssh/sshd_config中将RSA认证打开,
我们将在git用户目录下创建.ssh目录和authorized_keys 文件,公钥存放在 .ssh/authorized_keys 文件中
3、在/home/git/目录下创建.ssh目录,并在.ssh目录下创建authorized_keys 文件,并修改他们的权限
4、在windows下使用git生成公钥,并将公钥放到CentOS7的/home/git/.ssh/authorized_keys文件中,每个公钥单独占一行
(1)在windows下安装Git-2.35.1.2-64-bit.exe,采用默认的安装即可
(2)在windows任意目录下点击右键,选中“Git Bash Here”,按照格式ssh-keygen -t rsa -C "youremail@qq.com"输入命令,邮箱你可以任意起名字,例如我取名为"lifengjuan@qq.com"
在下列需要输入内容的地方直接按回车即可
(3)找到生成的公钥,我的是在“C:\Users\Administrator\.ssh”目录下,“id_rsa.pub”文件里存放的是公钥,“id_rsa”是私钥,使用notepad打开id_rsa.pub文件复制里边的内容,然后粘贴到CentOS7的/home/git/.ssh/authorized_keys文件中
5、在CentOS7上创建仓库,我们在/home/git/目录下创建仓库“git init --bare test.git”
如果是用root创建的,记得给仓库赋予git用户权限,“chown -R git:git test.git”
六、 windows下通过git bash访问git仓库
1、在windows到想要存放项目的目录下,右键选中“Git Bash Here”,输入
git config --global user.name "lifengjuan" 这里用户名随便起
git config --global user.email "lifengjuan@qq.com" 这里邮箱是之前创建公钥时使用的邮箱
git clone git@192.168.8.3:/home/git/test.git
“git@192.168.8.3's password:”需要输入的密码是CentOS7的git用户的密码git
windows下clone完仓库后,就可以使用git操作仓库了,(在我的宿主机windows下操作git,每次都要输入密码,但是在其他同事的机器上并不需要!!!!不知道什么原因??????????????)
七、windows下TortoiseGit访问git仓库
在windows下想要放置项目的目录下,右键,选择“Git 克隆”,之后就可以按照TortoiseGit的方式进行操作仓库,但是这里每次操作都要输入CentOS7的用户git的密码
解决TortoiseGit操作每次都要输入密码的问题:(这个解决方案并没有解决在我的宿主机windows下操作TortoiseGit每次都要输入密码的问题,但是在其他同事的机器是可以解决的!!!!不知道什么原因??????????????)
(1)在TortoiseGit工具里找到PuTTYgen
(2)点击“load”
(3)选中之前生成的私钥
(4)点击“Save private key”
(5)保存为“id_rsa.ppk”
(6)打开TortoiseGit的设置
(7)加载秘钥
CentOS7虚拟机配置git仓库(配置虚拟机,网络,git仓库,windows端git访问)的更多相关文章
- 在windows端和linux端安装Git
一.Git的安装 1. 在windows端 到地址:https://git-scm.com/downloads 选择对应版本下载后,进行傻瓜式安装即可 2. 在linux端 查看是否安装了git,出 ...
- Git初步配置 ubuntu服务器 windows客户端 虚拟机
最近自己配置了一下Git,虽然网上相关的内容满天飞(ps:大多都差不多,很多都是直接转载,说的也比较乱),但是我还是碰到了很多问题,这里我就把我配置的步骤分享一下,遇到的问题也说一下,新手之间相互学习 ...
- centos7命令行模式安装&&配置_br0+kvm+虚拟机+添加硬盘+快照及恢复
KVM创建虚拟机步骤 Submitted by zhaoley on October 18, 2016 - 10:43am 测试环境: 1: 43.243.130.89, CentOS Linux r ...
- VMware Linux虚拟机与WIN7操作系统共享无线网络上网配置
Linux虚拟机与WIN7操作系统共享无线网络上网配置 by:授客 QQ:1033553122 测试环境: CentOS-7-x86_64-DVD-1503-01.iso Vmware 9 实践操作: ...
- SecureCRT连接虚拟机(ubuntu)配置
使用SecureCRT连接虚拟机(ubuntu)配置记录 这种配置方法,可以非常方便的操作虚拟机里的Linux系统,且让VMware在后台运行,因为有时候我直接在虚拟机里操作会稍微卡顿,或者切换速 ...
- Linux:Vmware安装linux虚拟机,桥接方式配置静态IP后重启网卡,提示:Error,some other host already uses address 10.252.252.21...
问题: Vmware安装linux虚拟机,桥接方式配置静态IP后重启网卡,提示:Error,some other host already uses address 10.252.252.21... ...
- 配置SecureCRT连接本地虚拟机中的Linux系统
转自:http://www.pythoner.com/196.html 由于平时公司开发时都是使用SecureCRT连接的Linux服务器,所以也想使用SecureCRT在自己电脑上连接本地虚拟机中的 ...
- KVM 虚拟机命令行安装配置
KVM作为linux内核的一部分,有着无法比拟的优势,相信KVM的大范围企业应用指日可待. 一.KVM宿主服务器环境配置 1. 查看CPU是否支持VT技术 cat /proc/cpuinfo | eg ...
- Android Studio 使用笔记:Git 的配置和第一次提交到仓库
Git客户端网址:http://git-scm.com/download/ 根据自己的使用平台下载对应的客户端.这里以Mac系统为例,当客户端软件安装配置完毕后,打开AS的配置面板,找到Git的选项 ...
随机推荐
- React性能优化,六个小技巧教你减少组件无效渲染
壹 ❀ 引 在过去的一段时间,我一直围绕项目中体验不好或者无效渲染较为严重的组件做性能优化,多少积累了一些经验所以想着整理成一片文章,下图就是优化后的一个组件,可以对比优化前一次切换与优化后多次切换的 ...
- C++ 虚拟桌面
C++ 打开一个虚拟桌面的代码 看不明白的地方 请查看demo: http://download.csdn.net/detail/allh45601/7224205 QQ群:103197177 C++ ...
- 大家都能看得懂的源码 - ahooks useSet 和 useMap
本文是深入浅出 ahooks 源码系列文章的第十篇,该系列已整理成文档-地址.觉得还不错,给个 star 支持一下哈,Thanks. 今天我们来聊聊 ahooks 中对 Map 和 Set 类型进行状 ...
- 前端知识之CSS(1)-css语法、css选择器(属性、伪类、伪元素、分组与嵌套)、css组合器
目录 前端基础之css 1.关于css的介绍 2.css语法 3.三种编写CSS的方式 3.1.style内部直接编写css代码 3.2.link标签引入外部css文件 3.3.标签内直接书写 4.c ...
- 不想当Window的Dialog不是一个好Modal,弹窗翻身记
弹窗是我们熟视无睹的一种交互方式,经常用到,但从没好好想过这种交互行为背后的意义... 弹窗是Windows的灵魂 Windows的灵魂是什么?当然是Window,当方便快捷的多窗口进入人们视野的时候 ...
- 第七十一篇:Vue组件的私有和全局注册
好家伙, 1.组件的父子关系 我们封装三个组件,分别为left组件,right组件和App组件 在封装时: 在封装时,彼此的关系是独立的,并不存在父子关系 在使用时: 在使用时,根据彼此的嵌套关系,形 ...
- 第十三篇:axios网络通信
好了这事一个非常艰巨的任务 解释以下的全部代码 <template> <div class="hello"> <p style="colo ...
- Java开发学习(三十三)----Maven私服(一)私服简介安装与私服分类
一.私服简介 团队开发现状分析 (1)张三负责ssm_crm的开发,自己写了一个ssm_pojo模块,要想使用直接将ssm_pojo安装到本地仓库即可 (2)李四负责ssm_order的开发,需要用到 ...
- .NET 6 EFCore WebApi 使用 JMeter 进行吞吐量测试
.NET 6 EFCore WebApi 使用 JMeter 进行吞吐量测试 开发环境 VS2022 .NET 6 测试环境 测试工具 接口压力测试工具:JMeter 数据库 MySQL 5.7 数据 ...
- ProxySQL 密码管理
ProxySQL是一个协议感知的proxy.由于ProxySQL基于流量进行路由,当一个客户端连接ProxySQL时,它还无法识别它的目标主机组,因此ProxySQL需要对该客户端进行认证.基于此,需 ...