克隆

2016-06-21 130 views
3

时取混帐笔记我知道git的笔记可以用克隆后提取:在混帐配置克隆

git fetch origin refs/notes/*:refs/notes/* 

甚至被设置为始终牵强。

但是在克隆时我没有得到笔记,所以我必须克隆然后获取。虽然我确实看到使用--mirror时,克隆确实也能获得笔记。然而,我的最佳设置是,我可以在不做镜像的情况下克隆任何存储库(因为它意味着--bare并且还会得到其他不需要的参考)并获取笔记。

有没有什么办法可以设置例如git config在克隆时间获取特定的附加引用?

回答

1

简短的回答是“不”:在克隆时,你有你的任何使用默认的Refspec(+refs/heads/*:refs/remotes/$remote/*,其中$remote被替换为origin,或者你选择的远程名称)克隆选择或与--mirror取镜refspec(+refs/*:refs/*)。正如你注意到的,--mirror意味着--bare,并且在这里可能是不可取的。

编写一个执行克隆的shell脚本会很容易,然后执行git config --add remote.origin.fetch +refs/notes/*:refs/notes/*,然后运行git fetch,这样您就不需要自己运行三个命令。 (无论你想要+这里,还是/或者将它们的注释重新命名为其他参考名称,都取决于你。对于FreeBSD存储库,我使用fetch = +refs/notes/*:refs/notes/origin/*并设置了notesRef = refs/notes/origin/commits,这是我从别处拷贝而不需要太多考虑的练习 - 到目前为止,我没有理由重新考虑或改变它。)