我使用repo工具管理多个存储库。
以下是我的示例清单文件,我在修订版中提供了一个标记名称 - ' firsttag'。
当我进行回购同步时,它说 -
Fetching project repo1
fatal: Couldn't find remote ref refs/heads/firsttag
<?xml version="1.0" encoding="UTF-8"?>
xml文件
<!-- <default revision="refs/heads/master" -->
<default revision='firsttag'
remote="github"
sync-j="4" />
<project name="repo1" remote="github" path="repo1"/>
<project name="repo2" remote="github" path="repo2"/>
</manifest>
答案 0 :(得分:2)
revision="firsttag"
或revision="refs/heads/firsttag"
表示分支。对于代码,它应为revision="refs/tags/firsttag"
。
如果你使用Gerrit,你会看到像refs/changes/33/44433/1
这样的引用。如果您想使用此引用,则应为revision="refs/changes/33/44433/1"
。
对于特定项目,如果您知道提交,则可以同时使用revision
和upstream
。当你想要旧的分支提交时,它非常有用。请注意,项目中的revision
会覆盖default
中的{。}}。
<project name="repo1" remote="github" path="repo1"
revision="3b9211fe8c87bf424c2bf128b1dec572375b318f"
upstream="somebranch"/>
这是repo manifest -r
的输出。 upstream
可以是标记或任何引用。
仅当值为ref名称时才可以使用revision
。
<project name="repo1" remote="github" path="repo1"
revision="refs/tags/secondtag"/>