Lightweight Tags.
如果想標註某個事件/里程碑, 就需要使用git tag tag名.
列出所有的tag:
git tag --list.
可以在其它的git命令中使用tag名作為引用:
git show myTag:
刪除tag:
git tag --delete myTag.
log裡面的tag也沒有了;
Annotated Tags.
git tag -a Tag名.
git tag -a v-1.0: 然後會開啟編輯器輸入資訊:
log:
show:
這種Annotated tag, 輸出有點不同: tag tag名, tagger和Date, 然後下面是tag資訊.
比較Tag.
修改一些檔案, commit,
然後建立tag 1.1:
然後再修改一個檔案, 這裡面用一下git commit --amend命令, 來修改commit資訊.
這裡使用另一種命令方式建立tag, 直接輸入資訊:
git tag v-1.2 -m "Release 1.2".
下面比較:
git diff tag1 tag2:
也可使用difftool:
git difftool v-1.0 v-1.1.
Tag 特定的commit.
git tag -a v-0.9 a8f28e0:
OK.
更新tag.
我想要把這個tag移動到下面那個commit. 那麼可以這樣:
git tag -a v-0.9 -f 7527405.
Remote Tag.
來到github的release頁:
首先push:
git push origin v-0.9.
再看看github:
再push一個tag:
可以再github上看到, 這不僅push了tag, 連tag關聯的commit也被push了.
push本地所有的tags:
git push origin master --tags.
刪除github上的tag:
git push origin :v-0.9.