對比項 | Tag | Branch |
---|---|---|
是什么 | Tag翻譯過來是標(biāo)簽 的意思憾赁,顧名思義,標(biāo)簽是為了標(biāo)記某種事物琼掠。tag是Git 版本庫 的一個快照钧惧,指向某個commit的指針酱床。 |
|
對比 | tag對應(yīng)某次commit,是一個點,是不可移動的襟铭。 不改動只查看用 tag薄货。 |
branch對應(yīng)一系列commit扼劈,是很多點連成的一根線,有一個HEAD 指針菲驴,是可以依靠 HEAD 指針移動的荐吵。 改動代碼用 branch |
適用場景 | ||
好處 | tag 的存在,是因為我們需要這種標(biāo)記的功能赊瞬。目前的項目開發(fā)中先煎,當(dāng)發(fā)布版本時 tag 就派上用場了。例如 v1.0.1巧涧,v1.0.2… 另外薯蝎,git 提供了 tag 的增刪改查一系列操作,在 tag 的使用上谤绳,可謂非常之方便占锯。 | |
常用命令 |
git tag <tagName> # 創(chuàng)建本地tag git push origin <tagName> # 推送到遠程倉庫
|
tag 和 branch 的相互配合使用,有時候起到非常方便的效果缩筛,例如 已經(jīng)發(fā)布了 v1.0 v2.0 v3.0 三個版本消略,這個時候,我突然想不改現(xiàn)有代碼的前提下瞎抛,在 v2.0 的基礎(chǔ)上加個新功能艺演,作為 v4.0 發(fā)布。就可以 檢出 v2.0 的代碼作為一個 branch ,然后作為開發(fā)分支胎撤。