【问题标题】:Dependencies from private bitbucket repo don't restore来自私有 bitbucket 存储库的依赖项不会恢复
【发布时间】:2015-07-25 13:13:36
【问题描述】:

我有一个 asp.net MVC 5 项目,我已设置它与 bower、grunt 和 npm 一起使用,它们在 Visual Studio 2013 中工作得非常好。尝试在 Visual Studio 2015 (RTM) 中加载相同的项目后,我我发现当 VS 2015 尝试恢复对负载的凉亭依赖时,它没有完成。

通过消除我的 bower.json 依赖项的过程,我发现基于公共 github 的依赖项工作得非常好,例如

"zip.js": "git://github.com/gildaslormeau/zip.js.git#1bead0a3bb9d2e50ea34094bbfe9bb6a2196939a"

但是,当我在 bower.json 依赖项中使用诸如 git@bitbucket.org:{owner}/{repo}.git#1.0.0 之类的 url 包含私有 bitbucket 存储库时,问题就会再次出现。通过控制台使用这些私有存储库运行 git 命令可以正常工作。

任何帮助将不胜感激!

更新

问题似乎与 Visual Studio 2015 未加载相关 SSH 密钥有关。在 posh-git 控制台中运行“bower install ./bower.json”可以工作。不知道如何让 Visual Studio 2015 使用我的 SSH 密钥!

【问题讨论】:

  • Bower 是否在安装失败时提供任何错误消息?这些将显示在 Visual Studio 的输出窗口中。 (您可能需要将“显示输出:”切换为“Bower/NPM”。)输出窗口还将显示 VS 尝试执行的完整 Bower 命令,因此您可以在 VS 之外的控制台窗口中尝试。这也可能提供更多信息。
  • 没有错误,只是在恢复依赖项时卡住了。我尝试了完整的 bower 命令,如下所示:“C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Web Tools\External> .\bower.cmd install ...”它可以工作正如预期的那样。

标签: asp.net-mvc visual-studio bitbucket bower visual-studio-2015


【解决方案1】:

如果问题是 SSH 密钥,Bower 可能会阻止并等待您输入密码,但 VS 无法响应提示。这可以解释为什么它在恢复时卡住了。

按照https://confluence.atlassian.com/display/BITBUCKET/Set+up+SSH+for+Git 的说明,我能够重现该问题,使用 SSH 设置一个 bitbucket 帐户进行登录,并配置 Git Bash 以在启动时连接到它。 Bower 命令将在 Git Bash 中运行,但在 Visual Studio 中则不行。

然后,我可以通过从 Git Bash 提示符启动 Visual Studio 来解决该问题。这似乎将 Visual Studio 置于已配置为使用 shell 启动时输入的密码的环境中,因此 Bower 不需要提示它。

在这种情况下,我对 repo 路径使用了以下格式:

"{package-name}": "git@bitbucket.org:{user}/{repo}.git#1.0.0"

【讨论】:

    【解决方案2】:

    您可以为私有 bitbucket repro 尝试这种语法吗?我们在内部尝试过,成功了:

    "{packageName}": "https://{owner}@bitbucket.org/{owner}/{repo}.git#{version}"
    

    【讨论】:

    • 不幸的是,同样的问题仍然存在! :(
    猜你喜欢
    • 2017-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-07
    • 2012-04-03
    • 2018-03-19
    • 2019-11-19
    相关资源
    最近更新 更多