想要達成的目的:從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)加載秘鑰