1 %define gitexecdir %{_libexecdir}/git
7 Summary: Fast, scalable, distributed revision control system
8 Url: http://git-scm.com
9 Group: Development/Tools
10 Source: %{name}-%{version}.tar.gz
11 Source1001: git.manifest
12 BuildRequires: asciidoc
14 BuildRequires: expat-devel
16 BuildRequires: gettext-tools
17 BuildRequires: libcurl-devel
18 BuildRequires: libopenssl-devel
19 BuildRequires: perl-Error
22 Requires: git-core = %{version}
25 Git is a fast, scalable, distributed revision control system with an
26 unusually rich command set that provides both high-level operations and
27 full access to internals.
29 This package itself only provides the README of git but with the
30 packages it requires, it brings you a complete Git environment
31 including GTK and email interfaces and tools for importing source code
32 repositories from other revision control systems such as subversion,
36 Summary: Core git tools
37 Group: Development/Tools
41 Requires: perl = %{perl_version}
45 Git is a fast, scalable, distributed revision control system with an
46 unusually rich command set that provides both high-level operations and
47 full access to internals.
49 These are the core tools with minimal dependencies.
52 Summary: Git tools for importing Subversion repositories
53 Group: Development/Tools
54 Requires: git-core = %{version}
56 Requires: subversion-perl
59 Tools for importing Subversion repositories to the Git version control
63 Summary: Git tools for importing CVS repositories
64 Group: Development/Tools
67 Requires: git-core = %{version}
68 Requires: perl-DBD-SQLite
71 Tools for importing CVS repositories to the Git version control system.
74 Summary: Git tools for importing Arch repositories
75 Group: Development/Tools
76 Requires: git-core = %{version}
80 Tools for importing GNU Arch repositories to the GIT version control
84 Summary: Git tools for sending email
85 Group: Development/Tools
86 Requires: git-core = %{version}
87 # For sending mails over secure SMTP:
88 Recommends: perl-Authen-SASL
89 Recommends: perl-Net-SMTP-SSL
92 Email interface for the GIT version control system.
95 Summary: Simple Server for Git Repositories
96 Group: Development/Tools
97 Requires(pre): /usr/sbin/useradd
98 Requires: git-core = %{version}
101 A really simple TCP git daemon. In the default configuration it allows
102 read only access to repositories in /srv/git/ that contain the
103 'git-daemon-export-ok' file.
105 Summary: Git revision tree visualiser
106 Group: Development/Tools
107 Requires: git-core = %{version}
109 Supplements: packageand(git-core:tk)
112 Grapical tool for visualization of revision trees of projects
113 maintained in the Git version control system. It name gitk indicates
114 that it's written using the Tk Widget set.
116 A simple Tk based graphical interface for common Git operations is
117 found in the package git-gui.
120 Summary: Grapical tool for common git operations
121 Group: Development/Tools
122 Requires: git-core = %{version}
124 Supplements: packageand(git-core:tk)
127 A Tcl/Tk based graphical user interface to Git. git-gui focuses on
128 allowing users to make changes to their repository by making new
129 commits, amending existing ones, creating branches, performing local
130 merges, and fetching/pushing to remote repositories.
132 Unlike gitk, git-gui focuses on commit generation and single file
133 annotation, and does not show project history. It does however supply
134 menu actions to start a gitk session from within git-gui.
137 Summary: Git Web Interface
138 Group: Development/Tools
139 Requires: git-core = %{version}
140 Supplements: packageand(git-core:apache2)
143 CGI script that allows browsing git repositories via web interface.
145 The apache2 configuration contained in this package installs a virtual
146 directory /git/ that calls the cgi script.
148 %package remote-helpers
149 Summary: Python package for remote helper scripts
150 Group: Development/Tools
151 Requires: git-core = %{version}
154 %description remote-helpers
155 This package contains the building blocks for remote helpers written in Python.
164 make %{?_smp_mflags} CFLAGS="%{optflags}" \
165 GITWEB_CONFIG="/etc/gitweb.conf" \
166 GITWEB_PROJECTROOT="/srv/git" \
167 WITH_OWN_SUBPROCESS_PY=YesPlease \
168 DESTDIR=%{buildroot} \
169 NO_CROSS_DIRECTORY_HARDLINKS=1 \
171 prefix=%{_prefix} mandir=%{_mandir} \
172 gitexecdir=%{gitexecdir} \
173 htmldir=%{_docdir}/git-core \
178 ./.make all %{?_smp_mflags}
182 make %{?_smp_mflags} test
185 ./.make install install-doc
187 (find %{buildroot}%{_bindir} -type f | grep -vE "archimport|svn|cvs|email|gitk|daemon|gui" | sed -e s@^%{buildroot}@@) > bin-man-doc-files
188 (find %{buildroot}%{gitexecdir} -mindepth 1 | grep -vE "archimport|svn|cvs|email|gitk|daemon|gui" | sed -e s@^%{buildroot}@@) >> bin-man-doc-files
189 (find %{buildroot}%{_mandir} %{buildroot}/Documentation -type f | grep -vE "archimport|svn|git-cvs|email|gitk|daemon|gui" | sed -e s@^%{buildroot}@@ -e 's/$/*/' ) >> bin-man-doc-files
192 make -f perl.mak DESTDIR=%{buildroot} install_vendor
194 rm -rf %{buildroot}/usr/lib/perl5/site_perl
195 %perl_process_packlist
196 find %{buildroot}/%{_mandir} -type f -print0 | xargs -0 chmod 644
197 find %{buildroot}/%python_sitelib/ -type f -name *.pyc -print0 | xargs -0 rm
198 install -m 644 -D contrib/completion/git-completion.bash %{buildroot}%{_sysconfdir}/bash_completion.d/git.sh
199 sed -i "s#$RPM_BUILD_ROOT##g" %{buildroot}/%{gitexecdir}/git-remote-testgit
201 cat %{name}.lang >>bin-man-doc-files
202 # use symlinks instead of hardlinks in sub-commands
205 rm -rf %{buildroot}/%{_datadir}/gitweb
206 rm -rf %{buildroot}/Documentation/*.html
207 rm -rf %{buildroot}/Documentation/*.txt
209 %fdupes -s %{buildroot}
213 %manifest %{name}.manifest
217 %manifest %{name}.manifest
219 %{_mandir}/man1/*svn*.1*
222 %manifest %{name}.manifest
225 %{_mandir}/man1/*cvs*.1*
228 %manifest %{name}.manifest
229 %{gitexecdir}/git-archimport
230 %{_mandir}/man1/git-archimport.1*
233 %manifest %{name}.manifest
234 %{gitexecdir}/*email*
235 %{_mandir}/man1/*email*.1*
238 %manifest %{name}.manifest
239 %{gitexecdir}/*daemon*
240 %{_mandir}/man1/*daemon*.1*
243 %manifest %{name}.manifest
246 %{_mandir}/man1/*gitk*.1*
249 %manifest %{name}.manifest
250 %{gitexecdir}/git-gui*
252 %{_mandir}/man1/*gui*.1*
254 %files remote-helpers
255 %manifest %{name}.manifest
258 %files core -f bin-man-doc-files
259 %manifest %{name}.manifest
262 %{_datadir}/git-core/
264 %{perl_vendorlib}/Git.pm
265 %{perl_vendorlib}/Git/
266 %{perl_vendorlib}/Git/*.pm
267 %{perl_vendorarch}/auto/Git/
268 %attr(0644, root, root) %{_sysconfdir}/bash_completion.d/git.sh