1
0
mirror of https://github.com/git/git.git synced 2024-10-04 09:51:30 +02:00
git/Documentation/git-submodule.txt
Lars Hjemli 70c7ac22de Add git-submodule command
This command can be used to initialize, update and inspect submodules. It
uses a .gitmodules file, readable by git-config, in the top level directory
of the 'superproject' to specify a mapping between submodule paths and
repository url.

Example .gitmodules layout:

[module "git"]
	url = git://git.kernel.org/pub/scm/git/git.git

With this entry in .gitmodules (and a commit reference in the index entry for
the path "git"), the command 'git submodule init' will clone the repository
at kernel.org into the directory "git".

Known issues
============
There is currently no way to override the url found in the .gitmodules file,
except by manually creating the subproject repository. The place to fix this
in the script has a rather long comment about a possible plan.

Funny paths will be quoted in the output from git-ls-files, but git-submodule
does not attempt to unquote (or even detect the presence of) such paths.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-26 20:24:07 -07:00

66 lines
1.8 KiB
Plaintext

git-submodule(1)
================
NAME
----
git-submodule - Initialize, update or inspect submodules
SYNOPSIS
--------
'git-submodule' [--quiet] [--cached] [status|init|update] [--] [<path>...]
COMMANDS
--------
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
submodule path and the output of gitlink:git-describe[1] for the
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::
Initialize the submodules, i.e. clone the git repositories specified
in the .gitmodules file and checkout the submodule commits specified
in the index of the containing repository. This will make the
submodules HEAD be detached.
update::
Update the initialized submodules, i.e. checkout the submodule commits
specified in the index of the containing repository. This will make
the submodules HEAD be detached.
OPTIONS
-------
-q, --quiet::
Only print error messages.
--cached::
Display the SHA-1 stored in the index, not the SHA-1 of the currently
checked out submodule commit. This option is only valid for the
status command.
<path>::
Path to submodule(s). When specified this will restrict the command
to only operate on the submodules found at the specified paths.
FILES
-----
When cloning submodules, a .gitmodules file in the top-level directory
of the containing repository is used to find the url of each submodule.
This file should be formatted in the same way as $GIR_DIR/config. The key
to each submodule url is "module.$path.url".
AUTHOR
------
Written by Lars Hjemli <hjemli@gmail.com>
GIT
---
Part of the gitlink:git[7] suite