添加-A / commit main / all子模块的简便方法

时间:2012-12-07 20:54:14

标签: git git-submodules git-commit

通过使用git add -Agit commit -a,我显然可以添加/提交我当前所在的repo的所有更改。但是,有没有办法包含 all 添加/提交中的子模块并将相同的提交消息应用于每个?

1 个答案:

答案 0 :(得分:1)

您可以使用别名。制作脚本:例如~/supercommit.sh

#!/bin/bash -e
if [ -z $1 ]; then
    echo "You need to provide a commit message"
    exit
fi

git submodule foreach git add -A .
git submodule foreach git commit -am "$1"

git add -A .
git commit -am "$1"

并将其标记为可执行文件(chmod +x)。现在,创建一个别名:

git config alias.supercommit '!~/supercommit.sh "$@"; #'

应该这样做(我会稍微测试一下)