2017-10-16 116 views
0

簡而言之,是否有可能擁有一個存儲庫的一個分支並將其標記爲1.0.0,然後在另一分支上使用標記1.1.0分支(在該標記之前或之後)分支?是否有可能在git中的多個分支上有版本標籤?

如果我指定1.1.0並且它位於主設備旁邊的不同分支上,composer如何對此作出反應?

如果我將分支與1.0.0合併到1.1.0的分支中,會發生什麼?

回答

0

標籤不像git中的分支一樣工作。將標籤想象爲標記特定的提交,以便以後可以輕鬆引用它。無論你在哪裏指定一個提交散列,你都可以使用標籤名稱。如果你簽出一個標籤,Git會顯示一個警告,你不能創建任何新的提交,直到你先檢查了一個分支)。如果您想根據標籤進行一些更改,則需要先創建一個分支。

例如,如果有一個名爲該版本發佈時創建1.0.0標籤,從那時起master有下一個版本的其他提交,你要修復在1.0,你可以做以下的錯誤:

git checkout -b bug-fixes 1.0.0 
...fix bugs... 
git commit -a -m "fixed bugs in the release" 

在這一點上,bug-fixes分部設關1.0.0標籤(你的程序的第一個版本),並在其附加的錯誤修復。

+0

實際上,標籤名* do *的工作方式與Git中的分支名稱很相似。這裏的問題是分支名稱*也只*指向一個特定的提交;但是分支名稱會隨着時間的推移而改變*一個特定的提交,而標籤名稱不應該這樣做,並且用戶希望查看來自分支名稱的多個提交。另外,當你簽出一個標籤時,你會進入「分離HEAD」模式,*可以*做出新的提交,這可能是Git不應該默認允許的,因爲人們用這種方式自己拍攝。 :-)但是你的答案中的想法是正確的;它只是所有這些凌亂的細節,好吧,有點混亂... – torek

+0

(PS:我不知道誰downvoted - 這不是我。) – torek

+1

是的,這是我。 – jthill

相關問題