Android repo init - 如何以非交互方式运行(或没有名称/电子邮件提示)

bho*_*ard 5 git android repository android-source

我正在构建一个脚本,可以下载几个版本的Android.我不想从头开始拉动每个存储库,而是希望保留一个基本存储库,我可以在同步之前将其重新初始化为正确的版本(然后将结果复制到安全目录中).

但是,repo init始终会提示输入名称和电子邮件地址,从而挫败我的脚本尝试.我查看了repo源并尝试了像-q这样的选项,但似乎提示来自底层的git命令.

关于在没有交互的情况下进行repo init -b的任何建议?

Wre*_* T. 7

经测试解决方案:如果你在全局git config中设置了user.name和user.email,repo不会提示你输入姓名/邮箱。您可以通过运行以下 git 命令来设置它们:

$ git config --global user.name 'Warren Turkal'
$ git config --global user.email 'wt@example.com'
Run Code Online (Sandbox Code Playgroud)

未经测试的可能解决方案:如果您只想为一个存储库设置名称和电子邮件,我认为您还可以在清单存储库中设置这些属性,而不是更改全局配置。为此,您可以从 repo 根执行以下操作:

$ cd .repo/manifests
$ git config user.name 'Warren Turkal'
$ git config user.email 'wt@example.com'
Run Code Online (Sandbox Code Playgroud)


Ada*_*ruk 0

为什么不直接使用 git 呢?这更加可脚本化。通过管道传输git archive至 tar 以导出或git --work-tree=where/you/want/the/files checkout tag_name .