2015-09-08 28 views
5

tôi cần phải chạy lệnh:thiết lập một cấu hình Git đệ quy cho tất cả các môđun con

git config core.filemode false 

Vấn đề là tôi có một vài dự án có ít nhất mười submodules mỗi. Đối với một số lý do, tất cả các submodules có giá trị được đặt thành true vì vậy tôi sẽ phải xóa/cập nhật cấu hình đó theo cách thủ công.

Có cách nào để yêu cầu Git đặt giá trị cấu hình cho tất cả các mô-đun con không?

Hoặc loại bỏ nó khỏi các mô-đun con để cài đặt chứa repo không bị ghi đè?

Trả lời

6

Bạn có thể sử dụng lệnh git submodule foreach cho việc này: https://www.kernel.org/pub/software/scm/git/docs/v1.6.1.3/git-submodule.html

Bạn có thể cung cấp một lệnh shell tùy ý như một tham số, trong trường hợp của bạn như thế này:

git submodule foreach --recursive git config core.filemode false 

này sẽ thực hiện git config core.filemode false trong mỗi các submodules của repo Git hiện tại.

+0

Điều này có thể được áp dụng cho rất nhiều thứ, hoàn hảo, cảm ơn! –

+1

Điều này không áp dụng cho các mô-đun con ở độ sâu ≥ 2 (mô-đun con của mô-đun con.) Do đó '--recursive' phải được thêm vào →' git submodule foreach --recitive git config core.filemode false'. – wottpal

+0

Cảm ơn, đã thêm vào câu trả lời. – nwinkler

Các vấn đề liên quan