簡單介紹:
????????Git是一個分布式版本控制系統,用于跟蹤文件的更改,特別是在多人協作開發的環境中。
????????????????Key:
分布式 | 版本控制 | 系統 |
---|
????????最常用于軟件開發,但也可以用于管理任何類型的文件和文件夾。
????????Git幫助團隊跟蹤和管理文件的歷史版本,使得多人可以協同工作、進行并行開發,且能隨時回溯到之前的版本。
- 分布式:
---------------------------------------------------------------------------------------------------------------------------------
ps.
????????Computer?A 和Computer?B 之間的箭頭并不意味著它們直接相互交互或交換文件,而是它們通過 與服務器的交互,以保持版本同步。
????????具體來說,這表示 電腦 A 和電腦 B 都可以與服務器進行數據交換,并且它們可以 互相同步和獲取版本數據
---------------------------------------------------------------------------------------------------------------------------------
與傳統的集中式分布進行比較:
特性 | 集中式版本控制系統 (CVCS) | 分布式版本控制系統 (DVCS) |
---|---|---|
工作模式 | 依賴中央服務器,必須在線才能操作 | 每個開發者有完整的代碼庫副本,可以離線工作 |
容錯能力 | 服務器故障會導致數據丟失或無法工作 | 每個開發者持有完整的代碼庫副本,服務器故障不影響本地工作 |
分支與合并 | 分支操作復雜且難以管理 | 支持快速、簡便的分支與合并操作,提高開發靈活性 |
協作效率 | 需要頻繁與中央服務器同步,可能造成延遲和沖突 | 可以本地完成操作后推送,減少等待時間和沖突,提高協作效率 |
靈活性與管理 | 主要由中央服務器管理,靈活性較低 | 支持多個遠程倉庫之間的數據共享和管理,提供更高的靈活性和分布式管理 |
- 版本控制:
????????主要目的是記錄文件的歷史變化,并支持團隊協作,避免文件沖突和丟失。版本控制系統可以讓多個開發者在不同的時間、地點同時編輯同一項目,且能夠管理每次修改、查看歷史版本,甚至恢復到之前的版本
? ? ? ? ????????基本操作:
????????????????????????提交(Commit):保存文件的變更記錄。
????????????????????????更新(Update):從版本庫拉取最新的變更。
????????????????????????分支(Branch):創建獨立的開發路徑,用于開發新功能或修復bug。
????????????????????????合并(Merge):將不同分支的改動合并到主分支。
Git工作流程:
Git客戶端操作流程:
操作步驟 | 命令 | 說明 |
---|---|---|
1. 初始化Git倉庫 |
| 在當前目錄下初始化一個新的Git倉庫。 |
2. 配置用戶信息 |
| 配置全局用戶名和郵箱,用于標記提交記錄。 |
3. 添加文件到暫存區 |
| 將文件添加到暫存區,準備提交。 |
4. 提交文件 |
| 將暫存區的文件提交到本地版本庫,并添加提交信息。 |
5. 查看狀態 |
| 查看當前工作目錄和暫存區的狀態。 |
6. 查看歷史 |
| 查看提交歷史,查看項目的變更記錄。 |
7. 創建分支 |
| 創建一個新的分支。 |
8. 切換分支 |
| 切換到指定的分支。 |
9. 創建并切換分支 |
| 創建并立即切換到新的分支。 |
10. 合并分支 |
| 將指定分支的更改合并到當前分支。 |
11. 查看分支 |
| 查看當前所有分支及所在的分支。 |
12. 刪除分支 |
| 刪除不再需要的本地分支。 |
13. 關聯遠程倉庫 |
| 將本地倉庫與遠程倉庫進行關聯。 |
14. 推送更改到遠程倉庫 |
| 將本地分支的更改推送到遠程倉庫。 |
15. 拉取遠程倉庫更改 |
| 從遠程倉庫拉取指定分支的最新更改并合并到本地分支。 |
16. 克隆遠程倉庫 |
| 克隆遠程倉庫到本地。 |
- 工作示意圖: