2012-12-03 41 views
6

मैं केवल पावरहेल के साथ एक पथ देखना चाहता हूं और टीम फाउंडेशन सर्वर पर एक मिनट बाद इस पथ में भी जांचना चाहता हूं।शक्तियों के साथ टीएफएस 2010 से चेक-आउट फाइल

मैं यह कैसे कर सकता हूं?

मैंने अपने सर्वर पर tfs पावर टूल्स इंस्टॉल किए हैं।

उत्तर

9

आपको बिजली उपकरण की आवश्यकता नहीं है। बस टीएफएस टीम एक्सप्लोरर के साथ विजुअल स्टूडियो के साथ आता है जो tf.exe कमांड लाइन उपयोग का उपयोग करें। चेक करने के लिए tf edit <file> /noprompt और tf checkin <file> /comment:$comment /noprompt चेक इन करने के लिए। अधिक जानकारी tf /? और tf checkin /? के लिए tf.exe पर कमांड लाइन उपयोग देखें। आपको tf.exe के पथ के साथ अपने PowerShell सत्र को कॉन्फ़िगर करने की आवश्यकता होगी। यह आमतौर पर वीएस वर्स बैच फाइलों द्वारा किया जाता है। लेकिन आपको बस इस तरह के पथ में जोड़ने में सक्षम होना चाहिए: $PATH += "${VS110COMNTOOLS}..\Ide"

2

यदि आपके पास पावरहेल के लिए पावर टूल कमांडलेट स्थापित हैं। आपको Kieth उल्लेखों जैसे पथ की आवश्यकता नहीं है, कमांडलेट का हिस्सा पूर्ण tf.exe पथ के लिए tf उपनाम करता है। तो, बस tf.exe कमांड लाइन संदर्भ here का उपयोग करें और इन सभी को काम करना चाहिए यदि आपके पास पावरहेल कमांडलेट सही तरीके से स्थापित हैं।

आप सुनिश्चित करें कि आपके powershell उन्हें इस आदेश का उपयोग हालांकि

Add-PSSnapin Microsoft.TeamFoundation.PowerShell 
+0

ध्यान रखें कि, आखिरी बार मैंने जांच की, टीएफपीटी cmdlets केवल 32-बिट पावरशेल में काम किया। Tf.exe दृष्टिकोण 32-बिट और 64-बिट PowerShell दोनों में काम करता है। :-) –

+0

@ किथहिल सबसे हालिया अपडेट (2012 अपडेट 1 के साथ काम करता है) अब 64 बिट समर्थन है - http://blogs.msdn.com/b/bharry/archive/2012/11/30/new-power-tools- अद्यतन-1-उपलब्ध हैं .aspx – Betty

+0

कीथ, मैं योरो अंक समझता हूं, और यही वह तरीका है जो मैं भी करता हूं। लेकिन, सवाल यह है कि, Powertools शक्तियों के साथ इसे कैसे करें। – Alex

2

यह मेरा समाधान है द्वारा स्थापित किया गया है बनाना चाहिए:

$tf = &"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\tf.exe"  checkout C:\setup\folder /recursive 
$tf | Out-null 
+0

x86 बनाम x64 के बारे में क्या है? http://geekswithblogs.net/Lance/archive/2009/12/29/program-files-environment-variable-in-powershell.aspx – Kiquenet

+0

@ किकनेट, मेरा मानना ​​है कि विजुअल स्टूडियो अभी भी 32-बिट है। –

5

यहाँ एक समारोह जो यदि स्नैप-इन में है देखने के लिए जाँच करेगा स्थापित। आप PowerTools स्थापित किया है, यह का उपयोग करता है, अन्यथा, यह कमांड लाइन टूल tf.exe

function checkout-file([string] $file) 
{ 
    "Checking out $file" 
    if ((Get-PSSnapin -Name Microsoft.TeamFoundation.PowerShell -ErrorAction SilentlyContinue) -eq $null) 
    { 
     Add-PsSnapin Microsoft.TeamFoundation.PowerShell -ErrorAction SilentlyContinue 

     if ((Get-PSSnapin -Name Microsoft.TeamFoundation.PowerShell -ErrorAction SilentlyContinue) -eq $null) 
     { 
      #try to check out the code using command line tf.exe 
      &"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\TF.exe" checkout $file | Out-Null 
     } 
     else{ 
      #checkout the file using snapin 
      Add-TfsPendingChange -Edit $file | Out-Null 
     } 
    }else{ 
     #checkout the file using snapin 
     Add-TfsPendingChange -Edit $file | Out-Null 
    } 
} 
+1

यह एक आकर्षण की तरह काम किया। मुझे केवल मिलान करने के लिए दृश्य स्टूडियो संस्करण को बदलना पड़ा। अगर यह $ {VS ### COMNTOOLS} के माध्यम से उतरते क्रम में चलेगा तो यह अच्छा होगा। – Benrobot

+0

@ बेनोबोट - मैंने इसे एक साथ वास्तव में जल्दी फेंक दिया, लेकिन आप इसे आजमा सकते हैं। '$ cmntools = Get-ChildItem -Path 'Env: \ VS * COMNTOOLS' | सॉर्ट-ऑब्जेक्ट -प्रोपर्टी 'नाम' - डिस्काउंटिंग | % {($ _। Value.replace ('\ Tools \', '\ IDE \ TF.exe'))} ' – Jim

0

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

tf.exe undo AssemblyInfo* /recursive 
    tf.exe checkout AssemblyInfo* /recursive 
    #changes files 
    tf.exe checkin AssemblyInfo* /recursive