Với Git 2.25 (Q1 2020), bạn có thể sửa đổi nó.
Xem " Thay đổi url mô hình con Git " và lệnh mới
git submodule set-url [--] <path> <newurl>
Câu trả lời gốc (tháng 5 năm 2009, mười năm trước)
Trên thực tế, một bản vá đã được đệ trình vào tháng 4 năm 2009 để làm rõ gitmodule
vai trò.
Vì vậy, bây giờ tài liệu gitmodule chưa bao gồm:
Các .gitmodules
tập tin, nằm trong thư mục cấp cao nhất của một cây làm việc git, là một tập tin văn bản với một cú pháp phù hợp với các yêu cầu notice linkgit: git-config 1 .
[MỚI]:
Vì tệp này được quản lý bởi Git, nó theo dõi các bản ghi + của các mô hình con của dự án.
Thông tin được lưu trữ trong tệp này được sử dụng như một gợi ý để đánh dấu phiên bản có thẩm quyền của bản ghi được lưu trữ trong tệp cấu hình dự án.
Nên thay đổi bản ghi cụ thể của người dùng (ví dụ: để tính sự khác biệt trong URL của mô hình con do tình huống kết nối mạng) đối với tệp cấu hình, trong khi các thay đổi bản ghi sẽ được lan truyền (ví dụ + do di chuyển nguồn mô hình con) nên được thực hiện cho tệp này .
Điều đó khá nhiều xác nhận câu trả lời của Jim .
Nếu bạn làm theo hướng dẫn mô hình con git này , bạn sẽ thấy bạn cần một " git submodule init
" để thêm URL kho lưu trữ mô hình con vào .git / config.
" git submodule sync
" Đã được thêm chính xác vào tháng 8 năm 2008 để thực hiện công việc đó dễ dàng hơn khi URL thay đổi (đặc biệt nếu số lượng mô hình con là quan trọng).
Tập lệnh liên kết với lệnh đó đủ đơn giản:
module_list "$@" |
while read mode sha1 stage path
do
name=$(module_name "$path")
url=$(git config -f .gitmodules --get submodule."$name".url)
if test -e "$path"/.git
then
(
unset GIT_DIR
cd "$path"
remote=$(get_default_remote)
say "Synchronizing submodule url for '$name'"
git config remote."$remote".url "$url"
)
fi
done
Mục tiêu vẫn là: git config remote."$remote".url "$url"
git submodule set-url [--] <path> <newurl>