開始使用gitlab-建立新專案
1.新增一個帳號,因為防火牆問題無法提供email確認,所以只能人工通知管理者進行帳號確認
2.當帳號開通後,登錄並建立新專案(New Project)
輸入專案資訊:
Project path:專案路徑,鏡來可以直接指定該完整網址來下載專案,只接受英文名稱。
Import project from: 可以將先前在其他地方開發的專案匯入。而本次是將寄字在電腦上寫完的雛型系統匯入gitlab,來進行管理,所以就不設定此選項。
Description(optional):專案描述,可有可無。
Visibility Level: 此專案對其他人的開放權限。Public指的是所有知道網址的就可以下載該專案,而在本gitlab上有帳號的人則直接擁有guest權限,還是只能看跟下載但不能進行上傳;Internal則是只有登入的使用者才能下載(clone),且擁有guest權限;Private則是只有被授權的人才能存取,授權的角色有Guest, Reporter, Developer, Master, and Owner,詳細說明請自行參照gitlab權限說明。
3.此時在gitlab主機已有一個git專案,假如開發環境在Windows的話,可以使用SourceTree作為git client,本範例會將已開發的上傳到gitlab中,所以我們接下來用SourceTree來進行底下的動作,打開SourceTree並選擇Clone/New後會出現選單,選擇Clone Repository頁籤,並輸入相關資料,主要就是來源網址(Source Path/URL)-就是gitlab的Project Path,上圖中有;目的地(Destination Path)則為本機的下載目錄。
4.按下clone後就會下載檔案到本機中,因為是個剛建立的空白專案,所以沒有檔案,只有一個.git隱藏目錄。
5.接著把目前的專案檔案搬到剛剛指定的目錄,並進入SourceTree中,會在中間畫面看到剛剛搬過去的288個檔案,會在Unstaged files中,記得按下Unstaged files旁的核取方塊,將所有檔案變成Staged files
6.這時才可以按下Commit,記得輸入註釋說明,如果不想彈出push畫面的話,記得勾選下方的Push changes immediately to核選方塊。(注意事項:因為本人已經用過很多次gitlab專案,所以沒有彈出詢問帳號密碼資訊,正常來說應該會有。此外,在設定過程中,有出現過無法commit的情況,後來重開SourceTree就正常了)
- 根據git的使用,建議一開始開發時將分支(branch)設定在develop,所以這時可以按下SourceTree功能按鈕的"Git Flow",叫出Git Flow的畫面,按下"OK"後會自動幫使用者建立develop分支並跳到該分支,該注意的是,下一次push要選擇只push到遠端的develop分支。
- 在本機完成這些上傳後可以到gitlab server檢查上傳結果。可以看到會有兩個branches,共上傳了4.6M。
使用Linux git client的使用步驟
1.點選帳號名稱,並進入Profile Settings來設定SSH Keys
新增一個SSH KEYS,可以點選generate it來看使用說明
2.開啟putty,連線到開發的主機,此主機是開發用的主機,本範例是用Linux的主機
ssh-keygen -t rsa -C "[email protected]" #產生RSA公私鑰
cat ~/.ssh/id_rsa.pub #將公鑰顯示出來
ssh-rsa AAAABxxxxxxxxxxxxxxxxxxxxxxxxxxAAAQEAptbpHqZCOXFDoHI2nfu0dqWpe2LFf3EaWARsWD+hEe1qIjByxsPBoDNUn9GAB/zX4j7ldKx71Xa7zQrnEMOSPRrkW1FOLVWO+m9B7gzbis/nVtSUvVKEnhBI+Q4ZDOkzGS/D2cY8z8woXj1ew5/7MXCTwuxmYS3ZYdt8r5Yt58UyMEMPivfKduP8erDCN6QXKTGdZsACWryJ0tN7f97+wBKtuOES6ZeWWYqEQ8fhXl6/Tg291bH81zhp1pqWrBnwlUETpVArTv7NG4n67qERwWiSWsqjzsE+wcRt7X0+0ogZ844AEfs775AbLs+sHv8vYSsPyjd90ktj7zuuV6wAWw== [email protected]
將上述公鑰複製起來並複製到第3步驟的SSH Keys中
3.回到GitLab的dashboard(點選左上角的GitLab圖示即可),進入剛剛建立的liugguiki專題,選擇用ssh的方式進行程式碼管理。
根據Existing folder or Git repository來進行操作,在開發主機上輸入以下指令
cd existing_folder
git init
git remote add origin [email protected]:yehchitsai/liugguiki.git
git add . --all
git commit -m "first commit"
git push -u origin master
如果成功會在開發主機看到以下訊息
Counting objects: 287, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (285/285), done.
Writing objects: 100% (287/287), 1.05 MiB, done.
Total 287 (delta 109), reused 0 (delta 0)
To [email protected]:yehchitsai/liugguiki.git
* [new branch] master -> master
Branch master set up to track remote branch master from origin.
4.在GitLab的網頁中可以點選左方工具列的Commits工具選單,應該就可以看到以下畫面
點選右邊的"Browse Files »"就可以看到所有的上傳資料。