GitHub user ChaosEternal added a comment to the discussion: [Ideas] Submodule Pinning
Let's use this discuss as our single source of truth. | Improved traceability: Tags often correspond to stable releases True, but Git itself doesn't have a mechanism to prevent a tag being changed. If our goal is to have reproducibility, I don't using tag is a good trade off for readability. I prefer log the tag information of the corresponding commit SHA in the .gitmodules file as a comment or record the tag in the commit message. (I can make this change) | Community alignment: Staying in sync with upstream’s versioning Yes, this is need a little bit manual work. when upstream has a new version, we modify the .gitmodules file to point to the new version, make our test. and the process is tracked in our commit history. | Reduced churn: Upstream tags are less likely to be force-pushed or removed compared to commits on active branches. The both companies (name starts with G) have history of shutdown/remove projects. And it is not necessary to risk our project's stability and reproducibility on the assumptions that "upstream tags are less likely to be force-pushed or removed" Summary: Use tag is convenient and eye-friendly. However, since we want to have reproducibility, directly put the commit sha in the .gitmodules file is better. It is not worth to pin to a tag. GitHub link: https://github.com/apache/cloudberry/discussions/1083#discussioncomment-13027871 ---- This is an automatically sent email for dev@cloudberry.apache.org. To unsubscribe, please send an email to: dev-unsubscr...@cloudberry.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@cloudberry.apache.org For additional commands, e-mail: dev-h...@cloudberry.apache.org