【问题标题】:How do I setup a VS solution with more than one Git project in Team Services?如何在 Team Services 中设置具有多个 Git 项目的 VS 解决方案?
【发布时间】:2017-03-13 13:39:41
【问题描述】:

我正在开始一个新的应用程序。应用程序代码将存在于团队服务中自己的 Git 存储库中,它将引用另一个支持库项目,该库项目也存在于团队服务中自己的 git 存储库中。如何设置团队服务存储库,以便我可以在每个项目上进行开发,并在克隆到 Visual Studio 时将更改提交到各自的项目。我将提交分开。

我担心这样的设置可能会混淆 Git 或 Visual Studio。

这是我的解决方案结构:

  • 我的解决方案
    • 我的申请项目
      • 文件.cpp
      • 文件2.cpp
    • 我的支持图书馆项目
      • 文件.cpp
      • 文件2.cpp

【问题讨论】:

  • 为什么要投票结束?我开始怀疑 Quora 是否试图破坏 SO。

标签: git visual-studio azure-devops


【解决方案1】:

可以使用git submodules来实现,但是在VS中不能直接查看结构,可以在文件资源管理器中查看My Supporting Library Project。详细步骤如下(大部分操作使用git命令行):

1.克隆当前的git repo(使用VS或git命令行)。

2.在本地repoMy Solution文件夹中,使用git命令行(如git bash)通过git submodule add <URL for library git repo>My Solution文件夹中的当前repo添加一个子模块。

3.提交并推送更改到当前 git repo

4.如果要对子模块进行更改并将其推送到库 git repo 中,可以使用

cd <submodule folder> 
git commit 
git push

5.如果您想对子模块进行更改并将其推送到当前的git repo中,您可以通过VS或git命令提交/推送:

cd .. 
git commit 
git push

【讨论】:

  • 如果没有如此复杂的步骤,GIT 无法完成如此基本和常见的操作,那它还有什么意义呢? Subversion 不假思索地做到了这一点,并且奏效了。使用 GIT 就像对自己的母亲进行脑部手术。
  • 其实直接命令是git submodule add &lt;URL for library git repo&gt;。由于这里有两个存储库,因此您需要注意在正确的存储库中提交/推送。所以我在这里列出了不同的解决方法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-21
  • 1970-01-01
相关资源
最近更新 更多