首页 > 解决方案 > 项目的开发和主要分支的不同文件

问题描述

所以我知道在 stackoverflow 上有类似的问题,但我认为他们并没有完全回答我的问题。情况如下:

  1. 我有两个分支:主要和开发
  2. 我希望分支开发包含更多文件,即:C++ 的单元测试和单元测试库(googletest)想要添加新功能将使用开发分支来确保他们的新代码通过所有单元测试。这是我的项目结构:
├── build
├── CMakeLists.txt
├── .git
├── .gitignore
├── .gitmodules
├── lib
│   └── googletest
├── README.md
├── src
│   ├── CMakeLists.txt
│   ├── gui
│   ├── include
│   └── main.cpp
└── ut
    ├── CMakeLists.txt
    └── hello_test.cc

因此,在我的主要.gitmodules文件中,我没有指定 googletest 模块的文件,我也lib/googletest没有ut使用.gitignore. 但当然 git 不知道这一点,当我尝试将development分支中实现的新功能合并到main它时,它会自动合并development版本,.gitignore这使我的单元测试和 googletest 库暴露给 main,这又是一种不需要的行为。

所以这是我的问题 - 我应该如何解决这个问题?用户和开发人员有两个不同的存储库?在这种情况下,推荐的做法是什么?我应该只将我的单元测试和 ut 库暴露给 main 而不担心吗?

标签: c++gitunit-testinggithub

解决方案


推荐阅读