2011-07-25 37 views
2

如果我標記了我正在處理的提交,然後將更改推送到另一個回購,我知道我也可以推送標籤對象。我可以創建不被推送的標籤嗎?例如,輕量級標籤從不推動,但標籤對象總是?我可以擁有不是通過推送發送的私人git標籤嗎?

+0

當然,不問他們要推。你有什麼問題? –

+1

git標籤和推文檔沒有具體說明什麼是實現 - 我沒有發現明確的聲明,標籤是私人的,直到推--tags或--all完成。其他地方(http://stackoverflow.com/questions/787797/cannot-commit-a-git-tag)JakubNarębskimentinos說:「如果你在你的分支上創建新的提交,然後推送(所以有東西要傳輸), git應該檢測所有指向在遠程端推送後出現的提交的新標籤,並推送它們。「那是不正確的?我正在尋求有關標籤何時傳輸或未傳輸的明確信息。 –

+0

@Vincent Scheib - 看看我的答案,也是http://stackoverflow.com/questions/2988088/do-git-tags-get-pushed-as-well你引用的同一個人說的是不同的東西。 – manojlds

回答

4

標籤在.git/refs/tags/和任何下創建.git/refs可以潛在推,根據您加推或其他命令的參數。雖然如此,

默認情況下,git push命令不會將標記傳輸到遠程 服務器。創建完成後,您必須將標籤顯式推送到共享服務器 。

http://progit.org/book/ch2-6.html

按@Vincent沙伊布的評論詢問有關另一個問題的引述如下評論:

「如果你在你的分支創建新的提交,然後推(所以有東西傳輸),git應該檢測所有指向在遠端推送後出現的提交的新標籤,並推送它們。「

這是無效的。雖然在提取時適用,但錯誤地認爲適用於推送。

+1

Thx,由於混合信號通過實驗驗證:除非明確命名,否則不會推送標籤(任何類型)。從其他Q開始,「git push tag 」和「git push - 標籤」是明確的選項。 –

0

請勿使用git push --allgit push --tags。當你創建一個公共標籤,使用命令:

git push origin TAG_NAME 
相關問題