दिलचस्प पोस्ट
सी # अग्रवाल वक्तव्य में परिवर्तन चरणीय केवल-पढ़ने के लिए क्यों है? मैं स्ट्रिंग में एक बैकस्लैश (\) कैसे लिखूं? विकास और उत्पादन वातावरण में विभिन्न Web.config का उपयोग करना कैसे हैशोड () और पहचान HashCode () पीछे के अंत में काम करते हैं? स्विफ्ट 4 में #selector () के साथ @objc निष्कर्ष बहिष्कार के साथ मैं कैसे निपट सकता हूं? जावास्क्रिप्ट में बायनरी डेटा को पढ़ने का कोई तरीका है? त्रुटि को कैसे ठीक करें: स्कीमा बनाकर "विशेषता / तत्व के लिए स्कीमा जानकारी नहीं मिली" Android – R को एक चर के लिए हल नहीं किया जा सकता कैसे एक MVC आवेदन में डेटा कैश करने के लिए मुझे jquery मोबाइल में index.html को सारी स्क्रिप्ट क्यों डालनी है क्या यह C ++ 11 regex त्रुटि मुझे या कंपाइलर है? प्रोग्रामिंग WCF app.config समापन बिंदु पता सेटिंग को कैसे संशोधित करें? सीजीपीएटी के सीजीपॉइंट (एस) को कैसे प्राप्त करें mysql संग्रहीत कार्यविधि जो स्वयं को फिर से कॉल करती है JQuery में एक मोबाइल डिवाइस का पता लगाने का सबसे अच्छा तरीका क्या है?

फाइलों में खोजें: टीम फाउंडेशन सर्वर में सभी कोड खोजें

विशिष्ट फ़ाइल या रीजक्स के लिए TFS में हर फाइल का नवीनतम संस्करण खोज करने का कोई तरीका है? यह संभवत: केवल दृश्य स्रोत सुरक्षित से याद आती है …

वर्तमान में मैं पूरे कोडबेस पर एक गेट अॉॉलेशन का उपयोग करता हूं और Windows खोज का उपयोग करता हूं, लेकिन 75,000 फाइलों में 1 जीबी से ज्यादा के कोड के साथ यह काफी दर्दनाक होता है।

संपादित करें : पावर टूल्स का उल्लेख किया गया है, लेकिन "वाइल्डकार्ड खोज" विकल्प केवल फ़ाइल नामों और सामग्री को नहीं खोजता है।

अद्यतनः हमने मौजूदा मॉस (सर्च सर्वर) इंस्टॉलेशन में एक कस्टमाइज़्ड सर्च विकल्प को लागू किया है।

वेब के समाधान से एकत्रित समाधान "फाइलों में खोजें: टीम फाउंडेशन सर्वर में सभी कोड खोजें"

टीम फाउंडेशन सर्वर 2015 (ऑन-प्रिमाइसेस) और विज़ुअल स्टूडियो टीम सर्विसेज (क्लाउड वर्जन) में आपके सभी कोड और काम के आइटम में खोज के लिए अंतर्निहित समर्थन शामिल है।

आप foo जैसे सरल स्ट्रिंग खोजों को कर सकते हैं, foo OR bar या अधिक जटिल भाषा-विशिष्ट चीजें जैसे class:WebRequest

कोड खोज फिल्टर वाक्यविन्यास का स्क्रीनशॉट

आप इसके बारे में यहां अधिक पढ़ सकते हैं: https://www.visualstudio.com/en-us/docs/search/overview

यदि आप टीएफएस 2008 पावर टूल्स स्थापित करते हैं तो आपको टीम एक्सप्लोरर में क्लिक करें "स्रोत में खोजें" कार्रवाई मिलेगी।

TFS2008 विद्युत उपकरण

एक और वैकल्पिक समाधान है, जो अधिक आकर्षक लगता है

  1. एक सर्च सर्वर सेटअप करें – कोई भी विंडोज़ मशीन / सर्वर हो सकता है
  2. प्रत्येक चेकइन होने पर फ़ाइलों को प्राप्त करने, हटाने, अपडेट करने के लिए एक टीएफएस अधिसूचना सेवा * (बिस्साब्किब) सेटअप करें। इसलिए यह एक वेब सेवा है जो TFS सर्वर पर एक श्रोता की तरह कार्य करती है, और खोज सर्वर पर फ़ाइलें और फ़ोल्डर्स अपडेट / समन्वयित करती है। – यह सटीकता (लाइव खोज) में नाटकीय रूप से सुधार करेगा, और आवधिक रूप से बनने के एक-बार लोड से बचें
  3. रूट फ़ोल्डर के लिए खोज सर्वर पर एक अनुक्रमण सेवा / विंडो अनुक्रमित खोज सेटअप करें
  4. खोज परिणामों को वापस करने के लिए एक वेब सेवा का पर्दाफाश करें

