菜鸟教程小白 发表于 2022-12-13 11:57:54

android - 如何在 SourceTree 中自动创建标签


                                            <p><p>当要提交的编码版本发生变化时,是否可以在SourceTree中自动创建标签?</p>

<p>例如对于iOS开发,如果<code>CFBundleVersion</code>改为<code>12</code>或<code>CFBundleShortVersionString</code>改为<code>1.1.2</code>,创建一个标签<code>v1.1.2-b12</code>。 </p>

<p>对于 Android,每次 <code>versionCode</code> 或 <code>versionName</code> 更改时创建一个名为 <code>v-b</code> 的标记。</p ></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您可以使用 <a href="https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks" rel="noreferrer noopener nofollow">post-commit-hook</a> ,如 <a href="https://coderwall.com/p/mk18zq/automatic-git-version-tagging-for-npm-modules" rel="noreferrer noopener nofollow">this blogpost</a> 中所述.对于 npm package.json 文件,您的 <code>.git/hooks/post-commit</code> 看起来与此类似:</p>

<pre><code>#! /bin/bash
version=`git diff HEAD^..HEAD -- &#34;$(git rev-parse --show-toplevel)&#34;/package.json | grep &#39;^\+.*version&#39; | sed -s &#39;s/[^0-9\.]//g&#39;`

if [ &#34;$version&#34; != &#34;&#34; ]; then
    git tag -a &#34;v$version&#34; -m &#34;`git log -1 --format=%s`&#34;
    echo &#34;Created a new tag, v$version&#34;
fi
</code></pre>

<p>基本上,您从第一行的 <code>plist.info</code> 中 grep 所需的版本字符串,并在 <code>if</code> 语句中创建一个新标签。</p></p>
                                   
                                                <p style="font-size: 20px;">关于android - 如何在 SourceTree 中自动创建标签,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/33538010/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/33538010/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: android - 如何在 SourceTree 中自动创建标签