我有几种Visual Studio解决方案,既有本地存储库,又有GitHub上的解决方案。我已经进行了许多更改,并将这些更改成功推送到GitHub。
但是现在Visual Studio忘记了我的本地存储库之一与GitHub存储库相关联,我似乎无法弄清楚如何重新连接它。实际上,它不再在我的GitHub存储库列表中列出该存储库。
在下图中,您可以看到我有一个名为Toxic的本地存储库,但是该存储库未出现在GitHub存储库列表中。如果我尝试将Toxic项目发布到GitHub,它只是告诉我该存储库已经存在。
如何才能将所有现有的Github存储库显示在上面显示的顶部,以便我进行最新更改?
答案 0 :(得分:5)
看来,唯一的选择是在本地克隆GitHub存储库,将修改后的文件复制到新创建的存储库中,然后签入我的更改。
尝试拳头:
也就是说:
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,并查看是否一切正常(进行修改,添加,提交和推送)
答案 1 :(得分:3)
除非我缺少任何东西,否则看来唯一的选择是在本地克隆GitHub存储库,将修改后的文件复制到新创建的存储库中,然后签入更改。
当然,自从上次登录GitHub以来,我失去了所有注释和迭代。并且必须注意不要删除 .git 文件夹,并且要复制所有更改的文件并删除所有已删除的文件。似乎应该有一种更简单的方法,但这确实可以解决问题。
答案 2 :(得分:0)
我不是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设置为分支的默认存储库。