将元数据添加到 git commit 以获取有关如何测试的说明

问题描述 投票:0回答:2

我们有一个基本的 CI/CD 系统...当推送发生时,Bitbucket 将通知我们的一台服务器 - 有提交 SHA 和存储库等。

但是(对我来说)没有明显的方法来根据提交以不同的方式测试存储库。特别是如果它是一个大型仓库,我们可能不想测试所有内容。所以我在想这样的事情:

git commit -am "regular commit message # path/to/test/folder"

因此提交消息中最后一个 # 之后的所有内容都将是包含 test.sh 文件的文件夹的路径。如果我们有 git pre commit hooks,我们可以验证提交消息中的信息吗?

有更好的方法吗?有没有办法向提交添加一些元数据来指示 CI/CD 服务器如何测试提交?

git git-commit
2个回答
2
投票

最好将提交消息用于其预期目的 - 描述提交的内容和基本原理。这是一个很好的参考

关于 CI/CD - 在某些情况下,不想测试所有内容是有道理的,但我建议尽可能晚地划分测试。 IOW,在每次提交时测试所有内容,并尽可能快地保持测试。当您需要进一步优化时,您可以按运行时间对测试进行分区 - 在每次提交时运行所有“快速”测试,并在夜间作业中运行所有“慢速”测试。


0
投票

最佳实践是将此类元数据放入提交消息中并带有标头,以将其与任何其他元数据区分开来。例如 Gerrit 使用

Change-Id
标题:

Change-Id: xyzzy

所以你的命令应该是这样的

git commit -a -m "regular commit message" -m "Test: path/to/test/folder"

这会产生提交消息

regular commit message

Test: path/to/test/folder

剩下的就看测试脚本了。

© www.soinside.com 2019 - 2024. All rights reserved.