我刚在VS2013中创建了一个新项目,并将其添加到源代码管理中,选择了Git选项。这已在解决方案的根目录中创建了预期的隐藏.git文件夹,项目现在显示符号,表明它处于源代码管理之下。
我现在想要将整个新解决方案推送到另一个目录,最终将成为共享仓库。我在VS中收到了一条有用的消息,告诉我,要将我最新的提交发布到远程仓库,我需要同步。我选择了这个并收到一条消息,说明' Visual Studio无法(尚未)发布到非裸仓库。'
我已经在目标仓库中外部运行git init
,我认为这将被VS接受为一个空的回购,但似乎并非如此。这确实是个问题。我的主要问题是,同步选项现在在VS中显示为灰色,即使它声称同步失败。我所做的一切似乎都没有得到选择。
任何人都可以发现我做错了什么,并希望告诉我如何修复'这个?另外,如果有人知道任何有关Git如何在VS中工作的好文档,我很乐意听到它。
答案 0 :(得分:1)
在设置远程存储库时,应使用--bare
标志创建它。
git init --bare <directory>
Atlassian has a small explanation here on the git init options,这将是一个很好的阅读,但我认为Visual Studio只是将远程视为另一个存储库,并且不理解如何在不创建裸机时推送它。
来自Atlassian的文章:
将
--bare
视为将存储库标记为存储工具的方法, 反对开发环境。这意味着虚拟 所有的Git工作流程,中央存储库都是裸露的,还有开发人员 本地存储库是非裸的。