一定血、創(chuàng)建標(biāo)簽
標(biāo)簽可以簡單理解為屬于分支定義的別名赔癌。分支本身都會進行指針的配置(分支都會指向某一個提交點),標(biāo)簽卻是一個固定的內(nèi)容澜沟,即標(biāo)簽永遠指向一個提交點≡制保現(xiàn)在如果已經(jīng)有兩個分支了。
- 為master定義一個標(biāo)簽茫虽。master分支是程序的最終發(fā)布版本刊苍,可以說既们,master就是一個完整的開發(fā)程序,我們給其加上一個標(biāo)簽
git tag v1.0
- 查看所有的標(biāo)簽
git tag
但是這個標(biāo)簽只是針對當(dāng)前的master分支班缰,可以在一個項目之中一定會有很多個提交點贤壁,那么如何為之前的提交點打上標(biāo)簽?這里只需要找到提交號即可埠忘。
- 查詢?nèi)罩?/li>
git log --pretty=oneline --abbrev-commit
在日志上都會有提交號脾拆,下面我們針對一個提交號進行標(biāo)簽的定義。
- 為某個提交點(d032312)設(shè)置標(biāo)簽
git tag v0.6 d032312
git tag
但是此時只是顯示一些很簡單的標(biāo)簽信息莹妒,并不是很詳細名船,那如何查看更加詳細的標(biāo)簽信息?
- 查看標(biāo)簽的詳細信息
git show v0.6
在之前所建立的標(biāo)簽都沒有設(shè)置注釋信息旨怠。
- 為標(biāo)簽添加時設(shè)置注釋信息
git tag v0.7 7759687 -m "commit id 7759687"
二渠驼、加密
標(biāo)簽創(chuàng)建完之后如果開發(fā)者只希望自己能修改標(biāo)簽,那么就必須進行加密的處理鉴腻,而可以使用GPG工具實現(xiàn)加密迷扇。
下載地址:
www.gnupg.org
,安裝過程很簡單爽哎,這里不細說蜓席。安裝之后在命令行使用命令:gpg -help
進行驗證。下面我們通過一個示例對此工具進行一個說明课锌。生成自己的密鑰
gpg --gen-key
這里詢問我們使用什么樣的加密算法厨内,我們選擇之前使用過的RSA算法,這也是默認的選擇渺贤,我們直接回車雏胃。
這里詢問我們密碼長度,默認的長度為2048志鞍,這里我們選擇默認瞭亮,直接回車。
這里讓我們選擇密鑰的有效日期固棚,這里我們選擇永不過期街州。輸入0回車。之后再輸入y表示確認玻孟。
讓我們輸入自己的個人信息。
其中
comment
表示一些注釋信息鳍征,之后提示我們是否進行修改黍翎,這里信息我們已經(jīng)確認過了,不需要修改艳丛,這里我們直接輸入o回車匣掸。隨后提示我們設(shè)置私鑰的密碼趟紊,為了防止有人惡意修改。我們還是輸入之前的密鑰
walp
碰酝。之后就會出現(xiàn)一些提示信息霎匈。
在這里面有幾個重要的信息,密鑰號:
5B24057A
送爸。用戶ID:yjaal (my gpg information) <yjjal1314@gmail.com>
(用戶名 注釋 郵箱)铛嘱。
- 為了方便,最好還生成一張撤銷的證書袭厂,為的是以后如果密鑰過期墨吓,可以通過服務(wù)器進行撤銷。
gpg --gen-revoke 5B24057A
這里提示是否進行撤銷纹磺,輸入y回車帖烘。
這里輸入0回車。
然后輸入我們之前設(shè)置的密鑰橄杨。
此時會出現(xiàn)
自動生成了相關(guān)的密鑰信息秘症。
- 通過gpg工具列出所有的密鑰
gpg --list-keys
- 實現(xiàn)文件的加密與解密處理
比如現(xiàn)在E:\github\LocalSource\gpgtest
下有一個Demo.txt
的文件:
Hello World!!!
為了傳入的安全,我們在傳輸之前對其加密
gpg --recipient 5B24057A --output Demo.en.txt --encrypt Demo.txt
這里就在此目錄中生成了一個
Demo.en.txt
的加密文件式矫。這里的命令中5B24057A
是我們之前注冊的用戶的密鑰號乡摹,我們給加密之后的文件名為Demo.en.txt
,--encrypt
指定要加密的文件衷佃。
- 對加密的文件進行解密
gpg --decrypt Demo.en.txt --output demo.de.txt
這里我們使用此命令不知道有什么問題趟卸,下面我們使用分布操作:
gpg Demo.en.txt
這里在中途可能會讓我們輸入密碼信息,填入之后我們需要給解密后的文件起名氏义,這里起名為
Demo.de.txt
锄列。此時我們在此目錄中就會多出這樣一個文件,此文件的內(nèi)容和之前的文件Demo.txt
的內(nèi)容是一致的惯悠。這樣就實現(xiàn)了一個解密操作邻邮。
三、使用GPG生成標(biāo)簽
現(xiàn)在我們已經(jīng)生成好了一個密鑰克婶,名稱是5B24057A
筒严。標(biāo)簽的加密只需要增加一個-s
的參數(shù)。
- 使用GPG加密標(biāo)簽
git tag -s v0.9 -m "gpg handle tag" 418aba9
這里我們對最新的一個提交點生成標(biāo)簽情萤,但是從提示信息來看并不能進行加密處理鸭蛙。我們需要在加密時使用一個指定的簽名,所以實際上標(biāo)簽的加密處理應(yīng)該這樣做:
git tag -u "yjaal" -s v0.9 -m "gpg handle tag" d032312
命令中我們需要指定之前我們設(shè)置的用戶筋岛,之后會提示我們輸入密鑰娶视。注意:這里如果還出現(xiàn)錯誤宗弯,我們需要配置一個環(huán)境變量哥放,在系統(tǒng)變量中點擊新建:
之后點擊確定樱拴,應(yīng)該就可以了狮含。
此時其他的開發(fā)者是不可能修改此標(biāo)簽的。查詢此標(biāo)簽:
git show v0.9
四孝赫、標(biāo)簽管理
- 刪除標(biāo)簽
git tag -d v1.0
這樣的標(biāo)簽只是進行了本地的刪除较木,我們也可以提交到服務(wù)器上去。
- 將標(biāo)簽推送到服務(wù)器上
git push origin v0.9
git push origin v0.7
完成之后我們進行查看
可以看到
2 releases
青柄,進去但是這樣一個一個的進行推送很麻煩伐债,下面我們一次性推送多個標(biāo)簽到服務(wù)器:
git push origin --tags
- 刪除某個標(biāo)簽
git tag -d v0.7
- 刪除服務(wù)器上的標(biāo)簽
git push origin :refs/tags/v0.7
最后:這就是標(biāo)簽的基本操作,其實就是為提交點起了個別名刹前,方便我們進行管理泳赋。