{"shas":[["799a940bbc3a30d6e51285e991119cda3df89f72","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","Teach checkout the -n|--dry-run option\n\nThis option can be used to determine if checking out a branch or commit\nwould touch files which are modified in the work tree. It doesn't change\nthe work tree contents or the index, so it can only tell if the checkout\nwould succeed using trivial merges.\n\nIt can neither be used when checking out only certain paths nor together\nwith the '-m' option.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>","Jens Lehmann"],["13c571087ab5f56aed2d88112c7083a345a0ad60","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","Prepare checkout_entry() for recursive checkout of submodules\n\nThe bitfield in \"struct checkout\" gets a new member \"recurse_submodules\".\nThe new function checkout_submodule() is called by checkout_entry() when\n\"recurse_submodules\" is true.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>","Jens Lehmann"],["7e3c49157973d4fcb37349ba9c02afaeeef79f6c","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","Prepare unpack_trees() for recursive checkout of submodules\n\nTo be able to checkout submodule content the member \"recurse_submodules\"\nis added to \"struct unpack_trees_options\". In \"unpack_callback()\" it is\nused to initialize the recently introduced member with the same name in\n\"struct checkout\".\n\nWhen this flag is set verify_uptodate_1() will consider submodules whose\nHEAD differs from the commit in the superproject as modified. Even if\nthey both match, it is checked if the checkout in the submodule would\noverwrite modified files.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>","Jens Lehmann"],["d17d0678854bef7aa0225f758f902a9f78f1d94f","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","Teach checkout to recursively checkout submodules\n\nChange the default behavior of \"git checkout\" to check out populated\nsubmodules too. If the checkout would overwrite local submodule changes\nit will fail unless forced. This new default behavior can be prevented\nby using the \"--no-recurse-submodules\" option.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>","Jens Lehmann"],["46aef0a9f66e346b1d792dc892fd7ff41c2d96c4","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","Teach checkout-index the --recurse-submodules option\n\nAdd the \"--recurse-submodules\" option to \"git checkout-index\". When this\noption is used populated submodules will be checked out recursively.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>","Jens Lehmann"],["af39223156b14f7e2c88808bf2b5a45c2903159b","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","Teach read-tree the --recursive option\n\nAdd the \"--recursive\" option to \"git read-tree\". When this option is used\ntogether with -m or -u, populated submodules will be checked out\nrecursively.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>","Jens Lehmann"],["e4825db13b080b0d73cb18186fd3e91a724dc314","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","Teach reset to recursively reset submodules\n\nChange the default behavior of \"git reset --hard\" to check out populated\nsubmodules too. This can be prevented using the \"--no-recurse-submodules\"\noption.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>","Jens Lehmann"],["5ae3c166d6941e4fb5bf9c87551a09ddb8bbefc2","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","Teach merge to recursively checkout submodule merge results\n\nChange the default behavior of \"git merge\" to update the work tree of\npopulated submodules to the merge result. This can be prevented by\nusing the \"--no-recurse-submodules\" option.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>\n\nFAILING tests:\nt7403: fatal: reference is not a tree: ceab2a66e7ce260009c92b4ed0c31b48d79c223d\n       Chokes on submodule move","Jens Lehmann"],["45e6b0daaffbe8e49f043a83757be8d8ce8007fa","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","git gui: Use the --recurse-submodules option for read-tree when available\n\nSince version 1.8.0 git supports the \"--recurse-submodules\" option for the\nread-tree command to update populated submodules too. Use this option when\nwe find a git version new enough to support this. Now checking out\nbranches and resetting after a failed merge will update submodules work\ntrees too unless that would overwrite local changes.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>","Jens Lehmann"],["7941f02ca2da1b449dcf97908ff1824ab2fc1022","3a81d01482cca860e4077eb409d7db78ebdc6f24@web.de","git gui: Use the --recurse-submodules option for checkout-index when available\n\nSince version 1.8.0 git supports the \"--recurse-submodules\" option for the\ncheckout-index command to update populated submodules too. Use this option\nwhen we find a git version new enough to support this. Now checking out\nbranches and resetting after a failed merge will update submodules work\ntrees too unless that would overwrite local changes.\n\nSigned-off-by: Jens Lehmann <Jens.Lehmann@web.de>","Jens Lehmann"]],"repo":"jlehmann/git-submod-enhancements","actor":"jlehmann","ref":"refs/heads/git-checkout-recurse-submodules","size":10,"head":"7941f02ca2da1b449dcf97908ff1824ab2fc1022","actor_gravatar":"68cb11dd951afa51dc3a612d6535e4f5","push_id":30751569}