2007-05-26 15:56:40 +02:00
|
|
|
git-submodule(1)
|
|
|
|
================
|
|
|
|
|
|
|
|
NAME
|
|
|
|
----
|
|
|
|
git-submodule - Initialize, update or inspect submodules
|
|
|
|
|
|
|
|
|
|
|
|
SYNOPSIS
|
|
|
|
--------
|
2007-07-07 02:56:31 +02:00
|
|
|
[verse]
|
2008-01-21 07:41:27 +01:00
|
|
|
'git-submodule' [--quiet] add [-b branch] [--] <repository> [<path>]
|
|
|
|
'git-submodule' [--quiet] status [--cached] [--] [<path>...]
|
2008-05-16 12:23:03 +02:00
|
|
|
'git-submodule' [--quiet] init [--] [<path>...]
|
|
|
|
'git-submodule' [--quiet] update [--init] [--] [<path>...]
|
2008-03-11 14:52:18 +01:00
|
|
|
'git-submodule' [--quiet] summary [--summary-limit <n>] [commit] [--] [<path>...]
|
2007-05-26 15:56:40 +02:00
|
|
|
|
|
|
|
|
|
|
|
COMMANDS
|
|
|
|
--------
|
2007-06-24 23:06:07 +02:00
|
|
|
add::
|
|
|
|
Add the given repository as a submodule at the given path
|
2008-03-05 02:15:02 +01:00
|
|
|
to the changeset to be committed next. If path is a valid
|
|
|
|
repository within the project, it is added as is. Otherwise,
|
|
|
|
repository is cloned at the specified path. path is added to the
|
2007-06-24 23:06:07 +02:00
|
|
|
changeset and registered in .gitmodules. If no path is
|
|
|
|
specified, the path is deduced from the repository specification.
|
2007-09-24 04:19:42 +02:00
|
|
|
If the repository url begins with ./ or ../, it is stored as
|
|
|
|
given but resolved as a relative path from the main project's
|
|
|
|
url when cloning.
|
2007-06-24 23:06:07 +02:00
|
|
|
|
2007-05-26 15:56:40 +02:00
|
|
|
status::
|
|
|
|
Show the status of the submodules. This will print the SHA-1 of the
|
|
|
|
currently checked out commit for each submodule, along with the
|
2007-12-29 07:20:38 +01:00
|
|
|
submodule path and the output of linkgit:git-describe[1] for the
|
2007-05-26 15:56:40 +02:00
|
|
|
SHA-1. Each SHA-1 will be prefixed with `-` if the submodule is not
|
|
|
|
initialized and `+` if the currently checked out submodule commit
|
|
|
|
does not match the SHA-1 found in the index of the containing
|
|
|
|
repository. This command is the default command for git-submodule.
|
|
|
|
|
|
|
|
init::
|
2007-06-06 11:13:02 +02:00
|
|
|
Initialize the submodules, i.e. register in .git/config each submodule
|
2007-07-06 19:38:38 +02:00
|
|
|
name and url found in .gitmodules. The key used in .git/config is
|
|
|
|
`submodule.$name.url`. This command does not alter existing information
|
2007-06-06 11:13:02 +02:00
|
|
|
in .git/config.
|
2007-05-26 15:56:40 +02:00
|
|
|
|
|
|
|
update::
|
2007-06-06 11:13:02 +02:00
|
|
|
Update the registered submodules, i.e. clone missing submodules and
|
|
|
|
checkout the commit specified in the index of the containing repository.
|
|
|
|
This will make the submodules HEAD be detached.
|
2008-05-16 12:23:03 +02:00
|
|
|
+
|
|
|
|
If the submodule is not yet initialized, and you just want to use the
|
|
|
|
setting as stored in .gitmodules, you can automatically initialize the
|
|
|
|
submodule with the --init option.
|
2007-05-26 15:56:40 +02:00
|
|
|
|
2008-03-11 14:52:18 +01:00
|
|
|
summary::
|
|
|
|
Show commit summary between the given commit (defaults to HEAD) and
|
|
|
|
working tree/index. For a submodule in question, a series of commits
|
|
|
|
in the submodule between the given super project commit and the
|
|
|
|
index or working tree (switched by --cached) are shown.
|
2007-05-26 15:56:40 +02:00
|
|
|
|
|
|
|
OPTIONS
|
|
|
|
-------
|
|
|
|
-q, --quiet::
|
|
|
|
Only print error messages.
|
|
|
|
|
2007-06-24 23:06:07 +02:00
|
|
|
-b, --branch::
|
|
|
|
Branch of repository to add as submodule.
|
|
|
|
|
2007-05-26 15:56:40 +02:00
|
|
|
--cached::
|
2008-03-11 14:52:18 +01:00
|
|
|
This option is only valid for status and summary commands. These
|
|
|
|
commands typically use the commit found in the submodule HEAD, but
|
|
|
|
with this option, the commit stored in the index is used instead.
|
|
|
|
|
|
|
|
-n, --summary-limit::
|
|
|
|
This option is only valid for the summary command.
|
|
|
|
Limit the summary size (number of commits shown in total).
|
2008-04-13 03:34:39 +02:00
|
|
|
Giving 0 will disable the summary; a negative number means unlimited
|
2008-03-11 14:52:18 +01:00
|
|
|
(the default). This limit only applies to modified submodules. The
|
|
|
|
size is always limited to 1 for added/deleted/typechanged submodules.
|
2007-05-26 15:56:40 +02:00
|
|
|
|
|
|
|
<path>::
|
|
|
|
Path to submodule(s). When specified this will restrict the command
|
|
|
|
to only operate on the submodules found at the specified paths.
|
|
|
|
|
|
|
|
FILES
|
|
|
|
-----
|
2007-06-06 11:13:02 +02:00
|
|
|
When initializing submodules, a .gitmodules file in the top-level directory
|
2007-05-26 15:56:40 +02:00
|
|
|
of the containing repository is used to find the url of each submodule.
|
2007-12-28 08:29:53 +01:00
|
|
|
This file should be formatted in the same way as `$GIT_DIR/config`. The key
|
2007-12-29 07:20:38 +01:00
|
|
|
to each submodule url is "submodule.$name.url". See linkgit:gitmodules[5]
|
2007-12-17 07:03:21 +01:00
|
|
|
for details.
|
2007-05-26 15:56:40 +02:00
|
|
|
|
|
|
|
|
|
|
|
AUTHOR
|
|
|
|
------
|
|
|
|
Written by Lars Hjemli <hjemli@gmail.com>
|
|
|
|
|
|
|
|
GIT
|
|
|
|
---
|
2007-12-29 07:20:38 +01:00
|
|
|
Part of the linkgit:git[7] suite
|