diff options
author | Markus Lehtonen <markus.lehtonen@linux.intel.com> | 2012-01-12 15:25:10 +0200 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2012-01-17 19:18:18 +0100 |
commit | 0c47432db776f37ceda027bf9901022df37e545d (patch) | |
tree | b184a6ebca8062bb4efd48ce0a716499a457bf51 | |
parent | 655050770a40607702ea478b9317634f181c06b7 (diff) |
Add git-depth option to gbp-clone and gbp-pull
Allows creating and deepening shallow clones. This is sometimes
useful for e.g. saving bandwidth when cloning.
-rw-r--r-- | docs/manpages/gbp-clone.sgml | 8 | ||||
-rw-r--r-- | docs/manpages/gbp-pull.sgml | 8 | ||||
-rwxr-xr-x[-rw-r--r--] | gbp/scripts/clone.py | 4 | ||||
-rwxr-xr-x[-rw-r--r--] | gbp/scripts/pull.py | 4 |
4 files changed, 22 insertions, 2 deletions
diff --git a/docs/manpages/gbp-clone.sgml b/docs/manpages/gbp-clone.sgml index 526f3f71..f4be9768 100644 --- a/docs/manpages/gbp-clone.sgml +++ b/docs/manpages/gbp-clone.sgml @@ -26,6 +26,7 @@ <arg><option>--[no-]pristine-tar</option></arg> <arg><option>--debian-branch=</option><replaceable>branch_name</replaceable></arg> <arg><option>--upstream-branch=</option><replaceable>branch_name</replaceable></arg> + <arg><option>--depth=</option><replaceable>depth</replaceable></arg> <arg choice="plain"><replaceable>remote_uri</replaceable></arg> </cmdsynopsis> </refsynopsisdiv> @@ -67,6 +68,13 @@ </listitem> </varlistentry> <varlistentry> + <term><option>--depth</option>=<replaceable>depth</replaceable> + </term> + <listitem> + <para>Git history depth, for creating shallow git clones.</para> + </listitem> + </varlistentry> + <varlistentry> <term><option>--verbose</option></term> <term><option>-v</option></term> <listitem> diff --git a/docs/manpages/gbp-pull.sgml b/docs/manpages/gbp-pull.sgml index d1a9b23c..b8dcde41 100644 --- a/docs/manpages/gbp-pull.sgml +++ b/docs/manpages/gbp-pull.sgml @@ -27,6 +27,7 @@ <arg><option>--[no-]pristine-tar</option></arg> <arg><option>--debian-branch=</option><replaceable>branch_name</replaceable></arg> <arg><option>--upstream-branch=</option><replaceable>branch_name</replaceable></arg> + <arg><option>--depth=</option><replaceable>depth</replaceable></arg> </cmdsynopsis> </refsynopsisdiv> <refsect1> @@ -74,6 +75,13 @@ </listitem> </varlistentry> <varlistentry> + <term><option>--depth</option>=<replaceable>depth</replaceable> + </term> + <listitem> + <para>Git history depth, for deepening shallow git clones.</para> + </listitem> + </varlistentry> + <varlistentry> <term><option>--verbose</option></term> <term><option>-v</option></term> <listitem> diff --git a/gbp/scripts/clone.py b/gbp/scripts/clone.py index 665b548e..2c4a93b8 100644..100755 --- a/gbp/scripts/clone.py +++ b/gbp/scripts/clone.py @@ -40,6 +40,8 @@ def parse_args (argv): branch_group.add_config_file_option(option_name="upstream-branch", dest="upstream_branch") branch_group.add_config_file_option(option_name="debian-branch", dest="debian_branch") branch_group.add_boolean_config_file_option(option_name="pristine-tar", dest="pristine_tar") + branch_group.add_option("--depth", action="store", dest="depth", default=0, + help="git history depth (for creating shallow clones)") parser.add_option("-v", "--verbose", action="store_true", dest="verbose", default=False, help="verbose command execution") @@ -70,7 +72,7 @@ def main(argv): pass try: - repo = GitRepository.clone(os.path.curdir, source) + repo = GitRepository.clone(os.path.curdir, source, options.depth) os.chdir(repo.path) # Reparse the config files of the cloned repository so we pick up the diff --git a/gbp/scripts/pull.py b/gbp/scripts/pull.py index 3502efea..face2cc1 100644..100755 --- a/gbp/scripts/pull.py +++ b/gbp/scripts/pull.py @@ -81,6 +81,8 @@ def main(argv): branch_group.add_config_file_option(option_name="upstream-branch", dest="upstream_branch") branch_group.add_config_file_option(option_name="debian-branch", dest="debian_branch") branch_group.add_boolean_config_file_option(option_name="pristine-tar", dest="pristine_tar") + branch_group.add_option("--depth", action="store", dest="depth", default=0, + help="git history depth (for deepening shallow clones)") parser.add_option("-v", "--verbose", action="store_true", dest="verbose", default=False, help="verbose command execution") parser.add_config_file_option(option_name="color", dest="color", type='tristate') @@ -112,7 +114,7 @@ def main(argv): gbp.log.err(out) raise GbpError - repo.fetch() + repo.fetch(options.depth) for branch in branches: if not fast_forward_branch(branch, repo, options): retval = 2 |