使用 Github for Windows 通过 SSH 使用自己的私有 Git

Posted

技术标签:

【中文标题】使用 Github for Windows 通过 SSH 使用自己的私有 Git【英文标题】:Using Github for Windows to work with own private Git through SSH 【发布时间】:2012-06-25 07:10:44 【问题描述】:

现在,我正在使用 msysgit 来处理我自己的私有存储库,该存储库使用 SSH 存储在 ec2 亚马逊云服务器上。

到目前为止,我已经能够通过 Git Bash 成功连接到这些存储库(使用 ssh-keygen 创建 ssh-rsa 公钥和私钥,将公钥添加到远程机器上的 authorized_servers),所以我可以通过 CLI 进行克隆、推送、拉取、获取。

现在,我已经看到了 Windows 版 Github,我不得不说,它是一款非常漂亮的软件。由于它基于 msysgit,我想知道是否可以设置 Github for Windows 以通过 UI 连接、克隆和推送提交?

在描述中看起来是可能的,但文档似乎缺少有关该软件能够做什么的信息。

希望你能在这里帮助我,来自墨西哥的欢呼声。

【问题讨论】:

【参考方案1】:

这很奇怪,但唯一的解决方案是将存储库的 URL 拖放到 Windows 的 Github 中。然后它会询问你的用户名和密码,用于自定义 Git(私人、实验室或其他)......然后瞧。

【讨论】:

【参考方案2】:

迟到的答案,但这就是我在 Github for windows 上通过 SSH 使用 Gitlab.com 的方式。

    将来自 github_rsa.pub(位于 .ssh 文件夹中)的公共 ssh 密钥添加到 Gitlab.com 上的 SSH 密钥

    config 文件添加到您的 .ssh 文件夹中,如下所示

    Host gitlab.com
    RSAAuthentication yes
    IdentityFile ~/.ssh/github_rsa
    User mygitlabloginemail
    

    通过 Git Bash 克隆/拉取您的存储库

    将文件夹拖到 Github For Windows

就是这样,您现在可以将 Github for Windows 与您的 gitlab 存储库一起使用。

【讨论】:

截至 2017 年 1 月,RSAAuthentication 配置已弃用 pkg-ssh/openssh commit【参考方案3】:

由于 GitHub for Windows 也可以使用 https url,请注意,自 2013 年 8 月起,您还可以使用 OAuth 令牌进行身份验证。 见“Better password security in GitHub for Windows”

在此版本之前,应用程序会加密并存储您的密码。由于该应用程序还将自己注册为您的 Git 凭据提供程序,因此该应用程序会在需要时以明文形式向 Git.exe 提供您的凭据。

在此版本中,当您使用您的用户名和密码登录时,应用程序会在 GitHub.com 上将自己注册为 Authorized application,并接收它存储的 OAuth 令牌而不是您的密码。这类似于与 GitHub 集成的其他应用程序(例如 Travis-CI)的工作方式。

【讨论】:

【参考方案4】:

这里是您正在寻找的一个很好的书面记录。

编辑:我刚刚使用以下步骤进行了测试,它就像魅力一样!

   1. Click on repositories on the left.
   2. Pull your copy of the repo from the remote , using git-shell
   3. Drag and drop the Folder on to Git hub for windows dashboard.
   4. now double click on the repository dropped on to githubW. It should be listed as a local repository.
   5. it says login required to your non-github remote!

Credits

出于某种奇怪的原因,GutHub 并没有让使用非 GitHub 遥控器变得简单。 (正如你所说,they say that they support non-github remotes !)

【讨论】:

他们真的应该解决这个问题,因为恕我直言,这是一个非常重要的功能。它工作得很好,为了使它与 SSH 连接一起工作,我必须做的唯一调整是通过 ssh-add 添加我的私钥(虽然现在它不支持密码),它就像一个魅力。非常感谢:D! 当我按照这些步骤操作时,我没有收到输入用户名和密码的提示,因此无法同步。关于如何让它提示输入密码和用户名的任何建议?

以上是关于使用 Github for Windows 通过 SSH 使用自己的私有 Git的主要内容,如果未能解决你的问题,请参考以下文章

如何从自定义 shell 使用 GitHub for Windows 附带的 posh-git?

github for windows 安装 使用

GitHub for Windows 可以在本地使用吗?

gitHub使用入门和github for windows的安装教程

简单的GitHub for Windows使用方法

GitGitHub for Windows使用 GitHub Flow的使用