git - Git 子模块是否是一个不强制库用户下载其测试的好主意?

标签 git testing git-submodules

在开发代码库时,我想将它的测试与实际代码有效负载分开,因为我相信当有人使用我的库时,他们只是想使用它而对测试它不感兴趣——测试是我的责任,不是我用户的。

我知道存储空间很便宜,带宽也很便宜,但我的原则是两者都不要浪费。

我正在考虑将所有测试代码放入单独的 git 存储库中,并将其用作主存储库中的 git 子模块。

这样,那些感兴趣的人仍然可以获得并执行测试,但通常当您克隆主存储库时,唯一的额外文件是子模块的空目录和 .gitmodules 文件。

这是个好主意吗?

最佳答案

当然,你可以做到这一点。但是子模块是一个棘手的事情,有时它们有点复杂,所以对于一些不熟悉它们的用户来说需要时间。

在我看来,您可以将测试与库打包在一起。根据您的语言,您可以将它们放入自己的包 (Java) 中,这样您就可以在构建发布包时在构建脚本 (Ant/Make) 中排除它们。

存储真的很便宜,使用子模块是一件很棘手的事情。此外,对于某些人(如我)来说,运行测试是一个相当大的克服,当您必须查看子模块如何工作时,它会变得更加困难。另外,请记住:好的测试也可以用作文档。

关于git - Git 子模块是否是一个不强制库用户下载其测试的好主意?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34921201/

相关文章:

git 别名现在不能说 "read: illegal option -t"

javascript - 如何使用特定于浏览器的执行来测试功能?

java - "Maven Surefire plugin"在测试您的构建时意味着什么?

django - 在 git 项目中创建子模块

git - 如何将对子模块所做更改的提交推送到主 git repo?

git - Git 可以克隆不包括子模块的分支吗?

git - 将 git 存储库历史的一部分移动到另一个存储库

windows - 如何访问 Windows 共享上的 git 存储库?

git/github 从 merge 的 pull 请求创建反向补丁

php - Laravel 4.1 - 测试环境中的 $user->roles()->detach() 问题