我在几台机器上开发.我想为每个开发机器上的每个项目都有一个存储库,我想让它们保持同步而不使用我可以推送的远程存储库.(目前我买不起专用机器).
我认为git bundle是适合这项工作的工具.当我在机器A上完成工作时,我只是简单地捆绑我的仓库,并在机器B上解开捆绑.这让我有了这样的问题:
是否可以在包中嵌入有关标签和分支的信息?特别是,我如何捆绑标签对象?
编辑:只是一个注释 - 我希望尽可能自动化这个工作流程.我不想将捆绑视为远程.而不是那样,我想将捆绑包复制到我的存储库中 - 即添加提交和标记,快进现有分支并在分支不存在时添加新分支.
git bundle create RA.bundle --branches --tags
Run Code Online (Sandbox Code Playgroud)
将包括有关所有标签和所有分支的信息.
git bundle获取一个参数列表,可接受git rev-parse和git rev-list(并包含一个命名参考,参见SPECIFYING REFERENCES),它指定特定对象和传输引用.
--branches[=<pattern>]
Run Code Online (Sandbox Code Playgroud)
假设所有引用
refs/heads都在命令行中列出为<commit>.
如果<pattern>给定,则将分支限制为与给定shell glob匹配的分支.
如果模式没有?,,或者[,/在结束时暗示.
--tags[=<pattern>]
Run Code Online (Sandbox Code Playgroud)
伪装成refs/tags中的所有引用都在命令行中列出
<commit>.
如果<pattern>给定,则将标记限制为与给定shell glob匹配的标记.
如果模式缺乏?,,或者[, /最后暗示.