2013-02-05 10 views
7

के साथ समाप्त होने वाले प्रेत टैग '^ {}' के साथ समाप्त होने वाले टैग क्या हैं? वे वास्तव में नंगे भंडार में मौजूद नहीं हैं।एलएस-रिमोट रिपोर्ट्स "^ {}"

$ git ls-remote -t origin 
55f09717db93733b8f151763e7e28628f3f22129  refs/tags/Init 
dce13158fff0e95b8adcc5628f193a8c03bada9c  refs/tags/Init^{} 
2c9f64c306aa76e5b689bc2ffb41163aa255ac40  refs/tags/kaos-red 
0970feca84d87df60ec5e943da2f55f1947fd0a3  refs/tags/legacy 
dce13158fff0e95b8adcc5628f193a8c03bada9c  refs/tags/legacy^{} 

जब मैं के साथ उन्हें नष्ट करने की कोशिश "Git धक्का: विरासत^{}" उदाहरण के लिए, Git प्रतिक्रिया करता

fatal: remote part of refspec is not a valid name in :Init^{} 

तो वे कहाँ से आ रहे हैं? क्या यह एलएस-रिमोट में एक बग है?

+0

डुप [^ {} का अर्थ गिट में क्या है?] (Http://stackoverflow.com/questions/12938972/what-does-mean-in-git) – johnny

उत्तर

7

git rev-parse manual विभिन्न तरीकों का वर्णन करता है जो आप गिट में या अन्य वस्तुओं को निर्दिष्ट कर सकते हैं। इस मामले के लिए यह कहता है:

^{}, उदा। v0.99.8^{} एक प्रत्यय^एक खाली ब्रेस जोड़ी के बाद का मतलब है कि ऑब्जेक्ट एक टैग हो सकता है, और गैर-टैग ऑब्जेक्ट मिलने तक टैग को रिकर्सिव रूप से खराब कर देता है।

+0

पहले से ही देखा गया है। धन्यवाद! –

2

मैं अपने दूरस्थ Git भंडार में टैग हटाना थोक करना चाहता था, कुछ परिणाम दस्तावेजों मैं गूगल से मिला है, मैं

git ls-remote --tag | awk '/(.*)(\s+)(.*)/ {print ":" $2}' | xargs git push origin 

या ऐसा ही कुछ की तरह आदेश मिल गया। (एक ही समस्या यह साथ समाप्त प्रेत टैग दिखाएगा^{})

तुम मुझे पसंद एक ही बात करना चाहता हूँ, तो आप Git आदेश शो-रेफरी

git show-ref --tag | awk '/(.*)(\s+)(.*)/ {print ":" $2}' | xargs git push origin 

उपयोग करने के लिए कोशिश कर सकते हैं बाद में, आपको इस समस्या से अवरुद्ध नहीं किया जाएगा।

संबंधित मुद्दे