我在尝试从Windows服务器上的私人存储库添加github资料时遇到了问题。
我见过很多人建议如何添加ssh密钥以及基于unix的系统。没有找到任何与Windows服务器相关的内容。
我正在使用Go最新版本并安装了Go Server&安装了git的Windows Server 2008上的代理。
我可以使用Git Bash连接到私人仓库。
每当我尝试添加材料时,它都会一直说检查连接,看起来它永远存在。
如果我使用基本身份验证,它可以正常工作,但我希望在不将我的密码暴露在URL中的情况下使其工作。
有办法吗?
答案 0 :(得分:0)
如果您在默认本地系统帐户下运行Go,则可以按照http://opensourcetester.co.uk/2013/06/28/jenkins-windows-ssh/中的建议设置本地系统帐户的ssh密钥。
如果您在域帐户(而不是默认的本地系统帐户)下运行Go Server,请检查您是否已将ssh密钥上载到服务器计算机上的%USERPROFILE%/。ssh /文件夹,%USERPROFILE%是HOME文件夹对于域用户。设置完成后,Go服务器就可以选择所需的密钥。这同样适用于代理机器。您知道,Go不会在内部调用Git-bash来运行git命令,因此在Go中运行git时,bash上的任何设置都不会生效。
答案 1 :(得分:0)
如果您使用Windows机器托管GoCD服务器和代理,则它不能在普通用户帐户下运行,而可以在“本地系统帐户”下运行
因此,即使您可以从git bash(以当前用户身份登录)访问git repo,GOCD也无法访问它。
因此,您需要从当前用户添加本地系统帐户的SSH密钥。
1。首先找到本地系统帐户的主目录(它将不位于C:/ Users下)
2。使用任何远程管理工具查找主目录-如果使用http://download.sysinternals.com/files/PSTools.zip
a)解压缩并以管理员身份运行命令行
b)PsExec.exe -i -s cmd.exe-启动工具
c)运行echo%userprofile%以获得主目录(例如:C:\ Windows \ system32 \ config \ systemprofile)
3。现在,您可以从当前用户复制SSH密钥文件,也可以使用ssh命令创建一个新文件。
在创建/复制SSH密钥后尝试检查连接,它将显示连接成功!