如何使用 Git 更新我的项目版本号?
Posted
技术标签:
【中文标题】如何使用 Git 更新我的项目版本号?【英文标题】:How can I update my project version numbers using Git? 【发布时间】:2018-07-14 05:36:33 【问题描述】:假设我有两个分支:develop
和 feature
。
假设我还有一个名为 VersionNumber
的文件,其内容如下:
BUILD_NUMBER 1 个
我想使用 Git 挂钩,以便当我将 feature
合并到 develop
时,BUILD_NUMBER
字段会自动递增。
我想到了使用post-merge
钩子的以下过程:
-
检查合并到的分支是
develop
通过将BUILD_NUMBER
递增1 来更新VersionNumber
文件
添加更新文件:git add VersionNumber
修改提交:git commit --amend -C HEAD --no-verify
在最终命令之前一切正常。 Git 说我不能在合并过程中修改提交(这让我感到惊讶,因为我认为这是post-merge
)。
关于我如何做到这一点的任何建议(使用post-merge
或任何其他挂钩)?
【问题讨论】:
【参考方案1】:很遗憾,您的问题缺少代码示例。但是我能够为了它的乐趣而重现。
实际上,您不能将某些内容(例如对文件的更改)修改为合并提交-这似乎有些道理。实际上,您是合并后的,但是通过使用 amend
您尝试返回合并提交并对其进行修改。
所以,我认为,你最好的机会就是简单地为版本提升添加一个提交。
其他任何事情都会让它变得非常复杂,并且容易出现不起作用的极端情况,并且会花费您大量时间来弄清楚如何挽救您的提交和版本控制。我总是喜欢让事情尽可能简单。但也许其他人可以想出更好的东西。
这是我写的post-merge
钩子,如果有人感兴趣的话;不检查分支:
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 更新我的项目版本号?的主要内容,如果未能解决你的问题,请参考以下文章