現在我們將討論如何在你自己的伺服器上搭建 git 服務來執行這些協議。
note
這裡我們將要演示在 linux 伺服器上進行一次基本且簡化的安裝所需的命令與步驟,當然在 mac 或 windows 伺服器上同樣可以執行這些服務。 事實上,在你的計算機基礎架構中建立乙個生產環境伺服器,將不可避免的使用到不同的安全措施與作業系統工具。但是,希望你能從本節中獲得一些必要的知識。
$
git clone --bare my_project my_project.gitcloning into bare repository 'my_project.git'...
done.
整體上效果大致相當於
$
cp -rf my_project/.git my_project.git
雖然在配置檔案中有若干不同,但是對於你的目的來說,這兩種方式都是一樣的。 它只取出 git 倉庫自身,不要工作目錄,然後特別為它單獨建立乙個目錄。
既然你有了裸倉庫的副本,剩下要做的就是把裸倉庫放到伺服器上並設定你的協議。 假設乙個網域名稱為git.example.com
$
scp -r my_project.git [email protected]:/opt/git
$
git clone [email protected]:/opt/git/my_project.git
由此可見,根據現有的 git 倉庫建立乙個裸倉庫,然後把它放上你和協作者都有 ssh 訪問權的伺服器是多麼容易。 現在你們已經準備好在同一專案上展開合作了。$
ssh [email protected]$
cd
/opt/git/my_project.git$
git init --bare --shared
值得注意的是,這的確是架設乙個幾個人擁有連線權的 git 服務的全部——只要在伺服器上加入可以用 ssh 登入的帳號,然後把裸倉庫放在大家都有讀寫許可權的地方。 你已經準備好了一切,無需更多。
下面的幾節中,你會了解如何擴充套件到更複雜的設定。 這些內容包含如何避免為每乙個使用者建立乙個賬戶,給倉庫新增公共讀取許可權,架設網頁介面等等。 然而,請記住這一點,如果只是和幾個人在乙個私有專案上合作的話,僅僅
如果裝置較少或者你只想在小型開發團隊裡嘗試 git ,那麼一切都很簡單。 架設 git 服務最複雜的地方在於使用者管理。 如果需要倉庫對特定的使用者可讀,而給另一部分使用者讀寫許可權,那麼訪問和許可安排就會比較困難。
ssh 連線
如果需要團隊裡的每個人都對倉庫有寫許可權,又不能給每個人在伺服器上建立賬戶,那麼提供 ssh 連線就是唯一的選擇了。 我們假設用來共享倉庫的伺服器已經安裝了 ssh 服務,而且你通過它訪問伺服器。
另乙個辦法是讓 ssh 伺服器通過某個 ldap 服務,或者其他已經設定好的集中授權機制,來進行授權。 只要每個使用者可以獲得主機的 shell 訪問許可權,任何 ssh 授權機制你都可視為是有效的。
prev
伺服器上的 Git 在伺服器上搭建 Git
現在我們將討論如何在你自己的伺服器上搭建 git 服務來執行這些協議。note 這裡我們將要演示在 linux 伺服器上進行一次基本且簡化的安裝所需的命令與步驟,當然在 mac 或 windows 伺服器上同樣可以執行這些服務。事實上,在你的計算機基礎架構中建立乙個生產環境伺服器,將不可避免的使用到...
在伺服器上搭建git服務
參考自git 伺服器搭建 菜鳥教程 登上伺服器後,如下命令 yum y install curl devel expat devel gettext devel openssl devel zlib devel perl devel yum y install git groupadd git us...
在Linux上搭建git伺服器
這裡我使用的是centos伺服器 1 安裝gityum y install git 2 新新增使用者gitadduser git 3 進入 etc passwd將git x 1001 1001 home git bin bash改為git x 1001 1001 home git usr bin g...