在 git 中为每个部署构建创建一个标签是一个好习惯吗?

2024-02-27

我刚刚从 Subversion 切换到 Git。 Subversion 的集中式架构为其提供了一个有意义的修订号,我将其构建到基于 Web 的应用程序的更改日志中,以便轻松登录并查看任何给定服务器上正在运行的版本。 Git 没有友好的内部版本号。相反,我看到它建议您从以下输出中解析一些内容git status or git tags.

我不相信我们会始终为我们的分支机构使用客户友好的名称(有时我们会为不希望公开他们使用我们系统的事实的个人客户命名)。所以我想我可以让构建生成一个日期戳/时间戳标签,例如2012-11-21_08-40-23并像我以前使用 Subversion 修订版号一样使用它。当我们构建用于部署的 war 文件时,构建只会生成此标签并将其添加到 Git,因此任何部署到任何服务器都会生成一个标签。

目前,我们每隔几天部署一次测试,每月集成几次(突发),每几个月生产一次。


相反,我看到它建议您从 git status 或 git Tags 的输出中解析某些内容。

这是丑陋的建议。确实又丑又蹩脚。git 描述 https://stackoverflow.com/questions/tagged/git-describe或多或少地统治这里,阅读man git 描述 http://www.kernel.org/pub/software/scm/git/docs/git-describe.html会比status or tag or log或第 3 方即用型脚本

史密斯。像这样对任何修订版进行良好命名的技巧(并且您只能标记some变更集,而不是每发表一次)

