2019-06-01 21:08:41 +00:00
|
|
|
|
= Git: замена адреса подмодуля
|
2019-06-02 23:26:28 +00:00
|
|
|
|
:title-separator: {sp}|
|
2019-06-01 21:08:41 +00:00
|
|
|
|
:category: Программирование
|
|
|
|
|
:tags: программирование, git,
|
2019-04-19 18:34:58 +00:00
|
|
|
|
|
2020-04-11 16:44:15 +00:00
|
|
|
|
Если у подмодулей необходимо заменить адрес синхронизации и/или
|
|
|
|
|
имя используемой ветки, то можно отредактировать в корневом
|
|
|
|
|
каталоге проекта файл `.gitmodules` и выполнить данный скрипт:
|
2019-04-19 18:34:58 +00:00
|
|
|
|
|
2019-06-01 21:08:41 +00:00
|
|
|
|
[source,sh]
|
|
|
|
|
----
|
2020-04-11 16:44:15 +00:00
|
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
|
|
# Замена адресов для подмодулей:
|
|
|
|
|
# 1. Отредактировать файл .gitmodules
|
|
|
|
|
# 2. Запустить этот скрипт
|
|
|
|
|
#
|
|
|
|
|
# Параметры:
|
|
|
|
|
# - имя подмодуля (если присутствует, то замена
|
|
|
|
|
# адреса производится только для данного подмодуля)
|
|
|
|
|
|
|
|
|
|
M="#"
|
|
|
|
|
[ ! -z $1 ] && M="$1"
|
|
|
|
|
|
|
|
|
|
cat .gitmodules | while read s; do
|
|
|
|
|
s=${s/\*/}
|
|
|
|
|
s=${s/path = /}
|
|
|
|
|
if [ "$M" = "#" -o "x$M" = "x$s" ]; then
|
|
|
|
|
rm -rf .git/modules/$s
|
|
|
|
|
rm -rf $s
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
git submodule sync
|
|
|
|
|
git submodule update
|
2019-06-01 21:08:41 +00:00
|
|
|
|
----
|
2020-04-11 16:44:15 +00:00
|
|
|
|
|