Проверка ветки удаленного отслеживания субмодулей с помощью скрипта bash - PullRequest
0 голосов
/ 27 мая 2020
• 1000 у субмодулей нет восходящей ветки. Поэтому я добавляю в скрипт проверку, чтобы увидеть, исправлены ли ветки восходящего потока. Может ли кто-нибудь проверить его правильность?
BRANCH=`git rev-parse --abbrev-ref HEAD`

#check remote of parent 
REMOTE="$(git config "BRANCH.${BRANCH}.remote")"
UPSTREAM=`git status -b --porcelain=v2 | grep -m 1 "^# branch.upstream " | cut -d " " -f 3-`

if [[ "$UPSTREAM" == "$REMOTE/$BRANCH" ]]; then
      echo "MAIN: ${BRANCH} is tracking ${UPSTREAM}"
  else
    echo "MAIN: CHECK UPSTREAM!!!"
    exit 1;
fi

# Now go to each submodule and check remote
SUBMODULES=($(git submodule | awk '{print $2}'))
for SUBMODULE in "${SUBMODULES[@]}"; do
  pushd $SUBMODULE > /dev/null

  REMOTE="$(git config "BRANCH.${BRANCH}.remote")"
  UPSTREAM=`git status -b --porcelain=v2 | grep -m 1 "^# branch.upstream " | cut -d " " -f 3-`

  if [[ "$UPSTREAM" == "$REMOTE/$BRANCH" ]]; then
      echo "in submodule $SUBMODULE: ${BRANCH} is tracking ${UPSTREAM}"
  else
    echo "CHECK UPSTREAM!!!"
    exit 1;
  fi
popd > /dev/null
done
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...