Git 我是否可以签出/创建一个遗漏了某些提交的标记?

Git 我是否可以签出/创建一个遗漏了某些提交的标记?,git,git-branch,git-tag,Git,Git Branch,Git Tag,我想创建一个不包含某些提交的标记。因此,在创建标记时,我选择添加(或忽略)哪个提交。这将使我能够部署热修复程序并省去旧的(和新的)提交 使用分支也可以实现同样的效果,但我不希望每个环境(开发、测试、登台、产品)都有一个分支。因此,如果我可以在一个分支中创建所有标记,那么我就可以只将prod标记部署到prod,并直接部署到其余部分(开发、测试、暂存) 也许是git笔记 在Git中,标记用于标识单个提交,分支用于标识提交序列。您可以通过从不同的分支(或您所称的环境)拾取所需的提交来创建新分支。然后将

我想创建一个不包含某些提交的标记。因此,在创建标记时,我选择添加(或忽略)哪个提交。这将使我能够部署热修复程序并省去旧的(和新的)提交

使用分支也可以实现同样的效果,但我不希望每个环境(开发、测试、登台、产品)都有一个分支。因此,如果我可以在一个分支中创建所有标记,那么我就可以只将prod标记部署到prod,并直接部署到其余部分(开发、测试、暂存)

也许是git笔记


在Git中,标记用于标识单个提交,分支用于标识提交序列。您可以通过从不同的分支(或您所称的环境)拾取所需的提交来创建新分支。然后将新的分支部署到prod,并转到其他分支(dev、test、staging)。但是,您可能需要考虑使用更为紧凑的不同工作流。


如前所述,在git中,标记用于标识单个提交。单个提交标识整个存储库的状态和特定时间点,因此您所要求的不能在git中完成

我们所能做的就是,像赛义德所说的,创建一个新的分支,在那里你可以挑选你想要的东西,然后标记它


我不理解你关于prod不需要分支的评论。是的,我们已经这样做了很长一段时间,即使是使用git以外的其他VCS软件(即使支持选择性标记/标签,所以分离是明确的)。通常的做法是为生产版本创建一个新分支,每个版本一个分支,或者一个包含所有产品版本的生产分支。

为什么不希望每个环境创建一个分支?这是一个完美的分支应用程序…这听起来像是部署、合并、bug修复(和搜索)的大量工作。Prod不需要分支。prod上没有变化,只有一堆o'文件。一根树枝看起来很奇怪。在登台时也是如此(实际上也是测试)。分支只是为了合并和标记?为生产版本创建新分支(!!)不应该是常见的做法。我每两周发布一次。我不希望每年有25家新分支机构!这就是标签存在的原因:发布。分支应该是一个新功能,可以独立于bug修复和正常开发进行开发。我的“prod不需要分支”注释表示prod是一个文件集合。产品暂存在预生产/暂存时进行。我永远都不想登录prod。绝对不要查看新版本。我推到prod,它检查master,而不是每个版本的自定义分支。我必须能够控制它从开发或测试。您将如何发布到prod?登录并查看新分支?@Rudie我们不是从VCS发布的,我们在构建服务器上执行构建,将具有特定版本的二进制工件推送到Nexus。部署机制从Nexus获取特定版本。我的意见是,最好不要从风投那里发布。分支不应该影响您实际发布的内容-您通常发布打包的二进制工件,而不是代码。我来自编译发布工件的背景,但我不认为这也适用于脚本语言的东西。通常,分支并不意味着是长期存在的。所以你没有25个活跃的分支机构,一年中总共有25个分支机构,但在任何时候只有2-3个在max上工作。当然,所有这些都是我的意见,你不必同意我的意见。我就是这么看的:)