【问题标题】:Git always bundles annotated tagsGit 总是捆绑带注释的标签
【发布时间】:2016-02-27 04:45:15
【问题描述】:

我在使用 git-bundle 创建备份时遇到问题。

我正在尝试通过运行以下命令列表来创建备份:

$git bundle create <path_to_bundle> --all
$last_commit=($(git rev-list --all --timestamp | awk '{print $1+1,$2;exit}'))
$sha_tag=${last_commit[1]}
$timestamp=${last_commit[0]}
$git tag -f lastBundle $sha_tag

然后我想验证当我在同一个 repo 上再次运行这个脚本时,我不会生成一个包。我运行以下命令:

$git bundle create <path_to_bundle> --since=lastBundle --all

问题是这会创建一个包含我所有注释标签的包。正如我所怀疑的那样,不包括所有其他标签和分支。当我运行这个命令时:

$git rev-list --since=lastBundle--all

我没有看到任何提交,但不知何故,捆绑例程仍在拾取我的注释标签。我错过了什么?最新的提交是在一个分支上,而不是在 master 上。

我在跑步:

 $git version
 git version 1.8.5.2

【问题讨论】:

    标签: git backup


    【解决方案1】:

    自从commit c9a42c4(git 1.6.2,2009 年 1 月)以来,情况就不应该如此,尽管该提交在commit 2c8544a (git 2.1.1, Aug 2014) 中修复了一个错误。

    所以先测试一下update git,看看问题是否依然存在。

    【讨论】:

    • 我会更新,看看问题是否消失。我想拉入带注释的标签,但下次我捆绑它不应该把它们捡起来。
    • 我使用一些示例存储库测试了 git 2.5.0 版本,它正确地拒绝在 lastBundle 标签之前重新捆绑带注释的标签。这是一个已在后续版本中修复的错误。
    猜你喜欢
    • 2011-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-14
    • 2016-03-04
    • 2012-10-03
    • 2017-03-21
    相关资源
    最近更新 更多