在我们的 main
分支中,我们有一个包含特定配置的文件。
我们将此文件命名为 .example-conf
。
当开发人员创建他的分支和 pull 请求时。
他可以更改 .example-conf 文件的内容,因此他的 pull 请求将根据这些配置执行我们的自定义脚本。 merge 时应忽略文件 .example-conf
中的更改。
我们需要阻止开发人员修改 main
分支中的 .example-conf
文件。但是当他们从 main
创建分支时,该文件应该就在那里。
我们尝试使用 .gitattributes
实现解决方案,但这不起作用,因为 merge 期间没有冲突。因此, merge 后 .example-conf
的内容将被修改。我们需要它与 main
分支保持相同。
我们使用 GitHub 进行版本控制。
如何做到这一点?
最佳答案
Github 允许您通过使用代码所有者来添加额外的安全层。可以通过添加 merge 之前需要 pull 请求审查分支保护规则,然后启用需要代码所有者进行审查来启用此功能
此外,您还必须添加一个代码所有者文件,指定谁是 .example-conf
的代码所有者。例如
conf/*.conf <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="f59cdb9498b5819d90db9a829b9087" rel="noreferrer noopener nofollow">[email protected]</a>
有关更多信息,请参阅 Introducing Code Owners
关于git - 防止修改 GitHub 中主分支上的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68256800/