Javicle - a JSON Video Composition Language
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

use_https_submodules 910 B

12345678910111213141516171819202122232425
  1. #!/bin/bash
  2. #
  3. # Update .gitmodules file to use HTTPS URLs instead of SSH URLs for git submodules
  4. #
  5. SCRIPT_DIR="$(cd "$(dirname "${0}")" && pwd)"
  6. GIT_MODS="${SCRIPT_DIR}/../.gitmodules"
  7. GIT_TEMP_FILE="$(mktemp "${GIT_MODS}.XXXXXXX")"
  8. CHANGED_MARKER="${GIT_TEMP_FILE}.use"
  9. cat "${GIT_MODS}" | while read -r line; do
  10. if [[ $(echo "${line}" | grep -c 'url = ') -gt 0 && $(echo "${line}" | grep -c 'git@git') -gt 0 ]]; then
  11. REPO="$(echo "${line}" | awk -F ':' '{print $2}')"
  12. echo "url = https://git.bubblev.org/${REPO}" | tee -a "${GIT_TEMP_FILE}"
  13. touch "${CHANGED_MARKER}"
  14. else
  15. echo "${line}" | tee -a "${GIT_TEMP_FILE}"
  16. fi
  17. done
  18. if [[ -f "${CHANGED_MARKER}" ]]; then
  19. cd "${SCRIPT_DIR}/.." && \
  20. git update-index --assume-unchanged "$(basename "${GIT_MODS}")" && \
  21. mv "${GIT_TEMP_FILE}" "${GIT_MODS}" || \
  22. echo "$0: error updating file: ${GIT_MODS}"
  23. fi
  24. rm -f "${CHANGED_MARKER}"