macOS 環(huán)境下配置Git Server

一、基本環(huán)境

配置Git Server之前,必須安裝Git 以及 Python環(huán)境。macOS本身自帶有二者環(huán)境。如下命令判斷:

git --version
python --version
Git Python 環(huán)境

二、下載并安裝gitosis

使用如下命令來下載gitosis:

git clone https://github.com/tv42/gitosis.git
下載gitosis

進(jìn)入gitosis目錄,使用如下命令執(zhí)行python腳本來安裝gitosis:

sudo python setup.py install
安裝gitosis

三、在客戶端創(chuàng)建公鑰

ssh-keygen -t rsa
步驟三:生成客戶端公鑰密鑰.png

四、使用ssh公鑰初始化gitosis

1、將步驟三中生成的公鑰拷貝到Git Server上,然后執(zhí)行如下命令,將公鑰拷貝到 /tmp目錄下。
macOSServer:gitosis GitServer$ cp id_rsa.pub /tmp/id_rsa.pub
2、進(jìn)入gitosis目錄,進(jìn)行如下命令初始化gitosis,初始化完成后,會在GitServer(Mac賬戶名)的home下創(chuàng)建repositories目錄。
macOSServer:gitosis GitServer$ sudo -H -u git gitosis-init < /tmp/id_rsa.pub

在這里,會將該客戶端當(dāng)做認(rèn)證受信任的賬戶,因此在GitServer的主目錄.ssh下會有記錄,文件authorized_keys的內(nèi)容與id_rsa.pub基本一致。
注意: 使用如下命令,打開authorized_keys文件,刪除“command =”gitosis-serve yourname“,no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty”內(nèi)容,保存即可。

macOSServer:~ GitServer$ open authorized_keys
3、改變倉庫gitosis-admin.git權(quán)限,方便后期管理賬戶權(quán)限。使用post-update賦予可寫權(quán)限,以便client端可以提交更改。
macOSServer:gitosis GitServer$ sudo chmod 755 /Users/GitServer/repositories/gitosis-admin.git/hooks/post-update
macOSServer:.ssh GitServer$ cd ~
macOSServer:~ GitServer$ cd repositories/
macOSServer:repositories GitServer$ ls
gitosis-admin.git
macOSServer:repositories GitServer$

在上面的命令中可以看到,gitosis也是作為倉庫的形式給出,
然后對gitosis進(jìn)行配置管理等都可以在客戶端進(jìn)行,而無需使用服務(wù)器的GitServer賬戶進(jìn)行。

4、修改GitServer賬戶的PATH路徑,在終端輸入如下命令:
macOSServer:gitosis GitServer$ touch ~/.bashrc
macOSServer:gitosis GitServer$ echo PATH=/usr/local/bin:/usr/local/git/bin:\$PATH > .bashrc
macOSServer:gitosis GitServer$ echo export PATH >> .bashrc
macOSServer:gitosis GitServer$ cat .bashrc
PATH=/usr/local/bin:/usr/local/git/bin:$PATH
export PATH

至此,服務(wù)器的配置完成。

五、客戶端配置

1、在終端輸入如下命令修改配置信息:
配置 local 的git信息

MacBook-Pro:~ dzq$ git config --global user.namedongzhuoqiong
MacBook-Pro:~ dzq$ git config --global user.email ***@gmail.com

配置某個(gè)倉庫信息

MacBook-Pro:AnySayGit dzq$ git config user.name dongzhuoqiong
MacBook-Pro:AnySayGit dzq$ git config user.email dongdzq@gmail.com

注意:以上兩種方式二選一。
2、測試服務(wù)器是否連接正確

MacBook-Pro:~ dzq$ ssh GitServer@172.17.12.156

服務(wù)器鏈接是否正常

3、在本地克隆服務(wù)器倉庫,下面gitosis-admin.git為例:

Last login: Wed May 30 09:44:41 on ttys003
MacBook-Pro:~ dzq$ cd /Users/dzq/Desktop/
MacBook-Pro:Desktop dzq$ git clone GitServer@172.17.12.156:repositories/gitosis-admin.git
Cloning into 'gitosis-admin'...
Enter passphrase for key '/Users/dzq/.ssh/id_rsa': 
remote: Counting objects: 5, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 5 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (5/5), done.
MacBook-Pro:Desktop dzq$ 

4、在客戶端管理gitosis-admin倉庫,給其他賬號權(quán)限等
??在 gitosis-admingitosis.conf 文件是用來設(shè)置用戶、倉庫和權(quán)限的控制文件。keydir 目錄則是保存所有具有訪問權(quán)限賬號公鑰的地方一個(gè)賬號對應(yīng)一個(gè).pub文件。

keydir目錄

gitosis.conf

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文介紹如何在 mac 機(jī)器上創(chuàng)建 Git 服務(wù)器,總體思路是:使用gitosis來簡化創(chuàng)建過程,在用作服務(wù)器的機(jī)...
    JackWongHD閱讀 12,328評論 2 14
  • 摘要: git 作為目前世界上最先進(jìn)的分布式版本控制系統(tǒng),掌握如何使用git來做版本控制是現(xiàn)如今每個(gè)程序員必須掌握...
    jamalping閱讀 1,711評論 3 4
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,502評論 19 139
  • 青黛山忘卻清晨 剩蒼莽孤魂 聽腳下風(fēng)起夜深 誰拿酒對斟 冷雨無痕 悵望苦等 苦等歸人卻朝雨浥輕塵 孤雁兒賦入云層 ...
    葉子說閱讀 3,122評論 0 4
  • 人與人真的都不一樣,每個(gè)人有缺點(diǎn)也有優(yōu)點(diǎn)。認(rèn)識的一菇?jīng)鰹榧依飺?dān)當(dāng),為人也大方,不過格局太小,只知道買買買,逛逛逛,...
    韓韓的小天地閱讀 241評論 0 0

友情鏈接更多精彩內(nèi)容