зеркало из https://github.com/microsoft/git.git
Rename git-core rpm to just git and rename the meta-pacakge to git-all.
This fixes my favorite annoyance with the git rpm packaging: don't pull in tla when I say yum install git! You wouldn't expect yum install gcc to pull in gcc-gfortran, right? With this change, and blanket 'yum update' will automatically pull in the new 'git' package and push out the old 'git-core', and if the old 'git' package was installed 'git-all' will be pulled in instead. A couple of things do break though: 'yum update git-core', because yum behaves differently when given a specific package name - it doesn't follow obsoletes. Instead, 'yum install git' will pull in the new git rpm, which will then push out the old 'git-core'. Similarly, to get the newest version of the meta package, 'yum install git-all' will install git-all, which then pushes out the old 'git' meta package. Signed-off-by: Kristian Høgsberg <krh@redhat.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
066a5268db
Коммит
7c33d3a511
69
git.spec.in
69
git.spec.in
|
@ -3,7 +3,7 @@
|
|||
Name: git
|
||||
Version: @@VERSION@@
|
||||
Release: 1%{?dist}
|
||||
Summary: Git core and tools
|
||||
Summary: Core git tools
|
||||
License: GPL
|
||||
Group: Development/Tools
|
||||
URL: http://kernel.org/pub/software/scm/git/
|
||||
|
@ -11,80 +11,86 @@ Source: http://kernel.org/pub/software/scm/git/%{name}-%{version}.tar.gz
|
|||
BuildRequires: zlib-devel >= 1.2, openssl-devel, curl-devel, expat-devel, gettext %{!?_without_docs:, xmlto, asciidoc > 6.0.3}
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
|
||||
Requires: git-core = %{version}-%{release}
|
||||
Requires: git-svn = %{version}-%{release}
|
||||
Requires: git-cvs = %{version}-%{release}
|
||||
Requires: git-arch = %{version}-%{release}
|
||||
Requires: git-email = %{version}-%{release}
|
||||
Requires: gitk = %{version}-%{release}
|
||||
Requires: git-gui = %{version}-%{release}
|
||||
Requires: perl-Git = %{version}-%{release}
|
||||
Requires: zlib >= 1.2, rsync, curl, less, openssh-clients, expat
|
||||
Provides: git-core = %{version}-%{release}
|
||||
Obsoletes: git-core <= 1.5.4.2
|
||||
Obsoletes: git-p4
|
||||
|
||||
%description
|
||||
Git is a fast, scalable, distributed revision control system with an
|
||||
unusually rich command set that provides both high-level operations
|
||||
and full access to internals.
|
||||
|
||||
This is a dummy package which brings in all subpackages.
|
||||
The git rpm installs the core tools with minimal dependencies. To
|
||||
install all git packages, including tools for integrating with other
|
||||
SCMs, install the git-all meta-package.
|
||||
|
||||
%package core
|
||||
Summary: Core git tools
|
||||
%package all
|
||||
Summary: Meta-package to pull in all git tools
|
||||
Group: Development/Tools
|
||||
Requires: zlib >= 1.2, rsync, curl, less, openssh-clients, expat
|
||||
Obsoletes: git-p4
|
||||
%description core
|
||||
Requires: git = %{version}-%{release}
|
||||
Requires: git-svn = %{version}-%{release}
|
||||
Requires: git-cvs = %{version}-%{release}
|
||||
Requires: git-arch = %{version}-%{release}
|
||||
Requires: git-email = %{version}-%{release}
|
||||
Requires: gitk = %{version}-%{release}
|
||||
Requires: git-gui = %{version}-%{release}
|
||||
Obsoletes: git <= 1.5.4.2
|
||||
|
||||
%description all
|
||||
Git is a fast, scalable, distributed revision control system with an
|
||||
unusually rich command set that provides both high-level operations
|
||||
and full access to internals.
|
||||
|
||||
These are the core tools with minimal dependencies.
|
||||
This is a dummy package which brings in all subpackages.
|
||||
|
||||
%package svn
|
||||
Summary: Git tools for importing Subversion repositories
|
||||
Group: Development/Tools
|
||||
Requires: git-core = %{version}-%{release}, subversion
|
||||
Requires: git = %{version}-%{release}, subversion
|
||||
%description svn
|
||||
Git tools for importing Subversion repositories.
|
||||
|
||||
%package cvs
|
||||
Summary: Git tools for importing CVS repositories
|
||||
Group: Development/Tools
|
||||
Requires: git-core = %{version}-%{release}, cvs, cvsps
|
||||
Requires: git = %{version}-%{release}, cvs, cvsps
|
||||
%description cvs
|
||||
Git tools for importing CVS repositories.
|
||||
|
||||
%package arch
|
||||
Summary: Git tools for importing Arch repositories
|
||||
Group: Development/Tools
|
||||
Requires: git-core = %{version}-%{release}, tla
|
||||
Requires: git = %{version}-%{release}, tla
|
||||
%description arch
|
||||
Git tools for importing Arch repositories.
|
||||
|
||||
%package email
|
||||
Summary: Git tools for sending email
|
||||
Group: Development/Tools
|
||||
Requires: git-core = %{version}-%{release}
|
||||
Requires: git = %{version}-%{release}
|
||||
%description email
|
||||
Git tools for sending email.
|
||||
|
||||
%package gui
|
||||
Summary: Git GUI tool
|
||||
Group: Development/Tools
|
||||
Requires: git-core = %{version}-%{release}, tk >= 8.4
|
||||
Requires: git = %{version}-%{release}, tk >= 8.4
|
||||
%description gui
|
||||
Git GUI tool
|
||||
|
||||
%package -n gitk
|
||||
Summary: Git revision tree visualiser ('gitk')
|
||||
Group: Development/Tools
|
||||
Requires: git-core = %{version}-%{release}, tk >= 8.4
|
||||
Requires: git = %{version}-%{release}, tk >= 8.4
|
||||
%description -n gitk
|
||||
Git revision tree visualiser ('gitk')
|
||||
|
||||
%package -n perl-Git
|
||||
Summary: Perl interface to Git
|
||||
Group: Development/Libraries
|
||||
Requires: git-core = %{version}-%{release}
|
||||
Requires: git = %{version}-%{release}
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
BuildRequires: perl(Error)
|
||||
|
||||
|
@ -121,8 +127,12 @@ rm -rf $RPM_BUILD_ROOT%{_mandir}
|
|||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%files
|
||||
# These are no files in the root package
|
||||
%files -f bin-man-doc-files
|
||||
%defattr(-,root,root)
|
||||
%{_datadir}/git-core/
|
||||
%doc README COPYING Documentation/*.txt
|
||||
%{!?_without_docs: %doc Documentation/*.html Documentation/howto}
|
||||
%{!?_without_docs: %doc Documentation/technical}
|
||||
|
||||
%files svn
|
||||
%defattr(-,root,root)
|
||||
|
@ -173,14 +183,13 @@ rm -rf $RPM_BUILD_ROOT
|
|||
%files -n perl-Git -f perl-files
|
||||
%defattr(-,root,root)
|
||||
|
||||
%files core -f bin-man-doc-files
|
||||
%defattr(-,root,root)
|
||||
%{_datadir}/git-core/
|
||||
%doc README COPYING Documentation/*.txt
|
||||
%{!?_without_docs: %doc Documentation/*.html Documentation/howto}
|
||||
%{!?_without_docs: %doc Documentation/technical}
|
||||
%files all
|
||||
# No files for you!
|
||||
|
||||
%changelog
|
||||
* Fri Feb 15 2008 Kristian Høgsberg <krh@redhat.com>
|
||||
- Rename git-core to just git and rename meta package from git to git-all.
|
||||
|
||||
* Sun Feb 03 2008 James Bowes <jbowes@dangerouslyinc.com>
|
||||
- Add a BuildRequires for gettext
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче