gpt4 book ai didi

git - 如何使用 Git 更新我的项目版本号?

转载 作者:太空狗 更新时间:2023-10-29 13:03:43 25 4
gpt4 key购买 nike

假设我有两个分支:developfeature

假设我还有一个名为 VersionNumber 的文件,其中包含以下内容:

BUILD_NUMBER 1

我想使用 Git 钩子(Hook),这样当我将 feature merge 到 develop 时,BUILD_NUMBER 字段会自动递增。

我想到了以下使用 post-merge Hook 的过程:

  1. 检查被 merge 到的分支是 develop
  2. 通过将 BUILD_NUMBER 递增 1 来更新 VersionNumber 文件
  3. 添加更新后的文件:git add VersionNumber
  4. 修改提交:git commit --amend -C HEAD --no-verify

在最后一个命令之前一切正常。 Git 说我不能在 merge 过程中修改提交(这让我很惊讶,因为我认为这是 post-merge)。

关于如何执行此操作的任何建议(使用 post-merge 或与此相关的任何其他 Hook )?

最佳答案

很遗憾,您的问题缺少代码示例。但是我能够重现它的乐趣。实际上,您不能将某些内容(例如对文件的更改)修改为 merge 提交——这似乎有一定道理。实际上,您是 merge 后的,但是通过使用 amend 您尝试返回到 merge 提交并修改它。

因此,我认为,最好的机会就是简单地为版本升级添加一个提交。

任何其他事情都会使它变得非常复杂,并且容易出现无法正常工作的极端情况,并且会花费您大量时间来弄清楚如何挽救您的提交和版本控制。我总是喜欢让事情尽可能简单。但也许其他人可以想出更好的办法。

这是我写的post-merge钩子(Hook),如果有人感兴趣的话;不检查分支:

perl -i -pe 's/(\d+)/1+$1/e' VersionNumber 
echo "bump version: `cat VersionNumber`"
git add VersionNumber
git commit --amend -m "bump version: `cat VersionNumber`"

关于git - 如何使用 Git 更新我的项目版本号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48604350/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com