2009-06-22 12 views
7

मेरे पास टीएफएस स्रोत नियंत्रण प्रणाली के तहत एक फ़ोल्डर है, आइए "$/मेरा प्रोजेक्ट/शाखाएं/देव" पथ के तहत कहें।टीएफएस से प्रोग्रामेटिक रूप से पूर्ण फ़ोल्डर इतिहास कैसे प्राप्त करें?

यह हाल ही में किसी अन्य स्थान से स्थानांतरित किया गया था, जो "$/मेरा प्रोजेक्ट/देव" था।

अब जब मैं वीएस में स्रोत नियंत्रण एक्सप्लोरर से अपने इतिहास का अनुरोध करता हूं तो मुझे पूरा इतिहास मिलता है, जहां वर्णित चाल ऑपरेशन केवल परिवर्तनों में से एक था।

लेकिन जब मैं टीएफएस एसडीके का उपयोग कर इतिहास प्राप्त करने का प्रयास करता हूं तो मुझे केवल फ़ोल्डर के कदम के साथ हालिया इतिहास शुरू होता है। मैं पूरा इतिहास कैसे प्राप्त कर सकता हूं?

TeamFoundationServer tfs = TeamFoundationServerFactory.GetServer(tfsServerURL); 
    VersionControlServer vcs = (VersionControlServer)tfs.GetService(typeof(VersionControlServer)); 

    // Null means All 
    VersionSpec versionFrom = null; 

    System.Collections.IEnumerable enumerable = vcs.QueryHistory(_tfsPath, 
      VersionSpec.Latest, 
      0, 
      RecursionType.Full, 
      "", 
      versionFrom, 
      VersionSpec.Latest, 
      Int32.MaxValue, 
      true, 
      true); 

उत्तर

14

आप slotMode = गुजर रहे हैं सच:

मैं निम्नलिखित कोड का उपयोग कर रहा हूँ। अंतिम पैरामीटर को गलत में बदलें।

"स्लॉट मोड" का अर्थ है "पथ द्वारा क्वेरी, इतिहास द्वारा नहीं।" यह उपयोगी है अगर आपको केवल किसी आइटम का पुराना नाम याद है, लेकिन जहां आपने इसे स्थानांतरित नहीं किया है, या यदि> 1 आइटम ने किसी दिए गए पथ पर कब्जा कर लिया है।

भविष्य के संदर्भ के लिए, यदि आप देखना चाहते हैं कि कौन से पैरामीटर वीएस (या tf.exe) सर्वर पर गुज़र रहे हैं तो आप उन्हें नकल कर सकते हैं, turn on tracing

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