git describe --tags --long --match 'SUBSTRING-OF-CLIENT_TAGFAMILY*'

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 git 中为每个部署构建创建一个标签是一个好习惯吗? 的相关文章

  • $id:文件名、创建日期/时间 Exp $

    我经常在 C C 源代码中遇到以下语句 Id lzio c v 1 24 2003 03 20 16 00 56 roberto Exp Id file name version timestamp creator Exp 您知道哪些软件会
  • TortoiseSVN 无法连接到 SlikSVN Subversion 服务器

    我已经在工作组中的一台计算机上创建了 SubVersion 服务器 从我的开发盒中 我可以毫无问题地访问存储库并签入 签出文件 我刚刚安装了 TortoiseSVN 无论我做什么 它都不会连接到服务器上的存储库 我收到臭名昭著的错误 无法建
  • Jenkins GIT 包含从未构建过的区域

    我正在尝试使用包含区域在 Jenkins 中构建我的工作 但每当选中此选项时 民意调查结果总是说未检测到任何更改 我尝试了许多不同的路径 以及使用工作区进行 不进行强制轮询 结果是轮询从未检测到任何更改 但一旦我删除这些选项 它们就会在下一
  • 为别名命令添加“git help”?

    我已经实现了一个 Git 命令并使用 git 别名将其连接到 Git 但是有没有办法连接 Git 帮助 我在 Windows 上运行 如果我发出git help mycmd我收到一个弹出窗口 告诉我 Git 找不到 git mycmnd h
  • Azure 部署未安装requirements.txt 中列出的Python 包

    这是我第一次将 Flask Web 应用程序部署到 Azure 我跟着这个tutorial https azure microsoft com en us documentation articles web sites python cr
  • Heroku 应用程序上的 Nodejs Express EACCES 0.0.0.0:80

    我正在尝试在他们的网站上新创建的 Heroku 应用程序上运行 Node 应用程序 我按照他们的步骤操作 但在显示应用程序状态时仍然遇到错误 我跟着Node js 入门 https devcenter heroku com articles
  • SVN 提交后挂钩在提交后不会运行

    我的服务器上设置了 SVN 存储库 并且遇到提交后问题 我在 iMac 上使用 SmartSVN 作为客户端 我通过 SmartSVN 的 ssh svn 连接 我能够成功连接到 SVN 并对其进行更改 但从 SVN 客户端提交后 我的提交
  • VS Code 在交互式变基期间不会等待我 [重复]

    这个问题在这里已经有答案了 如果我使用交互式变基git rebase i使用为 Git 配置的默认编辑器 一切都运行良好 如果我在我的全局中添加以下内容 gitconfig core editor C Program Files x86 M
  • Android repo 脚本创建的 .repo/projects/ 中的裸 git 存储库的用途是什么?

    The 安卓源码 http android git kernel org 由以下人员管理repo http source android com source version control html 使用 repo 同步时 一个名为 re
  • 创建多个 git 分支的联合分支

    我希望能够在现有分支之上分层其他分支 并独立修改这些分支 这很有用 例如 允许将各个子项目的二进制文件统一到同一个项目中bin目录 一般来说 给定的文件仅存在于一层中 理想情况下 我想我会使用 unionfs 来完成此任务 但它必须以某种方
  • 删除 Xcode 项目的源代码控制

    我在 Xcode 项目上使用源代码控制已经有一段时间了 但现在我不想使用源代码控制 如何从 Xcode 中的项目中删除源代码控制 有三种方法 方法 1 将禁用所有项目的源代码管理 方法 2 将删除所有项目的单个存储库的链接 方法 3 将删除
  • 在种子项目上构建时如何组织 git 存储库

    我正在基于从 github 克隆的种子项目 MEAN io 构建一个网站 如何将这些文件与我自己的文件分开 由于该种子提供了广泛的文件框架 因此我自己的文件分布在整个项目中 我希望能够从种子中提取更新 但不能将其与我添加的文件混合 我知道我
  • SVN:“相对于其父级已切换”状态是什么意思?

    我正在尝试从 SVN 存储库更新我们的实时站点 据我所知 回购协议中没有任何内容 本身应该与工作副本目录中的任何内容发生冲突 但是当我尝试在公共根目录上 svn up 时 出现以下错误 svn REPORT request failed o
  • Git撤销本地分支删除

    我刚刚删除了错误的分支 并进行了一些我需要的实验性更改git branch D branchName 如何恢复分支 您可以使用git reflog http git scm com docs git reflog查找分支最后一次提交的 SH
  • 由于无法加载主类错误,无法运行 JAR 文件

    我构建了我的项目并使用 Gradle 构建框架生成了一个 JAR 文件 但是 输出 jar 文件无法从主类加载主要方法 矿工追踪器 在这种情况下 正如我提到的 与 jar选项失败 java jar Backtracker jar Error
  • 有什么方法可以从提交的消息中获取提交的 SHA 值吗?

    当做一个git tag 我并不总是擅长记住 HEAD 6 例如 是包含的还是排他的 鉴于我的大多数提交都以问题号为前缀 我想知道是否有一些神奇的命令可以从其消息的一部分中搜索提交 SHA 我知道这很容易做到git log并从那里开始工作 但
  • Git - 使用过滤器分支删除带有空变更集的提交

    如何使用 git filter branch 删除没有变更集的提交 我使用以下方法重写了我的 git 历史记录 git filter branch tree filter rm r f my folder f HEAD 效果很好 但现在我有
  • git rebase 吃了我的提交!为我翻译“git reflog”输出?

    我已经完成了五次提交 我想在推送它们之前将它们全部合并为一次提交 出于某种原因 我决定尝试通过与通常使用的不同的方式来做到这一点 FWIW 我试图按照此处的说明进行操作http gitready com advanced 2009 02 1
  • 如何在 git 中将我的功能分支变基到开发分支,尽可能减少冲突?

    我的功能分支已超过大约 30 次或更多提交 与此同时 在开发分支中 其他开发人员还推出了一些其他功能 因此 每次在开发中发布新功能时 我都会被要求 将开发分支重新建立到我的功能分支上 解决冲突 如有 继续在您的功能分支中开发 问题 第二步就
  • Git 实验分支还是单独的实验存储库?

    我正在开发一个 Android 应用程序 并且在整个开发周期中一直使用 Git 现在 我想构建并发布实验性功能 供人们尝试和安装 同时仍将原始的 稳定的应用程序安装在他们的设备上 现在 这意味着我需要使用不同的包名称 这会更改开发项目中的一