अब उपरोक्त सभी सेटअप के साथ, आपके पास ग्राहक के लिए कुछ विकल्प हैं:

  1. वेब पेज को सर्च सर्विस कॉल करने के लिए सेट करें और वेबपेज पर दिखाने के लिए परिणामों को फॉर्मेट करें – आप विज़ुअल स्टूडियो के भीतर भी इस वेबपेज को एकीकृत कर सकते हैं (मैक्रो या ऐड-इन के माध्यम से)
  2. खोज सेवा को कॉल करने के लिए एक विंडो क्लाइंट इंटरफ़ेस (विन्फॉर्म्स / डब्लूपीएफ) बनाएं और परिणाम को स्वरूपित करें और उन्हें यूआई पर दिखाएं – आप विजुअल स्टूडियो के अंदर वीएसपीएक्जेज या ऐड-इन

अद्यतन : मैं इस मार्ग पर गया था, और यह अच्छी तरह से काम कर रहा है बस इस में जोड़ना चाहता था।

संदर्भ लिंक:

  1. Bissubscribe.exe के बजाय इस उपकरण का उपयोग करें
  2. टीएफएस की घटनाओं को संभालना
  3. टीम सिस्टम नोटिफिकेशन

मेरे मामले में, सी # में एक छोटी सुविधा लिखने में मदद मिली जिन लिंक से मुझे मदद मिली – http://pascallaurin42.blogspot.com/2012/05/tfs-queries-searching-in-all-files-of.html

