git-tag 相关问题

git-tag是用于创建,列出,删除或验证使用GPG签名的标记对象的Git命令。标签用于将历史中的特定点标记为重要。

在 git 中,我如何删除除最新标签之外的所有标签(本地和远程)

我想删除我的 git repo 中的所有标签(本地和远程),除了最新的标签。我已经阅读了有关删除所有标签的帖子,但找不到有关有选择地删除它们的信息,即

回答 3 投票 0

如何只显示注释标签的消息?

在 git 中似乎有一些方法可以显示带注释的标记的消息以及提交详细信息和其他内容 git show the_tag,或者名称和详细信息 git tag -l -n100 the_tag。 但是什么...

回答 2 投票 0

Github 标签不更新

我正在为我的项目创建一个 CI/CD 管道。我正在使用 GitHub Actions 构建图像并将它们存储在 AWS ECR 中。 整个管道工作正常,但更新 ...

回答 0 投票 0


构建 Docker 镜像并使用 github 标签名称对其进行标记

我创建了一个关于回购标签创建的 GitHub 操作。我能够成功构建 Docker 映像并将其推送到 AWS,但是我不知道如何使用与 GitHub 标签相同的名称来标记映像。是...

回答 3 投票 0

基于标签的git子模块版本

git子模块和标签如何工作,特别是我可以在主机模块中使用git标签来更改子模块指向哪个模块?可以说我有一个名为main的模块,并在其下添加了...

回答 1 投票 1

不再识别git标签

我的git储存库出现了一个奇怪的问题。它突然“停止”使用标签。我可以创建标签,也可以列出标签。我什至可以使用git checkout $ tag或git logs $ tag。但是当使用git ...

回答 1 投票 0

使用GitHub Actions创建标签但未发布版本

当前,在我的GitHub存储库上,我具有以下工作流程,该工作流程每天发布一个夜间快照,并使用当前日期作为发布名称和标签名称:名称:Nightly Snapshot on:...

回答 1 投票 0

如何使用Bitbucket Pipelines释放标签(bitbucket-pipelines.yml)

如何使用bitbucket-pipelines.yml文件在管道中标记git commit?] >>

回答 1 投票 0

获取mvn版本:回滚以删除GIT中的标签

我有一个Maven项目,该项目存储在我们的GIT存储库中。当我使用mvn release:prepare和mvn release:perform发布该项目时,有时在后续步骤中会失败,但标记为...

回答 3 投票 6

子模块标签未使用git子模块存储库URL更新进行更新

