測試開發CICD——Git——window上安裝git——標籤
阿新 • • 發佈:2021-08-19
Git 標籤
如果你達到一個重要的階段,並希望永遠記住那個特別的提交快照,你可以使用 git tag 給它打上標籤。
比如說,我們想為我們的 runoob 專案釋出一個"1.0"版本。 我們可以用 git tag -a v1.0 命令給最新一次提交打上(HEAD)"v1.0"的標籤。
-a 選項意為"建立一個帶註解的標籤"。
不用 -a 選項也可以執行的,但它不會記錄這標籤是啥時候打的,誰打的,也不會讓你添加個標籤的註解。 我推薦一直建立帶註解的標籤。
$ git tag -a v1.0
當你執行 git tag -a 命令時,Git 會開啟你的編輯器,讓你寫一句標籤註解,就像你給提交寫註解一樣。
現在,注意當我們執行 git log --decorate 時,我們可以看到我們的標籤了:
* d5e9fc2 (HEAD -> master) Merge branch 'change_site'
|\
| * 7774248 (change_site) changed the runoob.php
* | c68142b 修改程式碼
|/
* c1501a2 removed test.txt、add runoob.php
* 3e92c19 add test.txt
* 3b58100 第一次版本提交
如果我們忘了給某個提交打標籤,又將它釋出了,我們可以給它追加標籤。
例如,假設我們釋出了提交 85fc7e7(上面例項最後一行),但是那時候忘了給它打標籤。 我們現在也可以:
$ git tag -a v0.9 85fc7e7
$ git log --oneline --decorate --graph
* d5e9fc2 (HEAD -> master) Merge branch 'change_site'
|\
| * 7774248 (change_site) changed the runoob.php
* | c68142b 修改程式碼
|/
* c1501a2 removed test.txt、add runoob.php
* 3e92c19 add test.txt
* 3b58100 (tag: v0.9) 第一次版本提交
如果我們要檢視所有標籤可以使用以下命令:
$ git tag
v0.9
v1.0
指定標籤資訊命令:
git tag -a <tagname> -m "runoob.com標籤"
PGP簽名標籤命令:
git tag -s <tagname> -m "runoob.com標籤"
標籤介紹
釋出一個版本時,我們通常先在版本庫中打一個標籤(tag),這樣就唯一確定了打標籤時刻的版本。將來無論什麼時候,取某個標籤的版本,就是把那個打標籤的時刻的歷史版本取出來。
所以,標籤也是版本庫的一個快照。
Git 的標籤雖然是版本庫的快照,但其實它就是指向某個 commit 的指標(跟分支很像對不對?但是分支可以移動,標籤不能移動),所以,建立和刪除標籤都是瞬間完成的。
同大多數 VCS 一樣,Git 也可以對某一時間點上的版本打上標籤。人們在釋出某個軟體版本(比如 v1.0 等等)的時候,經常這麼做。
本節我們一起來學習如何列出所有可用的標籤,如何新建標籤,以及各種不同型別標籤之間的差別。
新建標籤
Git 使用的標籤有兩種型別:輕量級的(lightweight)和含附註的(annotated)。
輕量級標籤就像是個不會變化的分支,實際上它就是個指向特定提交物件的引用。
而含附註標籤,實際上是儲存在倉庫中的一個獨立物件,它有自身的校驗和資訊,包含著標籤的名字,電子郵件地址和日期,以及標籤說明,標籤本身也允許使用 GNU Privacy Guard (GPG) 來簽署或驗證。
一般我們都建議使用含附註型的標籤,以便保留相關資訊;
當然,如果只是臨時性加註標籤,或者不需要旁註額外資訊,用輕量級標籤也沒問題。
2 建立標籤
[root@Git git]# git tag v1.0
3 檢視已有標籤
[root@Git git]# git tag v1.0 [root@Git git]# git tag v1.1 [root@Git git]# git tag v1.0 v1.1
4 刪除標籤
[root@Git git]# git tag -d v1.1 Deleted tag ‘v1.1’ (was 91388f0) [root@Git git]# git tag v1.0
5 檢視此版本所修改的內容
[root@Git git]# git show v1.0 commit 91388f0883903ac9014e006611944f6688170ef4 Author: "syaving" <"[email protected]"> Date: Fri Dec 16 02:32:05 2016 +0800 commit dir diff –git a/readme b/readme index 7a3d711..bfecb47 100644 — a/readme +++ b/readme @@ -1,2 +1,3 @@ text hello git +use commit [root@Git git]# git log –oneline 91388f0 commit dir e435fe8 add readme 2525062 add readme