想要达成的目的:从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访问)的更多相关文章

  1. 在windows端和linux端安装Git

    一.Git的安装 1. 在windows端 到地址:https://git-scm.com/downloads 选择对应版本下载后,进行傻瓜式安装即可 2.  在linux端 查看是否安装了git,出 ...

  2. Git初步配置 ubuntu服务器 windows客户端 虚拟机

    最近自己配置了一下Git,虽然网上相关的内容满天飞(ps:大多都差不多,很多都是直接转载,说的也比较乱),但是我还是碰到了很多问题,这里我就把我配置的步骤分享一下,遇到的问题也说一下,新手之间相互学习 ...

  3. centos7命令行模式安装&&配置_br0+kvm+虚拟机+添加硬盘+快照及恢复

    KVM创建虚拟机步骤 Submitted by zhaoley on October 18, 2016 - 10:43am 测试环境: 1: 43.243.130.89, CentOS Linux r ...

  4. VMware Linux虚拟机与WIN7操作系统共享无线网络上网配置

    Linux虚拟机与WIN7操作系统共享无线网络上网配置 by:授客 QQ:1033553122 测试环境: CentOS-7-x86_64-DVD-1503-01.iso Vmware 9 实践操作: ...

  5. SecureCRT连接虚拟机(ubuntu)配置

    使用SecureCRT连接虚拟机(ubuntu)配置记录   这种配置方法,可以非常方便的操作虚拟机里的Linux系统,且让VMware在后台运行,因为有时候我直接在虚拟机里操作会稍微卡顿,或者切换速 ...

  6. 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... ...

  7. 配置SecureCRT连接本地虚拟机中的Linux系统

    转自:http://www.pythoner.com/196.html 由于平时公司开发时都是使用SecureCRT连接的Linux服务器,所以也想使用SecureCRT在自己电脑上连接本地虚拟机中的 ...

  8. KVM 虚拟机命令行安装配置

    KVM作为linux内核的一部分,有着无法比拟的优势,相信KVM的大范围企业应用指日可待. 一.KVM宿主服务器环境配置 1. 查看CPU是否支持VT技术 cat /proc/cpuinfo | eg ...

  9. Android Studio 使用笔记:Git 的配置和第一次提交到仓库

    Git客户端网址:http://git-scm.com/download/ 根据自己的使用平台下载对应的客户端.这里以Mac系统为例,当客户端软件安装配置完毕后,打开AS的配置面板,找到Git的选项 ...

随机推荐

  1. P2501 [HAOI2006]数字序列 (LIS,DP)(未完成)

    第二问好迷... #include "Head.cpp" #include <vector> const int N = 35007; vector<int> ...

  2. Spring源码 01 概述

    参考源 https://www.bilibili.com/video/BV1tR4y1F75R?spm_id_from=333.337.search-card.all.click https://ww ...

  3. HandInDevil 的头发 (分 块)

    题面 H a n d I n D e v i l \rm HandInDevil HandInDevil 的头发很油,因此随时有跳蚤跳上 H a n d I n D e v i l \rm HandI ...

  4. java中的字符流知识点总结

    java中字符流 字符流:对文本的读取,速度比字节流快 常见的字符流:Reader 和 Writer Reader是InputStreamReader的父类,InputStreamReader是Fil ...

  5. 【HTML】学习路径2-设置文档类型、网页编码、文件注释

    第一章:设置文档类型 我们通常在html文件最前面写一行: <!DOCTYPE html> 这玩意有啥用? https://developer.mozilla.org/zh-CN/docs ...

  6. 【java】学习路径42-六种字符流使用实例

    第一种 OutputStreamWriter OutputStreamReader 第二种 FileWriter FileReader 第三种 BufferedWriter BufferedReade ...

  7. token总结

    token 总结 1. token 和SessionID 的区别 Token机制相对于Cookie机制又有什么好处呢? 支持跨域访问: Cookie是不允许垮域访问的,这一点对Token机制是不存在的 ...

  8. Vite+React搭建开发构建环境实践

    前言 使用 Vite 已经有两年了,期间使用它开发过单页面应用,也开发过浏览器扩展插件,对比日常工作中用到的 webpack 构建速度大幅提升,开发体验也好很多. 虽然相比于 webpack 来说简单 ...

  9. Python数据科学手册-机器学习: 流形学习

    PCA对非线性的数据集处理效果不太好. 另一种方法 流形学习 manifold learning 是一种无监督评估器,试图将一个低维度流形嵌入到一个高纬度 空间来描述数据集 . 类似 一张纸 (二维) ...

  10. Kratos漫游指南 1 - 概览

    您好,地球人,欢迎来到Kratos漫游指南. 对于刚开始研究Kratos框架的开发者来说,目前的文档有些零散,这与我们的模块化设计有一些关系,不过Don't panic,从这篇文章开始,我将试图打破这 ...