如何解决有没有办法从 git 中获得预合并挂钩或类似的行为?
我真的可以使用预拉/合并挂钩。这不是因为回购本身。这是因为 repo 与之交互。等效的行为就可以了。
示例:我们的 repo 控制一个 docker-compose 文件。如果文件中图像的名称和/或标签在其控制的堆栈启动时发生更改,则 docker-compose 将无法关闭堆栈/容器。在拉之前总是要求堆栈下降是不可取的。
我想要的是有一个预合并挂钩,用于检查是否会在合并中更改相关文件之一。如果是这样,它会向控制台写入一条消息,例如:“如果您的堆栈已上升,您现在应该真正将它们取下(使用 stop.sh)。否则,您应该稍后合并。您想继续 [C] 还是中止[一种]?”开发人员只需在另一个终端中输入“stop.sh”,然后按 C。这也会提醒开发人员一个或多个堆栈必须已更改。我什至可以提供一个方便的列表。
请注意,我们有时会为一个堆栈提供多个 docker-compose 文件,并且可能会根据情况以不同的组合调用不同的 compose 文件集。决定调用哪些脚本的脚本也可能会发生变化。所有这些文件更改都必须统一跟踪和处理。
文档说预合并提交在合并发生后运行。我可以让钩子检查发生了什么变化,向开发人员提供强制中止,然后让开发人员取下堆栈,然后再次合并。这并不可怕,但开发人员会更喜欢预合并选项。这可行吗?
我最好的解决方法是使用正则表达式脚本从堆栈中删除任何不是当前的悬空容器。
如果有其他方法可以处理这种情况,请告诉我。如果你想写一个 pre-pull/merge hook,我自愿测试!
PS - 是的,我应该教所有偷窥者在他们合并之前检查取物,但他们是过度劳累的人类,我想保持友善。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。