計算機架構與系統實驗室

Computer Architecture and System Laboratory

使用者工具

網站工具


git_nas

差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

Both sides previous revision 前次修改
git_nas [2015/02/05 12:23]
elvis 移除
— (目前版本)
行 1: 行 1:
-===== 在Synology NAS上安裝GIT ===== 
-在套件中心找到GIT並安裝,不再像以前一樣需要登入SSH透過ipkg來安裝 
- 
-===== 在NAS上建立git使用者 ===== 
----- 
-這一步驟是為了配合之後要安裝的gitolite管理系統使用。以git這個帳號作為gitolite預設的管理及ssl驗證帳號。 
- 
-用admin登入NAS的網頁介面,在NAS介面中新增一名叫git的使用者,禁止所有權限的存取。然後用ssh以root登入NAS,更改/etc/passwd這個檔案 
-   
-  vim /etc/passwd 
-   
-找到git使用者的那一行,確定他的登入shell是ash,如下 
- 
-  git:x:1000:100:git hosting user:/var/services/homes/git:/bin/ash 
- 
-\\ 
-===== 安裝gitolite ===== 
----- 
-gitolite是一個利用ssh_key管理誰有權限存取git server中個別repo的程式。將gitolite裝在git這個使用者裡面之後,該使用者就會喪失傳統ssh的登入能力。取而代之的是,所有git clone都會使用git這個使用者的ssh進行登入並clone,並且會比對連線近來電腦的ssh key跟gitolite中public key是否match。 
- 
-在安裝完之後,請修改git家目錄下.gitolite.rc這個檔案,找到 
-  UMASK   =>  0700 
-改成 
-  UMASK   =>  0022 
-其目的為,以後藉由git push上來的檔案權限會由0700變成0755,這樣才能讓git以外的使用者看到repository的內容,主要是為了可以讓gitweb或其他的third party的程式可以讀出來並呈現在網頁上面。 
- 
-\\ 
-===== 新增新的gitolite pubkey (相當於使用者) ===== 
----- 
-首先你必須有一個已經可以使用gitolite的使用者,如上面安裝gitolite時新增的第一個pubkey。在那之後,以該pubkey所在之電腦進行gitolite-admin這個repo的clone 
- 
-  git clone git@caslab.ee.ncku.edu.tw:gitolite-admin 
-   
-然後把新的pubkey想辦法放在該資料夾下面一個稱為keypair的資料夾中,確保檔案權限跟檔案擁有者改完。接著進入conf這個資料夾修改gitolite.conf這個檔案,以剛剛新的pubkey中的檔案名稱作為使用者代號,加入到該使用者可以存取的repo後面,存檔後將剛剛新增或改過的所有檔案以git add、git commit、git push方式上傳即可完成。 
  
git_nas.1423139011.txt.gz · 上一次變更: 2015/02/05 12:23 由 elvis