मैं दूरस्थ डेस्कटॉप को किसी दिए गए मशीन में चला सकता हूं और प्रमाणीकरण जानकारी दिए बिना svn चला सकता हूं, और यह काम करता है; मेरा एडी प्रमाणीकरण मुझे इच्छित भंडार तक पहुंचने की अनुमति देता है।पावरहेल, एसवीएन, और प्रमाणीकरण
मैं मशीन से कनेक्ट करने और svn कमांड निष्पादित करने के लिए पावरहेल का उपयोग कर सकता हूं। हालांकि, जब मैं करता हूं, तो मुझे "वर्जित वर्जित" मिलता है। [Environment]::UserName
उपयोगकर्ता द्वारा अपेक्षित उपयोगकर्ता नाम (मेरा विज्ञापन उपयोगकर्ता नाम) के साथ प्रकट होता है जब दूरस्थ रूप से निष्पादित किया जा रहा स्क्रिप्ट से चलाया जाता है।
मुझे यह काम करने के लिए क्या याद आ रही है?
कुछ कोड:
Param(
[string]$branchURL
)
की तरह कॉल की एक श्रृंखला:
If(Test-Path "C:\webfiles\repositoryname") {
Write-Host "Switching repositoryname"
SwitchRepo "repositoryname" ($branchURL) "C:\webfiles\repositoryname";
}
जो फोन:
$Session = New-PSSession -ComputerName $computerName;
if (-Not ($Session)) {
Write-Host "Did not create session!";
Return;
}
Invoke-Command -Session $Session -FilePath 'switchAllRepositories.ps1' -ArgumentList $branchName;
Remove-PSSession $Session;
और switchAllRepositories में, मैं एक पैरामीटर
Function SwitchRepo ($repoName, $branchPath, $workingCopy)
{
$to = ("https://[url]/svn/" + $repoName + $branchPath);
Write-Host "to $to";
#debug
$user = [Environment]::UserName
Write-Host "as $user";
$exe = "C:\Program Files\TortoiseSVN\bin\svn.exe";
&$exe switch "$to" "$WorkingCopy" --username [redacted] --password [redacted] --no-auth-cache --non-interactive --trust-server-cert
if ($process.ExitCode -ne 0) {
#$wshell = New-Object -ComObject Wscript.Shell
#$wshell.Popup("Error switching " + $repoName,0,"Done",0x1)
Write-Host "Error detected!"
}
}
सटीक त्रुटि है:
SVN: E175013: यूआरएल पर भंडार से जुड़ने में असमर्थ '[कतरना]' + CategoryInfo: NotSpecified: (SVN: E175013: यू ... आसान बनाता है/20150620 ': स्ट्रिंग) [], RemoteException + FullyQualifiedErrorId: NativeCommandError SVN: E175013: तक पहुंच' [कतरना] 'मना
आप कैसे कनेक्ट पर निर्भर करता है। –
@ MathiasR.Jessen आपको क्या जानने की आवश्यकता है? मैं एक दूरस्थ सत्र बना रहा हूं और सत्र का उपयोग कर एक स्क्रिप्ट का आह्वान कर रहा हूं। – Yamikuronue
'switchAllRepositories का हिस्सा दिखाएं।ps1' जहां यह पैरामीटर स्वीकार करता है (जब आप इसे 'Invoke-Command' के साथ कहते हैं तो आप एक शाखा नाम को तर्क के रूप में भेज रहे हैं), यह मुझे लगता है कि ps1 के शीर्ष पर एक param block होना चाहिए। – briantist