टीएफएस एपीआई का उपयोग करके टीम प्रोजेक्ट की फाइल कैसे सूचीबद्ध करें?

 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.TeamFoundation.Client; using Microsoft.TeamFoundation.VersionControl.Client; using Microsoft.TeamFoundation.Framework.Client; using System.IO; namespace TFSSearch { class Program { static string[] textPatterns = new[] { "void main(", "exception", "RegisterScript" }; //Text to search static string[] filePatterns = new[] { "*.cs", "*.xml", "*.config", "*.asp", "*.aspx", "*.js", "*.htm", "*.html", "*.vb", "*.asax", "*.ashx", "*.asmx", "*.ascx", "*.master", "*.svc"}; //file extensions static void Main(string[] args) { try { var tfs = TfsTeamProjectCollectionFactory .GetTeamProjectCollection(new Uri("http://{tfsserver}:8080/tfs")); tfs.EnsureAuthenticated(); var versionControl = tfs.GetService<VersionControlServer>(); StreamWriter outputFile = new StreamWriter(@"C:\Find.txt"); var allProjs = versionControl.GetAllTeamProjects(true); foreach (var teamProj in allProjs) { foreach (var filePattern in filePatterns) { var items = versionControl.GetItems(teamProj.ServerItem + "/" + filePattern, RecursionType.Full).Items .Where(i => !i.ServerItem.Contains("_ReSharper")); //skipping resharper stuff foreach (var item in items) { List<string> lines = SearchInFile(item); if (lines.Count > 0) { outputFile.WriteLine("FILE:" + item.ServerItem); outputFile.WriteLine(lines.Count.ToString() + " occurence(s) found."); outputFile.WriteLine(); } foreach (string line in lines) { outputFile.WriteLine(line); } if (lines.Count > 0) { outputFile.WriteLine(); } } } outputFile.Flush(); } } catch (Exception e) { string ex = e.Message; Console.WriteLine("!!EXCEPTION: " + e.Message); Console.WriteLine("Continuing... "); } Console.WriteLine("========"); Console.Read(); } // Define other methods and classes here private static List<string> SearchInFile(Item file) { var result = new List<string>(); try { var stream = new StreamReader(file.DownloadFile(), Encoding.Default); var line = stream.ReadLine(); var lineIndex = 0; while (!stream.EndOfStream) { if (textPatterns.Any(p => line.IndexOf(p, StringComparison.OrdinalIgnoreCase) >= 0)) result.Add("=== Line " + lineIndex + ": " + line.Trim()); line = stream.ReadLine(); lineIndex++; } } catch (Exception e) { string ex = e.Message; Console.WriteLine("!!EXCEPTION: " + e.Message); Console.WriteLine("Continuing... "); } return result; } } } 

हमने टीम फाउंडेशन सर्वर सोर्स कंट्रोल के लिए एक समाधान स्थापित किया है (जैसा कि आपने उल्लेख नहीं किया है SourceSafe) अनुदान के सुझाव के समान; निर्धारित TF प्राप्त करें, सर्वर एक्सप्रेस खोजें हालांकि IFilter सी # फ़ाइलों (पाठ) के लिए इस्तेमाल किया परिणाम नहीं दे रहा था हम चाहते थे, इसलिए हम स्रोत फ़ाइलों को .htm फ़ाइलों में परिवर्तित। अब हम फाइलों में अतिरिक्त मेटा-डेटा जोड़ सकते हैं जैसे कि:

  • लेखक (हम इसे उस व्यक्ति के रूप में परिभाषित करते हैं जिसे फ़ाइल में अंतिम बार जाँच की गई थी)
  • रंग कोडिंग (हमारे todo- सूची पर)
  • संभावित डिजाइन समस्याओं (हमारे todo- सूची पर) को इंगित करने वाले परिवर्तनों की संख्या
  • कोडर्स स्मार्ट खोज सुविधा जैसी VSTS आईडीई के साथ एकीकृत करें
  • आदि।

हालांकि हम टीएफएस सोर्स कंट्रोल के लिए एक प्रोटोकॉललर और एक और अधिक लक्षित समाधान के लिए एक समर्पित स्रोत कोड आईफिल्टर पसंद करेंगे।

ठीक है,

  1. TFS2008 पावर टूल्स के पास फ़े-इन-फाइल्स फ़ंक्शन नहीं है। "स्रोत नियंत्रण टूल में ढूँढें आइटम की स्थिति में या वाइल्डकार्ड अभिव्यक्ति द्वारा स्रोत नियंत्रण में फ़ाइलों और फ़ोल्डरों को ढूंढने की क्षमता प्रदान करता है।"

  2. CodePlex पर पोस्ट की गई इस सुविधा के साथ एक विंडोज़ कार्यक्रम है। मैं बस इसे स्थापित और परीक्षण किया और यह अच्छी तरह से काम करता है

यह अब Code Search प्लगइन का उपयोग कर TFS 2015 के रूप में संभव है। https://marketplace.visualstudio.com/items?itemName=ms.vss-code-search

खोज वेब इंटरफ़ेस के माध्यम से किया जाता है, और यह आपको अपने स्थानीय मशीन में कोड डाउनलोड करने की आवश्यकता नहीं है जो कि अच्छा है।

एक अन्य समाधान "ctrl + shift + f" का उपयोग करना है आप समाधान या प्रोजेक्ट की बजाय एक स्थानीय निर्देशिका में खोज स्थान बदल सकते हैं। यह सिर्फ डेस्कटॉप खोज की जगह लेगा और आपको अभी भी नवीनतम कोड प्राप्त करने की आवश्यकता होगी, लेकिन यह आपको विज़ुअल स्टूडियो में अपने खोज के लिए रहने की अनुमति देगा।

यह ऐड-इन दावों का कार्य है जो मुझे विश्वास है कि आप चाहते हैं:

टीम फाउंडेशन साइडकिक्स

वर्तमान में बॉक्स से ऐसा करने का कोई तरीका नहीं है, लेकिन इसमें एक यूजर वॉयस कमेंट शामिल करने के लिए है: http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2037649-implement-indexed- पूर्ण-पाठ-खोज-की-काम-आइटम

हालांकि मुझे संदेह है कि यह स्विच के रूप में सरल है, अगर कोई भी इस प्रश्न को देखने के लिए मतदान करता है, तो एमएस संभवत: कुछ को लागू करेगा

अपडेट: बस ब्रायन हैरी के ब्लॉग को पढ़िए, जो इस रडार पर होने के रूप में इस अनुरोध को दिखाता है, और विज़ुअल स्टूडियो के ऑनलाइन संस्करण को खोज के लिए सीमित समर्थन है जहां git को vcs के रूप में उपयोग किया जाता है: http://blogs.msdn.com/b/ विज़ुअल स्टूडियो-ऑनलाइन-कोड-सर्च । एस्पक्स Visualstudioalm / archive / 2015/02/13 / घोषणा-सीमित-पूर्वावलोकन-के लिए । इससे मुझे लगता है कि यह कहना सही है कि यह सिर्फ समय की बात है …

फ़ाइल लिंक के लिए यह खोज बताती है कि एक फाइल कैसे ढूंढनी है मुझे काम करने के लिए सलाह के साथ घूमना पड़ता था।

  1. सीडी "सी: \ प्रोग्राम फ़ाइलें (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE"
  2. टीएफ डीआईआर "$ / *। sql" / रिकर्सिव / सर्वर: http: // mytfsserver: 8080 / tfs

सीडी कमांड के मामले में, मैंने सीडी कमांड किया क्योंकि मैं tf.exe फ़ाइल की तलाश कर रहा था। यह पूरी तरह से उस निर्देशिका के छंदों से शुरू करना आसान था, जो पूरे पथ को जोड़ना था। अब जब मैं समझता हूं कि यह काम कैसे करें, तो मैं उद्धरण चिह्नों में पूर्ण पथ का उपयोग कर रहा हूं।

टीएफ खोज के मामले में, मैं $/ साथ सर्वर की जड़ से शुरू हुआ और मैंने sql अर्थात् *.sql साथ समाप्त होने वाली सभी फाइलों की खोज की। यदि आप रूट पर शुरू नहीं करना चाहते हैं, तो इसके बजाय "$/myproject/*.sql" उपयोग करें

ओह! यह प्रश्न के फ़ाइल भाग में खोज को हल नहीं करता है, लेकिन मेरी Google खोज मुझे अन्य लिंक्स के बीच फ़ाइलों को खोजने के लिए यहां लाती है।

मान लें कि आपके पास नोटपैड ++ है , एक अक्सर याद किया सुविधा 'फाइल में खोजें' है, जो बेहद तेज है और फ़िल्टर, नियमित अभिव्यक्ति, प्रतिस्थापित और सभी N ++ उपहार के साथ आता है।