2017-01-24 7 views
0

У меня есть файл манифестаИнструмент репо. отправить теги, соответствующие Manifest.xml

<?xml version="1.0" encoding="UTF-8"?> 
<manifest> 
    <remote fetch=".." name="origin" review="nda.com"/> 

    <default remote="origin" revision="release/nda/phase3" sync-j="4"/> 

    <project name="nda-nda" revision="6f76200b8ab9fed4f52c4f58ae36b722dabc1116" upstream="phase2"/> 
    <project name="ndda" revision="f849e04438191616bd8b39367249ba2b4824111c" upstream="phase2"/> 
    <project name="nda/guidance-tests" path="tools/guidance-tests" revision="37751838644275ee87d01f604b49f0af64fe4f31" upstream="nda2"/> 
    <project name="auto-character-recognition" revision="2ea1ffc90185a00abfd621ae58919b728503d975" upstream="release/nda/phase3"/> 
    <project name="auto-tools" revision="c3db989d8959a20f11c872af25dc655a02a18e49" upstream="master"/> 
    <project name="cdvox/nda-nvp" path="nda-nvp" revision="6a7aed71adf71b90c5192b521523a401abdd800c" upstream="phase2"/> 
    <project name="external/googlenda" revision="1e932a2dd63b572bc19b7be6811b02a6336b8db9" upstream="release/nda/phase3"/> 
    <project name="external/rapidjson" revision="a717a565e55da510a43ad1546797196d9071c41e" upstream="release/nda/phase3"/> 
    <project name="mobility-graph" path="ndda/core/myndda/" revision="bb530f2a425b6e27ece6617fe9ca309d62024c9c" upstream="nda-phase2"/> 
    <project name="nda/main" path="nda" revision="95e5ebcf0fb339a78bd176566e9926a54ad1e0aa" upstream="nda2"/> 
    <project name="nda/nda-config" path="nda_config" revision="246a0b74c773b4e6d3082eb11cef2643e7dddb73" upstream="release/nda/phase3"/> 
    <project name="nda/ndaing/libev" path="ndaing/ev" revision="fa705c3882d0df14a795d980494e7765d8871594" upstream="release/nda/phase3"/> 
    <project name="nda/ndaing/libisoline" path="ndaing/isoline" revision="788627f319c88d189aa8ba56676cc19d20fd139a" upstream="release/nda/phase3"/> 
    <project name="nda/wxtest/resources" path="nda/apps/wxtest/external/resources" revision="096fec72874f82b228f095e3941f839934127976" upstream="release/nda/phase3"/> 
    <project name="nda/Integration" path="Integration" revision="2464df763d90bb36a221118f5b96fe23a770739f" upstream="phase2"/> 
    <project name="nda/IntegrationSimulator" path="IntegrationSimulator" revision="3287873f47182070e405bc993911d3bd55af6600" upstream="phase2"/> 
    <project name="nda/Tools" path="Tools" revision="8896d6994bc2d07d87adafbbcd9ba68679fb5564" upstream="phase3"/> 
    <project name="nda/qhttpserver" path="qhttpserver" revision="4462f71cc480c22ae5a9880813402183e1761533" upstream="release/nda/phase3"/> 
    <project name="nda/sqlcipher" path="sqlcipher" revision="bcf4e1c713bbefc56c2aeaebefcae6c2a3d4e375" upstream="release/nda/phase3"/> 
</manifest> 

мой Баш скрипт

mkdir -p ~/bin 
PATH=~/bin:$PATH 
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo 
chmod a+x ~/bin/repo 

rm -rf Auto-tools 


sed -i 's/".."/"ssh:\/\/[email protected]_nda_server:29418"/g' manifest.xml 
repo forall -c git tag -a $TAG_NAME -m "${TAG_NAME}" && git push origin 

но получить

Git 2.0 от 'соответствия' на 'простой'. Для того, чтобы растоптать это сообщение и поддерживать традиционное поведение, используйте:

мерзавца конфигурации --global push.default соответствие

Чтобы растоптать это сообщение и принять новое поведение в настоящее время, использование:

GIT конфигурации - -global push.default simple

Когда push.default установлен в «соответствие», git будет толкать локальные ветви в удаленные ветви, которые уже существуют с тем же именем.

С Git 2.0, Git по умолчанию более консервативного «простого» поведения, которое только выталкивает текущую ветвь к соответствующему удаленной ветви, «мерзавцу тянуть» использует для обновления текущей ветви.

См. «Git help config» и найдите «push.default» для дальнейшей информации . (Режим «простой» был введен в Git 1.7.11 Используйте подобный режим «текущие» вместо «простого», если вы иногда использовать старые версию Git.)

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

git push --set-upstream origin master 

Построить шаг «Условные действия (несколько)» отмечены строить как отказ

Также пробовал:

репо ForAll -c git config --global push.default соответствие и repo forall -c git config --global push.default simple

, но получил то же самое

Пожалуйста, помогите мне отправить теги ко всем хранилищам на appropriateto manifest.xml commit.

Благодаря

+0

Если вы хотите нажать все теги на пульте дистанционного управления, вы должны использовать '--tags' для' git push'. Например, «git push origin --tags». –

+0

Вы решили его, добавив --tag для 'git push' в ваш файл manifest.xml? –

ответ

0

со смертельным исходом: Текущий мастер филиал не имеет вверх по течению ветви.

Это ключевой вопрос о вашем вопросе, я думаю.

не После запуска repo sync, локальный репозиторий находится в detached header состояния, нет какой-либо выше информации для каждого из вашей локальной ветви, так что мерзавец не знает, какая удаленный филиал должна нажать на и показать свое сообщение об ошибке.

вы должны запустить git checkout --track для переключения ветви локального хранилища, прежде чем запускать git push origin.

Смежные вопросы