單元 2 · 第一個專案

建立、複製、提交、上傳 — Your First Project

術語先導:Project 與 Group

GitLab 不用「Repository」,改用專案(Project)群組(Group)

GitLab 術語GitHub 對應說明
Project(專案)Repository一個專案的容器
Group(群組)Organization組織多個專案、管理權限
Subgroup群組可巢狀
為什麼叫 Project:GitLab 認為專案不只是「程式碼」——還含 Issues、CI/CD、容器庫等, 所以叫專案比叫 repo 更貼近它的定位。

流程一:建立專案

網頁操作 · WEB UI
1. 右上角「+」→ New project / New blank project
2. 填專案名稱(如 hello-world)
3. 選 visibility(Private / Internal / Public)
4. 勾選 Initialize repository with a README
5. 按 Create project

流程二:Clone 到本機

命令 · COMMANDS
git clone https://gitlab.com/USER/hello-world.git
cd hello-world
結果 · RESULT
hello-world/
├── .git/
└── README.md

流程三:改檔 → 提交 → 上傳

Git 的日常循環與 GitHub 完全一樣(Git 是同一套工具):

日常循環 · THE LOOP
git add .
git commit -m "說明"
git push
好消息:你在GitHub 站學到的 Git 指令 100% 適用——GitLab 只是「另一間托管 Git 的房子」。

首次推送 · First Push

從零開始推送 · COMMANDS
git init -b main
git add .
git commit -m "first commit"
git remote add origin https://gitlab.com/USER/hello-world.git
git push -u origin main

Visibility:可見性

層級誰能看到
Private只有成員
Internal登入者可見(自架環境常見)
Public任何人(含未登入)

自架 GitLab 時「Internal」很有用——整個公司可看,公司外看不到。

README 與 .gitignore

與 GitHub 站講的相同原則(README 是專案門面、.gitignore 排除敏感檔)——不再重述, 直接複習該單元

看完這頁你應該能說出:
  • Project 與 Group 對應 GitHub 的什麼。
  • 建立、clone、push 一個 GitLab 專案。
  • 三種 visibility 的差異。
  • Git 指令在兩平台通用。

延伸閱讀