【问题标题】:Push current code to existing GitHub repository将当前代码推送到现有的 GitHub 存储库
【发布时间】:2019-11-06 13:50:51
【问题描述】:

我有几个 Visual Studio 解决方案,它们都有一个本地存储库和一个在 GitHub 上。我已经进行了很多更改,并成功将这些更改推送到了 GitHub。

但现在 Visual Studio 忘记了我的一个本地存储库与 GitHub 存储库相关联,我似乎无法弄清楚如何重新连接它。事实上,它不再在我的 GitHub 存储库列表中列出该存储库。

在下图中,您可以看到我有一个名为 Toxic 的本地存储库,但该存储库未出现在 GitHub 存储库列表中。如果我尝试将 Toxic 项目发布到 GitHub,它只会告诉我存储库已经存在。

我如何才能让我所有现有的 Github 存储库显示在上面显示的顶部,以便我可以推送我的最新更改?

【问题讨论】:

  • 如果你 git pull repo 会发生什么?如果可行,请复制粘贴您的更改,然后您可能可以推送更改。
  • 我无法提取 repo,因为它没有显示为远程 repo。
  • 但是您知道远程仓库的 github 位置,对吗?在命令提示符下从该位置克隆 repo 怎么样?
  • 是的,我可以在本地克隆远程存储库。但这显然会覆盖我现有的本地仓库。我知道我可以移动本地存储库,但是将我的所有更改合并到新的本地存储库中似乎很痛苦。
  • 您可以备份损坏的本地存储库,克隆远程存储库,然后将所有更改的文件从损坏的本地存储库复制粘贴到新克隆的存储库中,只要您不替换“.git”文件夹。唯一的缺点是所有更改都将被视为一次大提交。

标签: visual-studio github repository


【解决方案1】:

看来唯一的选择是在本地克隆 GitHub 存储库,将我修改过的文件复制到新创建的存储库上,然后签入我的更改。

试试拳头:

  • 安装Git for Windows(命令行)
  • 将远程存储库克隆到新文件夹中
  • 将现有存储库添加为远程存储库
  • 获取并查看您是否可以挑选您的提交

即:

 git clone https://github.com/<user>/<repo> newFolder
 cd newFolder
 git remote add old ../path/to/old/local/repo
 git fetch old
 git log old/master
 git cherry-pick old-sha1..old/master

(old-sha1 是您想要返回的第一个提交)

然后在您的 Visual Studio 工作区中添加 newFolder,并查看是否一切正常(进行修改、添加、提交和推送)

【讨论】:

    【解决方案2】:

    除非我遗漏了什么,看来唯一的选择是在本地克隆 GitHub 存储库,将我修改过的文件复制到新创建的存储库上,然后签入我的更改。

    当然,自上次签入 GitHub 以来,我丢失了所有的 cmets 和迭代。并且必须注意不要删除 .git 文件夹,并复制所有更改的文件并删除任何已删除的文件。似乎应该有一个更简单的方法,但这确实成功了。

    【讨论】:

      【解决方案3】:

      我不是 git 专家,但我想我可以提供帮助,如果我还不算太晚的话。

      运行:

      git remote -v
      

      这应该以以下形式打印:

      origin  <remote_repo_url> (fetch)
      origin  <remote_repo_url> (push)
      

      如果你只看到:

      origin  (fetch)
      origin  (push)
      

      尝试运行:

      git remote set-url origin <remote_repo_url>
      

      如果没有输出,则运行:

      git remote add origin <remote_repo_url>
      

      然后试试

      git push -u origin
      

      -u--set-upstream 标志会将 origin 设置为分支的默认 repo。

      【讨论】:

        猜你喜欢
        • 2012-05-04
        • 2020-01-21
        • 1970-01-01
        • 2012-08-25
        • 2021-09-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-27
        相关资源
        最近更新 更多