阿里雲Linux-CentOS系統下-搭建Git伺服器詳解_Linux

來源:互聯網
上載者:User

 阿里雲Linux-CentOS系統下-搭建Git伺服器

步驟總結:

1. 安裝git

首先確認伺服器是否安裝Git

在Xshell中輸入命令:$ rpm -qa git

結果如下表示已經安裝:

如果未安裝就安裝git

在Xshell中輸入:$ yum install git

2. 建立一個git使用者,用來運行git服務:

在Xshell中輸入:$ sudo adduser git

此時在阿里雲伺服器的根目錄:/home檔案夾下新增一個檔案夾git

按這個層級建立檔案用於存放用戶端使用者的公開金鑰:/home/git/.ssh/authorized_keys

在本地用戶端的git bash中通過命令:

$ ssh-keygen -t rsa -C"youremail@example.com"

$ ssh-keygen

命令產生公開金鑰,預設在c盤:使用者/.ssh中id_rsa.pub檔案是公開金鑰,用記事本開啟複製粘貼到服器的/home/git/.ssh/authorized_keys檔案中即可。

3. 伺服器中建立git倉庫

自己在伺服器根目錄建立一個專門用於存放倉庫的git檔案夾

通過如下代碼建立並初始化倉庫,此時是以個空倉庫:

$ sudo chown -R git:git sample.git

下一步代碼必須執行一次,可能是擷取推送許可權並防止使用者修改工作區,如果不執行的話無法從本地推送到git伺服器:

$ sudo chown -R git:git sample.git

4. 禁止git使用者登入shell

出於安全考慮,建立的git使用者不允許登入shell,這可以通過編輯/etc/passwd檔案完成。找到類似下面的一行:

git:x:1001:1001:,,,:/home/git:/bin/bash

改為:

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

這樣,git使用者可以正常通過ssh使用git,但無法登入shell,因為我們為git使用者指定的git-shell每次一登入就自動結束。

5. 複製git伺服器上建立的sample.git倉庫

在本地git bash中通過命令定位到某個用於存放複製檔案的檔案夾下,輸入如下複製命令:

$ git clone git@xxx.xxx.xxx.xxx:/xxx/git/sample.git

複製伺服器倉庫命令的格式為:

git clone git@伺服器公網IP:倉庫存放於伺服器的路徑

6. 將本地git倉庫與git伺服器倉庫關聯

在本地建立並初始化一個sample倉庫,需要和git伺服器上的倉庫名稱相同。

git伺服器上建立的倉庫為sample.git,本地的不用帶.git。

伺服器和本地的倉庫都有了,通過以下步驟將兩者關聯起來:
在本地git bash中定位到本地倉庫,輸入並執行下方代碼:

$ git remote add sample git@xxx.xxx.xxx.xxx:/xxx/git/sample.git

在git bash輸入:$ git remote -v 可以查看本地git倉庫相關聯的遠程git倉庫。

在git bash輸入:$ git push -u sample master 推送本地倉庫主分支到遠程git倉庫,首次推送需要加-u。

以後推送直接用在git bash輸入:$ git push sample master 即可。

感謝閱讀,希望能協助到大家,謝謝大家對本站的支援!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.