回购工具。发送适合 manifest.xml 的标签

Repo tool. send tags appropriate to 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>

我的bash脚本

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:\/\/my_nda_user@my_nda_server:29418"/g' manifest.xml
repo forall -c git tag -a $TAG_NAME -m "${TAG_NAME}" && git push origin

但得到

Git 2.0 from 'matching' to 'simple'. To squelch this message and maintain the traditional behavior, use:

git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

git config --global push.default simple

When push.default is set to 'matching', git will push local branches to the remote branches that already exist with the same name.

Since Git 2.0, Git defaults to the more conservative 'simple' behavior, which only pushes the current branch to the corresponding remote branch that 'git pull' uses to update the current branch.

See 'git help config' and search for 'push.default' for further information. (the 'simple' mode was introduced in Git 1.7.11. Use the similar mode 'current' instead of 'simple' if you sometimes use older versions of Git)

fatal: The current branch master has no upstream branch. To push the current branch and set the remote as upstream, use

git push --set-upstream origin master

Build step 'Conditional steps (multiple)' marked build as failure

也在尝试:

repo forall -c git config --global push.default 匹配 和 repo forall -c git config --global push.default simple

但还是一样

请帮助我将标签发送到适当的所有存储库 manifest.xml 提交。

谢谢

fatal: The current branch master has no upstream branch.

我认为这是你的问题的关键问题。

在你 运行 repo sync 之后,你的本地 git 存储库处于 detached header 状态,你的每个本地分支都没有任何上游信息,所以 git不知道应该推送到哪个远程分支,显示你的错误信息。

你应该运行 git checkout --track 在 运行 git push origin.

之前先切换本地仓库的分支