25
26
DESCRIPTION
27
-----------
28
-Submodules allow foreign repositories to be embedded within
29
-a dedicated subdirectory of the source tree, always pointed
30
-at a particular commit.
28
+Inspects, updates and manages submodules.
29
32
-They are not to be confused with remotes, which are meant mainly
33
-for branches of the same project; submodules are meant for
34
-different projects you would like to make part of your source tree,
35
-while the history of the two projects still stays completely
36
-independent and you cannot modify the contents of the submodule
37
-from within the main project.
38
-If you want to merge the project histories and want to treat the
39
-aggregated whole as a single project from then on, you may want to
40
-add a remote for the other project and use the 'subtree' merge strategy,
41
-instead of treating the other project as a submodule. Directories
42
-that come from both projects can be cloned and checked out as a whole
43
-if you choose to go that route.
30
+A submodule allows you to keep another Git repository in a subdirectory
31
+of your repository. The other repository has its own history, which does not
32
+interfere with the history of the current repository. This can be used to
33
+have external dependencies such as third party libraries for example.
34
+
35
+When cloning or pulling a repository containing submodules however,
36
+these will not be checked out by default; the 'init' and 'update'
37
+subcommands will maintain submodules checked out and at
38
+appropriate revision in your working tree.
39
40
Submodules are composed from a so-called `gitlink` tree entry
41
in the main repository that refers to a particular commit object
46
The logical name can be used for overriding this URL within your
47
local repository configuration (see 'submodule init').
48
54
-This command will manage the tree entries and contents of the
55
-gitmodules file for you, as well as inspect the status of your
56
-submodules and update them.
57
-When adding a new submodule to the tree, the 'add' subcommand
58
-is to be used. However, when pulling a tree containing submodules,
59
-these will not be checked out by default;
60
-the 'init' and 'update' subcommands will maintain submodules
61
-checked out and at appropriate revision in your working tree.
62
-You can briefly inspect the up-to-date status of your submodules
63
-using the 'status' subcommand and get a detailed overview of the
64
-difference between the index and checkouts using the 'summary'
65
-subcommand.
66
-
49
+Submodules are not to be confused with remotes, which are other
50
+repositories of the same project; submodules are meant for
51
+different projects you would like to make part of your source tree,
52
+while the history of the two projects still stays completely
53
+independent and you cannot modify the contents of the submodule
54
+from within the main project.
55
+If you want to merge the project histories and want to treat the
56
+aggregated whole as a single project from then on, you may want to
57
+add a remote for the other project and use the 'subtree' merge strategy,
58
+instead of treating the other project as a submodule. Directories
59
+that come from both projects can be cloned and checked out as a whole
60
+if you choose to go that route.
61
62
COMMANDS
63
--------