• 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