Pull all submodules changes in GIT

Before getting changes from GIT server, it would be good to have the modules checked-out on the branch you’re working on:

git submodule foreach git checkout master

Pull all changes for all submodules for a GIT project:

git submodule foreach git pull origin master

Another approach that I use lately, and it’s working great:

git submodule update —-init —-remote

You could also try:

git submodule update —-recursive
git pull —-recurse-submodules

Another version that I’ve seen recently, but could not advice yet why it would be better than previous ones:

git pull —-rebase && git submodule update —-remote

After getting changes from the server, some modules might loose the check-out from the working branch, so you might need to checkout it again.

Note 1: Credits go to StackOverflow, IT blogs and alike, sites that helped me with the code when searching for solutions.
Note 2: Be aware that when copy-pasting, the quotes and possibly other characters get messed up by WordPress, you’ll have to replace them.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: