Как создать git-репо с внешними подмодулями в сборке vNext на локальной TFS 2017? - PullRequest
0 голосов
/ 07 ноября 2018

Дано:

  1. Репо 1
  2. Репо 2
  3. Repo X - загружает Repo 1 и 2 как подмодули

Люди совершают коммиты независимо от Repo 1 и Repo 2, но никогда не делают Repo X.

Мне нужно создать сборку vNext для Repo X.

Проблема:

Никто не обновляет Repo X, т. Е. Никто не запускает следующие команды:

  1. обновление подмодуля git --recursive --remote
  2. git add.
  3. git commit "Refreshed"
  4. git push

Я не хочу, чтобы люди знали об этой детали, поэтому я хочу, чтобы сборка сделала это как первый шаг.

Однако проблема заключается в аутентификации - как сделать так, чтобы сборка аутентифицировалась на сервере TFS?

Я не хочу никакой интерактивности, даже один раз в самом начале.

Итак, я создаю имя пользователя и переменные сборки пароля (последнее является секретом), но теперь я в растерянности - как заставить их распространяться в git?

Единственная неинтерактивная опция, которую я вижу, это протокол askpass. Но это подразумевает написание некоторого кода, который кажется тривиальным, но я хотел бы избежать этого, если это возможно.

Итак, мой вопрос - есть ли лучший способ построить Repo X? Тот, который не заставляет меня манипулировать Repo X явно из самой сборки? Если нет, есть ли простой способ аутентификации на сервере TFS без какого-либо вмешательства пользователя?

...