如何阻止用户提交git中的子模块?

如何阻止用户提交git中的子模块?,git,git-submodules,Git,Git Submodules,假设您有一个父项目和子模块 有一个用户对父项目具有读/写权限,但仅对子模块具有读权限 如何阻止用户对子模块进行更改并提交,然后提交更新的引用并将其推送到父项目中的新提交? 用户将无法将其更改推送到子模块,因为他们没有权限。当另一个用户现在拉下父项目时,他们将有一个尚未推送到服务器的子模块提交引用。有两种解决方案: 告诉用户在按下时使用新的--recurse submodules=check选项 或设置用于检查新子模块检查的 我认为这是不对的。这来自git手册:“一个常见的问题是,开发人员在本地对

假设您有一个父项目和子模块

有一个用户对父项目具有读/写权限,但仅对子模块具有读权限

如何阻止用户对子模块进行更改并提交,然后提交更新的引用并将其推送到父项目中的新提交?


用户将无法将其更改推送到子模块,因为他们没有权限。当另一个用户现在拉下父项目时,他们将有一个尚未推送到服务器的子模块提交引用。

有两种解决方案:

  • 告诉用户在按下时使用新的
    --recurse submodules=check
    选项
  • 或设置用于检查新子模块检查的

  • 我认为这是不对的。这来自git手册:“一个常见的问题是,开发人员在本地对子模块进行更改,但没有将其推送到公共服务器。然后,他们提交一个指向该非公共状态的指针,并推进超级项目。当其他开发人员尝试运行git子模块更新时,子模块系统找不到引用的提交,因为它只存在于第一个开发人员的系统上。“谢谢CharlesB。这看起来不错。我会检查它,并可能接受这个答案。”。