我该如何从共同父目录更新多个Mercurial(hg)存储库?
/plugins/search
/plugins/overview
/plugins/chart
我想将分支更改为默认分支,并一次性更新所有分支。
cd /plugins/search
hg update -C default
hg pull -u
我该如何从共同父目录更新多个Mercurial(hg)存储库?
/plugins/search
/plugins/overview
/plugins/chart
我想将分支更改为默认分支,并一次性更新所有分支。
cd /plugins/search
hg update -C default
hg pull -u
plugins
目录:find . -type d -maxdepth 1 -exec hg update -C default -R {} \;
find . -type d -maxdepth 1 -exec hg pull -u -R {} \;
澄清一下:
find .
搜索当前目录-type d
查找目录,而不是文件-maxdepth 1
最大深度为一个子目录-exec {} \;
对每个查找运行自定义命令hg update -C default -R {}
hg 更改每个存储库中的分支到默认分支hg pull -u -R {}
如果在每个存储库中拉取了变更集,则 hg 更新到新的分支头find . -type d -iname .hg -exec echo \; -exec hg pull -u -R {}/.. \;
最初的-exec echo \;
仅用于保持输出的清洁。
点击此处获取更多find
信息。
在你的项目根目录下运行以下命令,即插件:
find . -maxdepth 1 -type d -print -execdir git --git-dir={}/.git --work-tree=$PWD/{} pull origin develop;