在剛入職的初期,掌握Git這個版本控制工具對於高效管理專案至關重要。Git不僅能幫助你跟蹤程式碼的變更,還能方便地與團隊成員協作,確保專案的順利進行。
1. Git的基本概念
在開始使用Git之前,瞭解以下幾個基本概念是很重要的:
- 倉庫(Repository):一個Git倉庫包含了專案的所有檔案及其變更歷史。可以是本地的,也可以是遠端的。
- 分支(Branch):分支是程式碼的一個獨立開發線,可以並行開發新功能,而不影響主分支(通常是
main
或master
)。 - 提交(Commit):每次儲存程式碼變更的記錄。一個提交包含變更的檔案以及對這些變更的描述。
- 合併(Merge):將一個分支的變更合併到另一個分支中。
2. 初始化和克隆倉庫
初始化倉庫
如果你從頭開始一個新專案,可以透過以下命令初始化一個新的Git倉庫:
git init
這將在當前目錄下建立一個新的Git倉庫。
克隆倉庫
如果你需要從現有的遠端倉庫開始工作,可以使用git clone
命令:
git clone <repository_url>
這會將遠端倉庫複製到你的本地機器上。
3. 基本操作
檢視倉庫狀態
在進行任何操作之前,檢視當前倉庫的狀態是很有幫助的。使用git status
可以看到當前的分支、未提交的更改等資訊:
git status
新增檔案到暫存區
在進行提交之前,需要將檔案新增到暫存區。可以使用git add
命令:
git add <file_name>
或者新增所有更改的檔案:
git add .
提交更改
提交暫存區的檔案,並新增提交資訊:
git commit -m "提交資訊"
檢視提交歷史
使用git log
可以檢視提交歷史:
git log
4. 分支管理
建立和切換分支
在開發新功能時,通常會建立一個新的分支:
git branch <new_branch>
然後切換到新分支:
git checkout <new_branch>
或者結合建立和切換操作:
git checkout -b <new_branch>
合併分支
在完成功能開發後,可以將新分支的更改合併到主分支:
git checkout main
git merge <new_branch>
刪除分支
合併後,可以刪除不再需要的分支:
git branch -d <branch_name>
5. 遠端操作
新增遠端倉庫
如果需要將本地倉庫與遠端倉庫關聯,可以使用git remote add
命令:
git remote add origin <repository_url>
推送到遠端倉庫
將本地提交推送到遠端倉庫:
git push origin <branch_name>
拉取遠端更新
從遠端倉庫拉取更新:
git pull origin <branch_name>
6. 常見工作流
1. Forking Workflow
在開源專案中,常見的工作流是Forking Workflow。你會先fork一個倉庫到自己的GitHub賬戶,然後clone到本地進行開發。完成開發後,推送到你的GitHub倉庫,併發起Pull Request,等待專案維護者的稽核和合並。
2. Feature Branch Workflow
在團隊協作中,Feature Branch Workflow非常常見。每個新功能或bug修復都會建立一個獨立的分支,開發完成後合併到主分支。這樣可以保證主分支的穩定性,並方便程式碼審查。
3. Gitflow Workflow
Gitflow是一種更為複雜的工作流,適用於釋出週期較長且需要維護多個釋出版本的專案。它定義了不同型別的分支(如feature分支、develop分支、release分支和hotfix分支),並規定了嚴格的合併和釋出流程。
結語
Git是一個功能強大且靈活的版本控制系統,初學者只需掌握基礎操作和常見工作流即可應對大多數情況。
隨著經驗的積累,可以逐步學習更高階的功能,如子模組、鉤子和變基操作等。