我必须更新主仓库中使用的子模块的仓库URL。这些是我遵循的步骤。 1)修改.gitmodules文件中的仓库URL。 2)运行git submodule sync(然后.git / config得到了...

回答 1 投票 1

比较它们之间的差异后,如何使用旧的git标签更新当前的master分支?

我想检查当前master分支和旧git标签(比如tag1)之间的差异。在检查了差异之后,我想放弃更改并将tag1合并到我的master分支中,因为...

回答 1 投票 1

git状态仍显示为“您的分支先于 N个提交。” git rebase 后> 假设我有一个从本地my-topic-branch分支分支出来的master分支,并且master分支与远程master分支绑定。 my-topic-branch分支最初是由名为tag1的标签创建的。 tag1是一个放置在远程主分支上的标签,由于git fetch,我看到了该标签。 有些时间过去,允许其他人将其更改推送到该远程主分支。再后来,其他人放下了新的tag2。 然后我再次使用git fetch以确保将所有这些远程标记都放入本地存储库中以进行进一步的操作。 我像这样将tag2设置为基准: $ git rebase tag2 First, rewinding head to replay your work on top of it... Applying: CENSORED_LOG_MESSAGE1 Applying: CENSORED_LOG_MESSAGE2 Auto packing the repository in background for optimum performance. See "git help gc" for manual housekeeping. 但是后来我运行git status并看到了这个: $ git status On branch my-topic-branch Your branch is ahead of 'tag1' by 195 commits. (use "git push" to publish your local commits) 我的期望是以上消息应该说明有关tag2的信息,当然不是我在195次提交之前领先于旧标记。 为什么git status会报告my-topic-branch分支的提交,而不是我最近基于的新提交? [如果这是预期的行为,那么很好,我将不得不忽略它,但是奇怪的是,我仍然落后195次提交master,但那肯定不是真的(如果git rebase实际上做了我认为应该做的事情。 更新1 如果HEAD仍在该分支上,我仍然可以通过以下方式找到my-topic-branch的基点: $ git show -s $(git merge-base master @) commit CENSORED_SHA1 (tag: tag2) Author: CENSORED_AUTHOR Date: CENSORED_DATE CENSORED_LOG_MESSAGE3 $ 但是这仍然是关于git status输出的问题。 更新2: 根据Pesho_T's comment更新: 我运行了git branch -vv,并得到了以下内容。这是经过审查的,但是要加上“ 2”和“ 4”之类的数字以区别于其他数字: $ git branch -vv | grep my-topic-branch * my-topic-branch CENSORED_SHA1_2 [tag1: ahead 195] MDFCOR-420 CENSORED_LOG_MESSAGE4 假设我有一个我的主题分支分支,该分支从我的本地master分支分支出来,并且该master分支与远程master分支绑定在一起。 my-topic-branch分支最初是在... 似乎很可能1 您意外创建了一个分支名称 和一个标签名称,它们在缩短时都打印相同。一旦有了两个这样的名称,它们就可以容纳不同的哈希ID。当parsing这样的名称时,您获得的哈希ID有点棘手(有规则,这些规则在the gitrevisions documentation中列出,但是规则也有例外)。最好通过重命名不合适的分支名称来摆脱这种情况。 请记住,像master这样的分支名称实际上是名称refs/heads/master;像v2.25.0这样的tag name 实际上是refs/tags/v2.25.0。因此,即使标签存在,也可以创建名为v2.25.0的branch,因为分支的full名称是refs/heads/v2.25.0,而不是refs/tags/v2.25.0。这两个名称是不同的,但是如果您查看每个的简短版本,则两者均为v2.25.0。 ahead的behind或git status计数消息是运行的结果: git rev-list --count --left-right <name1>...<name2> 请注意,两个名称之间有三个 点。2 两个名称是: name1是您的当前分支; name2是当前分支的上游 。 git rev-list命令,以这种形式(使用三个点),查找左侧名称为从…到达 ,而不是右侧名称的提交,以及<counts (--count),但分开(--left-right)而不是组合。这意味着这些计数取决于您当前的分支(当然,这就是为什么它说“您的分支...位于前面”)的原因。 和 上游设置。您可以通过git branch --set-upstream-to控制上游设置,并可以通过以下方式读取当前分支的上游:$ git rev-parse --abbrev-ref @{u} origin/master $ git rev-parse --symbolic-full-name @{u} refs/remotes/origin/master 为了帮助您在缩写时不小心使 branch name和tag name 看起来都相同的情况,请使用--symbolic-full-name变体。 分支的 上游 始终是另一个分支名称或远程跟踪名称,因为标记名称被禁止:git branch --set-upstream-to=v2.25.0 fatal: Cannot setup tracking information; starting point 'v2.25.0' is not a branch. origin/master之类的远程跟踪名称更为典型,但您 可以 将任何分支的上游设置为任何其他分支名称。如果ahead计数非零,通常就是您所看到的,也就是您在这里看到的。但是,如果两个计数都不为零,则git status将使用单词diverged。如果ahead计数为零,并且behind计数为非零,则git status打印behind计数。如果两个计数都为零,则分支与其上游同步,git status表示Your branch is up to date with ...。 有关三点语法的更多信息,请参见the gitrevisions documentation。要了解 可达性 ,请参阅Think Like (a) Git。对于简短的图形说明,请考虑以下图形: I--J <-- branch1 / ...--G--H <-- master \ K--L <-- branch2, origin/branch1 名称branch1是master的“前2”,因为从提交J开始,我们先返回到I,然后返回H,这意味着I-J的提交可以从branch1到达,但不能从master开始。同样,branch2比master早2,但它的两个是提交K-L。这意味着master是branch1或branch2的2 behind ,而这两个提交分别是I-J或K-L。同时,branch1与origin/branch1之间有分歧,因为它们都比前面[2](I-J)并且比后面[K-L)2。 1 如果您使用move标签,您可能会遇到类似的棘手情况,因为标签在所有Git存储库中都是通用的,但标签也永远都不是move。一旦一个Git存储库具有标签,即使某人已在该Git存储库旨在移动的其他某个Git存储库中强行移动了标签,它也会倾向于假定it具有的副本为正确。比赛。但这会显示不同的症状,因为您不能将分支的上游设置为标签名称。 2 用点集理论的术语,三点语法产生一个symmetric difference。因为这是对称的,所以只要您记得现在也交换了git rev-list --count --left-right将要打印的两个counts,就可以交换两个名称。

假设我有一个我的主题分支分支,该分支从我的本地master分支分支出来,并且该master分支与远程master分支绑定在一起。 my-topic-branch分支最初是在...

回答 1 投票 1

Azure Devops Pipeline使用git标签的脚本输出

我们的过程看起来像这样:我们正在开发功能分支。功能分支合并到开发分支中(全部通过git flow)。合并到主服务器是通过请求请求进行管理的。一个新的管道...

回答 1 投票 0

无法从远程推送git标签?

我正在尝试在本地克隆上创建一些标签,并将其推送到主节点,然后从远程删除一个标签,然后将其推送到我的本地克隆,要清楚,远程是github,但在谈论标签,而不是...

回答 1 投票 1

“从指定的提交可以到达其提交的标签是什么意思?

在我的一个项目中,我尝试在签出分支后或从原点/主节点获取最新标签。如果我运行git tag -l --sort = -creatordate --merged |头-n1或git描述,我得到...

回答 1 投票 0

是否有简单的命令将分支转换为标签?

我将完成一个繁琐的过程,将“哑快照”转换为git。这个过程进行得非常顺利(这要归功于重命名过程),但是现在我意识到,...

回答 3 投票 27

多分支管道的Git Push Tag

我正在使用以下代码:sshagent([[creds_ssh']){sh(“”“ git标签-l git标签-a $ {tagNm} -m” git标签$ {tagNm}“ git push origin $ { tagNm} ...

回答 1 投票 1

如何从Git中的标签名获取分支?

我正在尝试从给定标签获取分支名称。我试过git describe --tag ,但这没有提供任何分支名称。我尝试使用gitk显示到标签和分支,但是...

回答 3 投票 2

带有标签的Git子目录过滤器

我正在尝试将一个大型仓库划分为多个较小的仓库。目标是拆分文件夹并在此过程中保留标签。我已经尝试过:git filter-branch --prune-empty --subdirectory -...

回答 1 投票 2

© www.soinside.com 2019 - 2024. All rights reserved.