hachyderm.io is one of the many independent Mastodon servers you can use to participate in the fediverse.
Hachyderm is a safe space, LGBTQIA+ and BLM, primarily comprised of tech industry professionals world wide. Note that many non-user account types have restrictions - please see our About page.

Administered by:

Server stats:

8.9K
active users

Brian Campbell

@b0rk Oh, hey, I was the person who suggested those submodule options. For some explanation:

status.submoduleSummary true
diff.submodule log

These make "git status" and "git diff" display some more useful information on how things differ in submodules. By default, you would only see something that indicates that they differ, giving the two commit hashes that differ between them. This causes them to list the commits that differ. Screenshots to show the difference.

@unlambda mind if I link to this in the post?

@b0rk Feel free to either link or incorporate any of my explanation into your post!

@b0rk
submodule.recurse true

This causes most operations, like git checkout, fetch, pull, push, etc. to automatically recurse into submodules.

Without this, any time you do anything in a repo that has submodules, like switching branches, you also need to remember to run git submodule update in order to also update the submodules, or you need to go into each submodule to push their changes. If you forget, you can easily confuse yourself when submodules are out of sync.

@b0rk The recurse setting is something you might want to be more careful about, because it will do a lot more at once; there are other settings that will cause certain operations to recurse but not others.

But overall, I've found it to be more helpful, it really reduces the friction I feel when I work with submodules.

@unlambda @b0rk This is SO helpful, we use submodules a lot at my work, thank you.