具有多个模块的git存储库结构

发布于 2024-11-03 18:30:19 字数 388 浏览 2 评论 0原文

我有以下情况:

  1. 较大的软件项目有 4-5 个不同的软件模块。
  2. 所有这些都被设置为单独的 git 存储库。
  3. 当我提交一个功能时,通常它跨越多个模块 - 因此为每个模块进行 2 或 3 次提交。

给我关于更大项目的多个模块部分的想法。您更喜欢使用 git 子模块吗?如果是,那么以什么方式?或者您是否使用项目的主文件夹,例如:

Software_Project
   模块_1
   模块_2
   模块_3
   Module_4

欢迎任何有关适当 git 存储库结构的想法。

I have the following situation:

  1. Have 4-5 different software modules part of a bigger software project.
  2. All of them are set as separate git repos.
  3. When i commit a feature, usually it spans more than a single module - thus making e.g. 2 or 3 commits for each module.

Give me ideas for multiple modules part of a bigger project. Do you prefer using git submodules, and if yes, in what way? Or do you use a master folder for the project, e.g.:

Software_Project
   Module_1
   Module_2
   Module_3
   Module_4

Any ideas for an appropriate git repo structure are welcome.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

尹雨沫 2024-11-10 18:30:19

既然你说你提交的功能通常跨越多个模块,那么我会将所有内容放在同一个 git 存储库中,除非它确实是一个正交模块并且完全独立于项目的其余部分,而子模块可能更合适。您会很高兴能够以 git 应该使用的方式提交功能。多个 git 存储库中的多次提交?不,我宁愿让代码更紧密地结合在一起。嗯,就像其他事情一样,这是一种权衡。

Since you are saying that you commit features that usually span over several modules, I'd put everything in the same git repository, unless it's truly an orthogonal module and completely independent from the rest of the project, where instead a submodule might be appropriate. You will be happy to have the possibility to commit features the way git was supposed be used. Multiple commits in several git repositories? Nah, I'd rather have the code closer together. Well, it's a trade off like everything else.

心作怪 2024-11-10 18:30:19

Google 开发了一个名为 Repo 的 Android 开发脚本(显然 网站已移动),这使得 git 的使用更加容易。其主要目的是更轻松地管理多个存储库。

Google developed a script for Android development called Repo (apparently the website has moved) that makes git usage easier. Its main purpose is easier management of multiple repositories.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文