2012-11-26 22 views
6

में गणना गणना गिनती करें क्या कोई यह बता सकता है कि गिट वर्णन "गिट लॉग टैग.इनपुट द्वारा दिखाए जाने वाले कामों की संख्या" के रूप में गिनती का उपयोग क्यों करता है [git-describe(1) से]?गिट-वर्णन

संकल्पनात्मक रूप से मैंने सोचा था कि गिट-वर्णन ने एक monotonically बढ़ते काउंटर के रूप में टैग के बाद से काम की संख्या का उपयोग किया था। हालांकि, ऐसा लगता है कि यह वास्तव में 'टैग' से पहुंचने वाले 'इनपुट' से पहुंचने योग्य कामों की संख्या का उपयोग करता है। ऐसा क्यों है?

इस विशेष मामले में, मैंने एक रिलीज टैग ("1.0.0") और फिर एक शाखा ("1.0") पर एक पैच रिलीज ("1.0.1") बनाया है। मैंने विलय कर लिया है [देखें http://www.kernel.org/pub/software/scm/git/docs/gitworkflows.html] शाखा मास्टर में बदल जाती है। फिर भी जब मैं मास्टर पर एक और हालिया प्रतिबद्धता का वर्णन करता हूं तो गणना गिट लॉग tag..input के आउटपुट से मेल खाती है। मुझे उम्मीद है कि यह गिट लॉग --ancestry-path tag..input से मेल खाएगा।

धन्यवाद।

+1

मेरा मानना ​​है कि 'गिट वर्णन - पूर्व-माता-पिता' जो आप चाहते हैं वह करना चाहिए। – ctn

उत्तर

1

git describeHEAD को सार्थक तरीके से संवाद करने का एक तरीका है। यह सवाल का एक सरल जवाब है "इतिहास में मैं कहां हूं?" या "कोड का कौन सा संस्करण यह है?"

इसलिए, जब आप यह आदेश चला जहां आप वर्तमान हैं शुरू होता है, कि master की नोक, कुछ अन्य टैग, या सिर्फ एक यादृच्छिक प्रतिबद्ध है या नहीं। इस शुरुआती बिंदु से यह तब तक काम करता है जब तक कि यह टैग न मिल जाए। वहां से यह टैग मुद्रित करेगा, गिनती की संख्या, फिर छोटी प्रतिबद्ध संख्या।