Why are submodules not automatically handled by default or at least configurable to do so?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I found that I use submodules much, much more often in my git projects than I used externals
in Subversion and the reason is that git encourages/forces to organize large projects into
smaller repositories, one reason for this being that subversion allows to check out parts of 
a repository while git does not.

But when I clone a git repository with subprojects, I (and everyone else) has to remember to
add the --recursive option. When switching between branches with different versions/commits of the 
submodules everyone has to remember to update the submodules. When updating a submodule 
everyone has to remember to recurse there too. 

Basically, everything with submodules has to be done manually every time and there seems 
to be no way to change that default.

Why is that? Basically all the time I use submodules I would want automatic handling of 
submodules to happen and I cannot  remember having had a single situation where I would 
not have wanted it to happen. So  why does git default to doing nothing? 
Why does it not provide a way to enable automatic
pulling/updating of submodules e.g. when cloning or switching branches?
When would people routinely check out a branch and want to stay with the submodules as 
the have been checked out for the old branch?

I honestly do not understand it. 

John

____________________________________________________________
Can't remember your password? Do you need a strong and secure password?
Use Password manager! It stores your passwords & protects your account.
Check it out at http://mysecurelogon.com/manager


--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]