随机推荐

  • T-SQL 根据列值的变化递增计数器

    我有如下示例表 该表按未显示的另一列排序 我需要根据值列中的任何变化来增加计数器列值 请参阅下面的示例 如何在 T SQL SQL Server 2014 中完成此操作 ID Value 1 3 2 3 3 2 4 2 5 2 6 3 7
  • 数据触发器未触发

    我有以下 xaml
  • 如何在不同平台有不同的Header? [复制]

    这个问题在这里已经有答案了 我对 C 还很陌生 我有一个必须在 Linux 和 Windows 中构建的文件 我想知道是否有一种方法可以在 Windows 和 Linux 的同一个文件中拥有不同的 include 列表 但不知何故我告诉它这
  • 如何在一个布局中实现多个recyclerview?

    我想创建一个窗格 其中有两个RecyclerViews 假设 MyItems AllItems 我创建了垂直LinearLayout 其中有TextView作为标题和RecyclerView 像这样的东西
  • 在 Visual Studio Webtest 中插入 120 秒等待

    我想在两个 Web 请求的执行之间添加 120 秒的延迟 我尝试过使用思考时间 但它不会暂停执行 120 秒 谁能告诉我如何添加等待以暂停执行 120 秒 在执行 2 个 Web 请求之后 然后继续执行下一个请求 我正在使用 Visual
  • ImportError:无法导入名称 celery

    我正在尝试使用 Celery Redis Flask 运行一些后台作业 我的应用程序结构是 myapp celery worker py manage py myapp init py app py bot init py tasks py
  • 使无边框窗口具有较暗较大的阴影

    当无边框窗口中的窗口变为活动状态时 如何创建更暗和更大的阴影 我对 NSWindow 进行了子类化 我的窗口成为主窗口和关键窗口 但这没有帮助 阴影仍然很小 那么也许有人知道如何解决这个问题 我也尝试过使阴影无效 但这也没有帮助 NSWin
  • 使用 SQL 中的结果计算每天的总数

    我的订单表中有 50 行 条目 我有一个列 当订单被认领时保存 名为claimed at 该字段中的日期格式如下 2011 10 03 07 07 33 格式为 yy mm dd 时间 我还有一个专栏叫price this price是他们
  • Loopback.io 的 ACL 问题

    我目前正在评估用于开发新项目的 API 部分的 Loopback io 但在设置正确的 ACL 条目时遇到问题 我希望完成的是给定一个身份验证令牌 GET 端点应该只返回用户拥有的对象 例如 对 Shows access token xxx
  • 什么是“SQLiteDatabase 创建且从未关闭”错误?

    我已经在我的适配器类中关闭了数据库 那么为什么这个错误显示在 logcat 上 但我的应用程序不强制关闭 但只有错误显示在 log cat 上 我应该关闭数据库以忽略此错误 我的错误是 下面 我离开哪个类来关闭数据库 我从此链接获取帮助ht
  • C#,求一个数的最大素因数

    我是编程新手 正在练习我的 C 编程技能 我的应用程序旨在查找用户输入的数字的最大素因数 但我的应用程序没有返回正确的答案 我真的不知道问题出在哪里 你能帮我么 using System using System Collections G
  • 从 Action Script 到 C# 的 Rijndael 加密

    我正在尝试在 Action Script 和 C 之间共享加密 我的任务是在 C 中解密以下消息 f1ca22a365ba54c005c3eb599d84b19c354d26dcf475ab4be775b991ac97884791017b1
  • UUID 转换为无符号整数

    有没有地方可以将 UUID 压缩 转换 编码 加密为无符号整数 我从 sql 表中读取 UUID 历史记录很难看 我无法更改 我只有一个 unsigned int 来存储它 这是 C 以防产生影响 对此有什么想法吗 谢谢 礼萨 正如其他人所
  • 在两个容器之间共享/tmp

    我在用着docker compose生成两个容器 我想分享 tmp这两个容器之间的目录 但不与主机 tmp如果可能的话 这是因为我正在通过上传一些文件flask to tmp并想要处理这些文件celery flask build comma
  • 撤销 IdentityServer4 中特定会话的访问令牌(参考)

    我在用IdentityServer 4带有参考标记的隐式流程 我自己做了一个实现IPersistedGrantStore https github com IdentityServer IdentityServer4 blob releas
  • SVG使用element来克隆SVG

    是否可以在单独的 svg 中 使用 整个其他 svg 我想使用 d3 生成的地图作为同一页面上的图标 这是我尝试过的 但它不起作用
  • Angualr2 错误:无法设置仅具有 getter 的 # 的属性值

    表格看起来像
  • IntelliJ + JUnit 5(木星)

    My build gradle has testCompile org junit jupiter junit jupiter api 5 0 0 使用标准示例http junit org junit5 docs current user
  • XmlSerializer 和 IEnumerable:可以进行序列化,无需无参数构造函数:Bug?

    在我们的项目中 我们广泛使用 XmlSerializer 偶然我发现了一个没有无参数构造函数的类 我认为这一定会破坏序列化过程 但事实并非如此 通过调查这个问题 我发现 XmlSerializer 在序列化 反序列化时表现得很奇怪IE可枚举
  • 在 git 中为每个部署构建创建一个标签是一个好习惯吗?

    我刚刚从 Subversion 切换到 Git Subversion 的集中式架构为其提供了一个有意义的修订号 我将其构建到基于 Web 的应用程序的更改日志中 以便轻松登录并查看任何给定服务器上正在运行的版本 Git 没有友好的内部版本号