您現在的位置是:首頁 > 手機遊戲首頁手機遊戲

Git版本控制系統管理

  • 由 嵌入式之入坑筆記 發表于 手機遊戲
  • 2023-02-03
簡介或者 git checkout HEAD 命令時,會用 HEAD 指向的 master 分支中的部分檔案替換暫存區和以及工作區中的檔案

cf玩偶兌換卷怎麼使用

Git是一個免費的、開源的分散式版本控制系統,可以用於記錄一個或者若干個檔案內容的變化,方便查閱或者修改。

Git官網:

https://git-scm。com/

1、常見的版本控制系統

1.1、集中式版本控制系統(SVN、CVS、perforce)

集中式版本控制系統的示意圖如下:

Git版本控制系統管理

特點:

1)一定會有一箇中央伺服器;

2)優點在於所有使用者都可以看到最新更新的檔案或者記錄,管理員也很方便掌握每個人的許可權;

3)缺點是如果中央伺服器出故障的時候,所有使用者都不能進行上傳、下載、更新等;

1.2、分散式版本控制系統(Git、BitKeeper)

分散式版本控制系統的示意圖如下:

Git版本控制系統管理

每個客戶端都有備份和記錄,大家都可以檢視到版本記錄和修改以後的記錄。

分散式版本控制系統存放的不是版本與版本之間的差異,而是版本的索引。

2、Git的工作區、暫存區、版本庫

使用Git時對其工作區、暫存區和版本庫這三個的概念是很有必要了解的,瞭解這三個概念有助於對Git的工作過程有一個比較明確的認知。

那這三個概念都是些什麼意思呢?

1)工作區:

就是在電腦上能看到的目錄或者檔案。簡單而言就是你的本地檔案。

2)暫存區(stage 或 index):

一般存放在 。git 目錄下的 index 檔案(。git/index)中,所以也可以把暫存區叫作索引(index)。

3)版本庫:

工作區中有一個隱藏目錄。git,這個不算工作區,而是 Git 的版本庫。

工作區、版本庫中的暫存區和版本庫之間的關係如下圖所示:

Git版本控制系統管理

上圖中左側為工作區,右側為版本庫。在版本庫中標記為 “index” 的區域是暫存區(stage/index),標記為 “master” 的是 master 分支所代表的目錄樹。

上圖中可以看到,此時 “HEAD” 實際是指向 master 分支的一個“指標”。所以圖中的命令中出現 HEAD 的地方是可以用 master 來替換。

上圖中的 objects 標識的區域為 Git 的物件庫,位於 “。git/objects” 目錄下,裡面包含了建立的各種物件及內容。

2。1、一些指令執行時所存在的關聯

2.1.1、向暫存區追加檔案。

git add xxx

使用 git add 命令時,是對工作區修改(或新增)的檔案進行操作的,會將暫存區的目錄樹更新。

同時,工作區修改(或新增)的檔案內容會被寫入到物件庫中的一個新的物件中,而該物件的ID被記錄在暫存區的檔案索引中。

2.1.2、暫存區檔案上傳版本庫。

git commit -m “描述”

當執行提交操作 git commit 時,會將暫存區的目錄樹寫到版本庫中,master 分支會做相應的更新。即 master 指向的目錄樹就是提交時暫存區的目錄樹。

2.1.3、版本回退。

git reset HEAD

當執行 git reset HEAD 命令時,暫存區的目錄樹會被重寫,被 master 分支指向的目錄樹所替換,但是工作區不受影響。

2.1.4、刪除檔案。

git rm ——cached

1)當執行 git rm ——cached 命令時,會直接從暫存區刪除檔案,工作區則不做出改變。

2.1.5、檢出檔案

git checkout 。 或 git checkout ——

1)當執行 git checkout 。 會用暫存區全部的檔案替換工作區的檔案。或者 git checkout —— 命令時,會用暫存區指定的檔案替換工作區的檔案。這個操作是很危險,會清除工作區中未新增到暫存區的改動。

git checkout HEAD 。 或者 git checkout HEAD

2)當執行 git checkout HEAD 。 會用 HEAD 指向的 master 分支中的全部檔案替換暫存區和以及工作區中的檔案。或者 git checkout HEAD 命令時,會用 HEAD 指向的 master 分支中的部分檔案替換暫存區和以及工作區中的檔案。這個命令也是極具危險性的,因為不但會清除工作區中未提交的改動,也會清除暫存區中未提交的改動。

3、程式碼託管中心

除了本地庫可以儲存版本的資訊以外,為了更加方便使用,可以在程式碼託管平臺中建立遠端庫,將本地庫和遠端庫建立連線,實現遠端協同的開發。它的好處有:

1)方便團隊內部合作開發專案、共同專案管理;

2)方便跨團隊之間的專案開發合作,使得不同公司、組織之間的合作開發可以方便的進行。

4、Git的工作流程

Git的工作流程可以歸納如下圖所示:

Git版本控制系統管理

總的來說:Git是一個很方便的程式碼託管平臺,使用者可以在遠端伺服器上建立屬於自己的專案資源管理庫,實現遠端和本地的資源同步,本地新增、修改的檔案可以及時更新到遠端伺服器上儲存管理。

同時也可以便利於多人協作開發,及時更新最新的資源庫檔案當本地的工作區,及時知曉最新的更新進度,加快開發的進度。

Top