GitLab 是一個基於 Git 的完整 DevOps 平台,主要用於程式碼版本控制、協作開發與自動化部署。它類似於 GitHub,但 GitLab 提供了更多一站式的功能,讓團隊可以在同一個平台上完成從程式碼管理、CI/CD(自動化測試與部署)、Issue 追蹤到程式碼審查等所有開發流程。
GitLab 的主要特色
- 版本控制:使用 Git 來管理程式碼變更,追蹤每一次修改。
- 專案協作:支援多人協作開發,提供 Merge Request(合併請求)、Issue(議題追蹤)等功能。
- CI/CD 自動化:內建自動化流程,讓你可以自動測試、建置、部署程式。
- 私有與公有專案:可以建立私有專案,保護企業或個人程式碼安全。
- 自架或雲端:除了官方雲端服務,也可以在自己公司內部伺服器安裝 GitLab。
適合誰使用?
- 軟體開發團隊
- DevOps 工程師
- 需要協作、審查、部署的專案管理者
1. 從 GitLab Clone(複製)專案到本地
步驟一:取得專案的 clone 連結
- 登入你的 GitLab 網頁,進入目標專案頁面。
- 點選「Clone」按鈕,複製 HTTPS 或 SSH 連結(通常建議用 HTTPS,除非你已設定 SSH 金鑰)。
步驟二:在本地執行 clone 指令
git clone <專案連結>
範例:
git clone https://gitlab.com/your-group/your-project.git這樣專案就會複製到你目前的資料夾下。
2. 上傳(Push)本地檔案到 GitLab
步驟一:檢查目前狀態
git status
步驟二:加入(stage)要上傳的檔案
git add .
或指定檔案:
git add <檔名>
步驟三:提交(commit)本地更動
git commit -m "你的修改說明"
步驟四:同步並上傳到 GitLab
git pull origin master # 先同步遠端,避免衝突
git push origin master # 再上傳本地更動
如果你的分支不是 master,請改成你自己的分支名稱。
3. 解決本地與遠端衝突
常見錯誤訊息
error: Your local changes to the following files would be overwritten by merge:
這代表本地有未提交的更動,無法直接 pull。
解決方法一:暫存本地更動
git stash
git pull origin master
git stash pop
解決方法二:直接提交本地更動
git add .
git commit -m "save local changes"
git pull origin master
解決方法三:放棄本地更動(小心使用)
git reset --hard
git pull origin master
4. 常用 GitLab 指令速查表
git clone <專案連結> # 複製專案到本地
git status # 查看目前狀態
git add . # 加入所有變更
git commit -m "訊息" # 提交變更
git pull origin master # 取得遠端最新內容
git push origin master # 上傳本地更動
git stash # 暫存本地未提交的更動
git stash pop # 還原暫存的更動
git reset --hard # 放棄所有未提交的更動
1. 上傳(Push)本地檔案到 GitLab
步驟一:檢查目前狀態
git status
確認有哪些檔案有變更。
步驟二:加入(stage)要上傳的檔案
git add .
或指定檔案:
git add <檔名>
步驟三:提交(commit)本地更動
git commit -m "你的修改說明"
步驟四:同步並上傳到 GitLab
git pull origin master # 先同步遠端,避免衝突
git push origin master # 再上傳本地更動
如果你的分支不是 master,請改成你自己的分支名稱。
2. 解決本地與遠端衝突
常見錯誤訊息
error: Your local changes to the following files would be overwritten by merge:
這代表本地有未提交的更動,無法直接 pull。
解決方法一:暫存本地更動
git stash
git pull origin master
git stash pop
解決方法二:直接提交本地更動
git add .
git commit -m "save local changes"
git pull origin master
解決方法三:放棄本地更動(小心使用)
git reset --hard
git pull origin master
3. 常用 GitLab 指令速查表
git status # 查看目前狀態
git add . # 加入所有變更
git commit -m "訊息" # 提交變更
git pull origin master # 取得遠端最新內容
git push origin master # 上傳本地更動
git stash # 暫存本地未提交的更動
git stash pop # 還原暫存的更動
git reset --hard # 放棄所有未提交的更動