aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs/manpages/gbp-clone.xml
blob: 11a93434fc19395acdba2e3974222c4e4f2199a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
<refentry id="man.gbp.clone">
  <refentryinfo>
    <address>
      &dhemail;
    </address>
    <author>
      &dhfirstname;
      &dhsurname;
    </author>
  </refentryinfo>
  <refmeta>
   <refentrytitle>gbp-clone</refentrytitle>
    &dhsection;
  </refmeta>
  <refnamediv>
    <refname>gbp-clone</refname>

    <refpurpose>Clone a repository from remote</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <cmdsynopsis>
      &gbp-clone;

      &man.common.options.synopsis;
      <arg><option>--all</option></arg>
      <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><option>--reference=</option><replaceable>repository</replaceable></arg>
      <arg><option>--postclone=</option><replaceable>COMMAND</replaceable></arg>
      <arg><option>--[no-]hooks</option></arg>
      <arg><option>--repo-user=</option><option>[GIT|DEBIAN]</option></arg>
      <arg><option>--repo-email=</option><option>[GIT|DEBIAN]</option></arg>
      <arg choice="plain"><replaceable>repository</replaceable></arg>
      <arg><replaceable>directory</replaceable></arg>
    </cmdsynopsis>
  </refsynopsisdiv>
  <refsect1>
    <title>DESCRIPTION</title>
    <para>
    &gbp-clone; clones a remote repository and sets up tracking branches for
    the <emphasis>debian</emphasis>, <emphasis>upstream</emphasis> and
    <emphasis>pristine-tar</emphasis> branches. This way you can easily update
    later using &gbp-pull;.
    </para>
  </refsect1>
  <refsect1>
    <title>OPTIONS</title>

    <variablelist>
      &man.common.options.description;

      <varlistentry>
        <term><option>--all</option>
        </term>
        <listitem>
	  <para>Track all branches, not only <replaceable>debian</replaceable>
	  and <replaceable>upstream</replaceable>.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option>--debian-branch</option>=<replaceable>branch_name</replaceable>
        </term>
        <listitem>
	  <para>The branch in the Git repository the Debian package is being
	  developed on, default is <replaceable>master</replaceable>.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option>--upstream-branch</option>=<replaceable>branch_name</replaceable>
        </term>
        <listitem>
	  <para>The branch in the &git; repository the upstream sources are put
	  onto. Default is <replaceable>upstream</replaceable>.</para>
        </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>--reference</option>=<replaceable>repository</replaceable>
        </term>
        <listitem>
          <para>Local repository to use as alternate instead of re-copying data from remote repository.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option>--pristine-tar</option>
        </term>
        <listitem>
          <para>Track pristine tar branch.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
	<term><option>--[no-]hooks</option></term>
	<listitem>
          <para>
            Enable running hooks.
          </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><option>--postclone=</option><replaceable>COMMAND</replaceable></term>
	<listitem>
          <para>
            Execute <replaceable>COMMAND</replaceable> after cloning the source
            from the remote.
          </para>
          <para>
            Exported environment variables are: <envar>GBP_GIT_DIR</envar> (the
            repository the package is being built from).
          </para>
	  <para>Note that if you clone a repository that contains a
	    hook configuration in <filename>debian/gbp.conf</filename>
	    this hook will not be run automatically to prevent execution
	    of untrusted code.
	  </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><option>--repo-email=</option><option>[GIT|DEBIAN]</option></term>
        <listitem>
          <para>
	    When set to <option>DEBIAN</option>
	    use the <envar>DEBEMAIL</envar> environment variable to set the
	    user.email &git; configuration otherwise use &git;'s
	    defaults.
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
	<term><option>--repo-user=</option><option>[GIT|DEBIAN]</option></term>
        <listitem>
          <para>
	    When set to <option>DEBIAN</option>
	    use the <envar>DEBUSER</envar> environment variable to set the
	    user.name &git; configuration otherwise use &git;'s
	    defaults.
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
	<term><replaceable>repository</replaceable></term>
	<listitem>
          <para>
	    The (possibly remote) repository to clone from. This is
	    usually a &git; URL but some shortcuts are supported (see below).
          </para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><replaceable>directory</replaceable></term>
	<listitem>
          <para>
	    The directory to clone to.
          </para>
	</listitem>
      </varlistentry>
    </variablelist>
  </refsect1>
    <refsect1>
    <title>EXAMPLES</title>
    <para>
      Clone a repository and setup a tracking branch for pristine-tar
      as well:
    </para>
    <screen>
      &gbp-clone; --pristine-tar git://honk.sigxcpu.org/git/git-buildpackage.git</screen>
    <para>
      Clone from the <emphasis>Git-Vcs</emphasis> URL of a package:
    </para>
    <screen>
      &gbp-clone; vcsgit:libvirt</screen>
    <para>
      Clone from a github repository:
    </para>
    <screen>
      &gbp-clone; github:agx/git-buildpackage</screen>
  </refsect1>
  <refsect1>
      &man.gbp.config-files;
  </refsect1>
  <refsect1>
    <title>SEE ALSO</title>
    <para>
      <xref linkend="man.gbp.buildpackage"/>,
      <xref linkend="man.gbp.pull"/>,
      <xref linkend="man.gbp.conf"/>
    </para>
  </refsect1>
  <refsect1>
    <title>AUTHOR</title>

    <para>&dhusername; &dhemail;</para>

  </refsect1>
</refentry>