一. 管理員配置 gitlab
1. 登錄 gitlab
等待 docker 容器啟動完成后, 登陸
http://localhost:8080
第一次訪問是讓我們修改管理員密碼。如下所示
設置后管理員密碼后,就進入登錄頁面,輸入用戶名 root 和剛才設置的密碼就進入了 gitlab 的控制台。如下圖所示
2. 創建組( group)
gitlab 里面有三類對象:組( group)、項目( project)和用戶 (people)。
為了方便管理,我們應該基於組來創建項目。一個項目就是一個 git 的倉庫。基於組創建項目 ,然后將用戶設置合適的權限后加入到組里面。這樣用戶就有了組里面所有項目的對應權限。
點擊 “Create a group” 鏈接,如下圖所示創建一個“健康醫療開發組” 的組
3. 創建用戶(people)
點擊 “Add people” 鏈接,如下圖所示創建一個 “yanggch” 的用戶
因為還沒有配置好郵件服務,所以還不能發送用戶初始化密碼的郵件。我們需要編輯用戶,手動設置一個密碼。如下圖所示。如果用戶忘記了密碼,充值密碼也可以在這里進行。
3. 將用戶加入組
為了方便管理,需要將用戶加入到對應的組里面。如下圖所示,在組管理界面中,點擊組的名稱,進入組用戶設置界面。將剛才創建的用戶 “yanggch” 加入到組 “健康醫療開發組”中,並且給他設置為 “Master” 角色。只有 “Master” 或者 “Owner” 角色才能推送 git 的更新。
4. 創建項目(project)
增加 gitlab 組的時候,為了讓項目讓組里面的人都能訪問,注意要將項目建立在組之下。如下圖所示,在“健康醫療開發組”之下建立了 “redis_util” 的項目。
這樣項目建好之后就可以被組里的用戶訪問了。
二. 客戶端訪問
1. 設置ssh Key
剛才那種方式通過 http 協議和 gitlab 進行通信,每次都要輸入用戶名和密碼,非常不方便。用戶可以設置通過 ssh 進行交互,將ssh key 加入到用戶的 sshkey 設置列表中。
參考“命令訪問” 章節進入 git 的 bash 環境。執行下面的命令進入 ssh key 存儲目錄
cd ~/.ssh
目錄中 id_rsa.pub 是 ssh 訪問的公鑰。如果不存在則執行下面的命令生成
ssh-keygen -t rsa
全部回車后,會生成 id_rsa.pub 文件。
將文件中的內容拷貝到剪貼板。然后通過前面創建的用戶名和密碼登錄 gitlab 控制台。在下面的界面中,將 id_rsa.pub 文件的內容填入文本框
保存后。再通過 ssh 協議操作 git 倉庫,將不再需要輸入用戶名和密碼。如下所示
2. 推送一次提交
首先配置當前倉庫的用戶名和用戶郵箱配置
cd redis_util git config --local user.name "yanggch" git config --local user.email "yanggch@inspur.com"
然后在 redis_util 目錄下加入一個 readme.txt,執行下面的命令提交並將更新推送到 gitlab 遠程服務器
#將新文件加入到版本管理 git add readme.txt #提交 git commit -m"第一次提交" #將當前分支 master 推送到遠程倉庫 git push #以 master 分支為基礎建立一個新的 dev 本地分支 git checkout -b dev #將本地倉庫分支推送到遠程倉庫,在遠程倉庫建立對應的 dev 分支 git push --set-upstream origin dev
到 gitlab 控制台查看 redis_util 的狀態。如下圖所示
到此,我們就完成了一個公司級別的 gitlab 服務器的搭建工作。同事們可以在這個上面流暢的進行開發了。
