1
A
回答
1
我還沒有找到一個允許獲得這個結果的命令,但是這個過程允許解決這個問題。請考慮ref_sha是您希望爲其查找引用它的遠程標記或其後代之一的提交的散列。
可以使用以下命令列出遙控器上的標籤。
git ls-remote --tags
輸出的每一行代表一個標籤。一行以指向對象的散列開始,後跟標記路徑。如果標籤指向一個帶註釋的標籤對象,則會添加第二行。標籤路徑後面跟着^ {},並且散列將是通過遞歸地解引用前一行的散列而獲得的對象的散列。
現在,我們需要取,因爲我們需要進行血統檢查。
git fetch
現在,對於第一步中列出的每個標籤,我們需要使用以下命令進行血統檢查。讓rem_sha爲標籤指向的哈希。如果標記指向一個標記對象,則可以使用該散列或遞歸解除引用的對象散列。如果您將註釋標籤對象的散列提供給該命令,則git將自動遞歸地解引用標籤。
git merge-base --is-ancestor <ref_sha> <rem_sha>
當這種返回0,則意味着rem_sha是ref_sha或其後代中的一個(等同於:ref_sha是rem_sha或其祖先)。
注意:我們不能簡單地在提取後檢查本地標籤,因爲可能存在尚未推送的本地標籤。
0
AFAIK沒有「遠程」標籤這樣的東西。也就是說,您不能區分只有本地的標籤和也可以存在於遠程的標籤。
相關問題
- 1. 如何獲得/列出/查看所有使用git(或gitk)提交的後代?
- 2. 如何在repo中列出所有文件及其提交SHA
- 3. 標記它提交的編號沒有標記或標記
- 4. 使用TortoiseGit刪除所有提交後的所有提交
- 5. 如何使用Ctags在vim中列出符號(標記)的所有引用?
- 6. 如何從GitHub API獲取提交的所有標記
- 7. 獲取兩個提交之間的所有標記列表
- 8. 提交後從選擇標記中檢索所有選項
- 9. AngularJS提出斜槓/散列標記後
- 10. 如何列出自特定GIT提交後不會更改的所有文件
- 11. 如何列出自上次顛覆標籤以來的所有提交?
- 12. 如何在<a>標記中使用javascript或jquery提交提交按鈕
- 13. 保護表單使用ajax提交:有或沒有csrf標記
- 14. 如何將所有其他列的列隨後分割或除以所有其他列的倍數?
- 15. 使用Eclipse/Mercurial時提交期間列出的所有未提交的文件
- 16. 所有提交列表SHA1_HASH
- 17. 如何列出所有DNS記錄?
- 18. 記錄所有請求提交的Django
- 19. 如何在所有瀏覽器中取出<object>標記(或其他替代)中的滾動條?
- 20. 如何完全替換master和其他所有提交的提交?
- 21. 如何標記滾動條中突出顯示的單詞的所有引用?
- 22. 提交後,我得到的所有$ _POST的undefined索引
- 23. 如何在drupal 7中的提交按鈕後放置標記?
- 24. 如何顯示分支無法訪問的所有標記的提交?
- 25. 如何在展會頁面列出屬於其他記錄的所有記錄?
- 26. 如何列出m標誌中的所有n長度代碼?
- 27. 使用libgit2列出分支中的所有提交
- 28. jQuery驗證:提交表單(ajax提交)後如何取消選中標記?
- 29. 如何找出當前提交的作者及其父提交?
- 30. 如何查詢列出用戶對Subversion存儲庫的所有提交?