1TITO(8) Tito User Manual TITO(8)
2
3
4
6 tito - manage RPM based projects using git
7
9 tito init
10
11 tito tag [OPTIONS]
12
13 tito build --test --rpm
14
15 tito build [OPTIONS]
16
17 tito report
18
20 After setting up a directory as a Git repo, use tito to manage the tags
21 and builds. A simple workflow may look like:
22
23 1. Save user preferences as described in titorc(5)
24
25 2. Initialize a rel-eng directory
26
27 3. Test
28
29 1. Make changes to source
30
31 2. Use git to commit changes
32
33 3. Build: tito build --rpm --test
34
35 4. Finalize a release
36
37 1. Tag: tito tag
38
39 2. Push: git push && git push --tags
40
41 3. Build: tito build [OPTIONS]
42
44 tito init
45 This will create a top-level metadata directory called "rel-eng/" and
46 commit it to git. This directory will store tito’s configuration and
47 package metadata on a per branch basis. It will be filtered out when
48 creating .tar.gz’s.
49
50 Note
51 Your spec file should list the source as %{name}-%{version}.tar.gz
52
53 tito tag [options]
54 By default, tito will tag by bumping the rpm version (i.e. we bump the
55 Z in X.Y.Z). If you’d prefer to bump the package release instead
56 (normally should just be used for changes to the spec file or patches
57 applied within it), you can change the default_tagger class in
58 rel-eng/tito.props to ReleaseTagger. This will affect all packages in
59 this git branch; if you’d prefer to do this on a per-package basis you
60 can do so in a package specific tito.props.
61
62 -h, --help
63 show this help message and exit
64
65 --debug
66 print debug messages
67
68 --offline
69 do not attempt any remote communication (avoid using this please)
70
71 -o OUTPUTDIR, --output=OUTPUTDIR
72 Write temp files, tarballs, and RPMs to OUTPUTDIR. Create
73 sub-directories as needed by rpmbuild(8). (default /tmp/tito)
74
75 --tag-release
76 Deprecated, no longer required.
77
78 --keep-version
79 Use spec file version/release exactly as specified in spec file to
80 tag package.
81
82 --no-auto-changelog
83 Don’t automatically create a changelog entry for this tag if none
84 is found
85
86 --accept-auto-changelog
87 Automatically accept the generated changelog.
88
89 --auto-changelog-message=MESSAGE
90 Use MESSAGE as the default changelog message for new packages
91
92 -u, --undo
93 Undo the most recent (un-pushed) tag.
94
95 tito build [options]
96 -h, --help
97 show this help message and exit
98
99 --debug
100 print debug messages
101
102 --offline
103 do not attempt any remote communication (avoid using this please)
104
105 -o OUTPUTDIR, --output=OUTPUTDIR
106 Write temp files, tarballs and RPMs to OUTPUTDIR. (default
107 /tmp/tito)
108
109 --tgz
110 Build .tar.gz
111
112 --srpm
113 Build srpm
114
115 --rpm
116 Build srpm and rpm
117
118 -i, --install
119 Install any binary RPMs being built.
120
121 Warning
122 uses sudo rpm -Uvh --force
123
124 --dist=DISTTAG
125 Apply DISTTAG to srpm and/or rpm. (e.g., ".el5")
126
127 --test
128 use current branch HEAD instead of latest package tag.
129
130 --no-cleanup
131 do not clean up temporary build directories/files
132
133 --list-tags
134 List tags for which we build this package. If you set --debug
135 together with this option, you will see all tags and whether they
136 are whitelisted or blacklisted.
137
138 --only-tags=KOJI_TAG
139 Build in koji only for specified tags. Can be specified multiple
140 times.
141
142 --upload-new-source=CVS_NEW_SOURCES
143 Upload a new source tarball to CVS lookaside. (i.e. runs make
144 new-sources) Must be used until sources file is committed to CVS.
145
146 --rpmbuild-options=OPTIONS
147 Pass OPTIONS to rpmbuild.
148
149 --builder=BUILDER
150 Override the normal builder by specifying a full class path or one
151 of the pre-configured shortcuts. Only useful if you need to
152 override the default builder for some purpose, such as testing a
153 build via mock.
154
155 --builder-arg=BUILDER_ARGS
156 Custom arguments specific to a particular builder. (key=value)
157
158 tito release [options] TARGETS
159 Runs the release targets defined in rel-eng/releasers.conf.
160
161 -h, --help
162 show this help message and exit
163
164 --debug
165 print debug messages
166
167 --offline
168 do not attempt any remote communication (avoid using this please)
169
170 -o OUTPUTDIR, --output=OUTPUTDIR
171 Write temp files, tarballs and RPMs to OUTPUTDIR. (default
172 /tmp/tito)
173
174 --tag=PKGTAG
175 build a specific tag instead of the latest version (e.g.,
176 spacewalk-java-0.4.0-1)
177
178 --dry-run
179 Do not actually commit/push anything during release.
180
181 --all
182 Run all release targets defined in rel-eng/releasers.conf.
183
184 --list
185 List all release targets defined in rel-eng/releasers.conf.
186
187 --all-starting-with=ALL_STARTING_WITH
188 Run all release targets starting with the given string. (i.e. if
189 you have defined release targets yum-f15 and yum-f14 in
190 releasers.conf, --all-starting-with=yum will run only these
191 targets, and ignore any others.)
192
193 tito report
194 Display a report of all packages with differences between HEAD and
195 their most recent tag, as well as a patch for that diff. Used to
196 determine which packages are in need of a rebuild.
197
199 Build and install a test package from the latest code in current git
200 HEAD
201 tito build --rpm --test -i
202
203 Overriding the default builder to build via mock instead
204 tito build --builder mock --builder-arg mock=fedora-15-x86_64 --rpm
205
207 titorc(5) releasers.conf(5) tito.props(5)
208
209 /usr/share/doc/tito-*/README.mkd
210
212 Devan Goodwin <dgoodwin@rm-rf.ca>
213
214 James Bowes <jbowes@repl.ca>
215
216 Jan Pazdziora
217
218 Jesus M Rodriguez <jesusr@redhat.com>
219
220 Miroslav Suchý <msuchy@redhat.com>
221
222
223
224tito 11/16/2011 TITO(8)