Android repo init - как работать не в интерактивном режиме (или без запроса имени / адреса электронной почты) - PullRequest
5 голосов
/ 15 ноября 2011

Я создаю скрипт, который будет загружать несколько версий Android. Вместо того, чтобы извлекать каждый репозиторий с нуля, я хотел бы сохранить базовый репозиторий, который я могу повторно инициализировать до нужной версии перед синхронизацией (и затем скопировать результат в безопасный каталог).

Тем не менее, repo init всегда запрашивает имя и адрес электронной почты, что мешает моим попыткам написания сценариев. Я просмотрел исходный код репозитория и попробовал такие опции, как -q, но похоже, что подсказка исходит от базовых команд git.

Какие-либо предложения по выполнению репозитория init -b без взаимодействия?

Ответы [ 2 ]

3 голосов
/ 08 марта 2012

Проверенное решение: если вы задали user.name и user.email в глобальном git config, repo не будет запрашивать ваше имя / адрес электронной почты. Вы можете установить их, выполнив следующие команды git:

$ git config --global user.name 'Warren Turkal'
$ git config --global user.email 'wt@example.com'

Неопробованное возможное решение: я думаю, что вы также можете установить эти атрибуты в репозитории манифеста вместо изменения вашей глобальной конфигурации, если вы хотите, чтобы имя и адрес электронной почты были установлены только для одного репозитория репо. Для этого вы можете сделать что-то вроде следующего из корня репо:

$ cd .repo/manifests
$ git config user.name 'Warren Turkal'
$ git config user.email 'wt@example.com'
0 голосов
/ 15 ноября 2011

Почему бы просто не использовать git самостоятельно?Это гораздо более сценарий.Труба git archive к смоле на экспорт или git --work-tree=where/you/want/the/files checkout tag_name .

...