У меня есть git-хранилище, которое имеет подмодуль. Обычно я беру репо и подмодуль с тем же сообщением о фиксации. В настоящее время, когда я хочу, чтобы совершить свой репозиторий и подмодуль, я делаю следующее:commit внутри git subodule foreach
cd submodule
git add --all
git commit -m "message"
git push
cd ..
git add --all
git commit -m "message"
git push
Я хотел бы псевдоним, который позволяет мне сделать это с помощью одной команды, например,
git commit-including-submodule "blah"
Звучит просто, но у меня есть несколько проблем с псевдонимом. Ближайшим я получил следующий:
[alias]
commit-including-submodule = "!f() { \
if [ -u $1 ]; then \
echo "commit message required"; \
else \
git submodule foreach 'git add --all && git commit -m \"$1\"'; \
git add --all && git commit -m $1; \
echo "success"; \
fi; \
}; f"
Однако сообщения фиксации в подмодуле
мерзавца добавить --all & & мерзавца совершить -m "$ 1"
Да, это фактическое сообщение фиксации, которое кажется немного странным. Я не смог понять это. Кто-нибудь может помочь?
Спасибо.