Source: git
Section: vcs
Priority: optional
Maintainer: Jonathan Nieder <jrnieder@gmail.com>
Uploaders: Anders Kaseorg <andersk@mit.edu>
Build-Depends: libz-dev, gettext,
 libpcre2-dev | libpcre3-dev,
 libcurl4-gnutls-dev, libexpat1-dev,
 subversion, libsvn-perl, libyaml-perl,
 tcl, python3,
 libhttp-date-perl | libtime-parsedate-perl,
 libcgi-pm-perl,
 liberror-perl,
 libmailtools-perl,
 cvs, cvsps, libdbd-sqlite3-perl,
 unzip, libio-pty-perl,
 debhelper-compat (= 10),
 dh-exec (>= 0.7),
 dh-apache2,
 dpkg-dev (>= 1.16.2~)
Build-Depends-Indep: asciidoc (>= 8.6.10), xmlto, docbook-xsl
Standards-Version: 4.3.0.1
Homepage: https://git-scm.com/
Vcs-Git: https://repo.or.cz/r/git/debian.git/
Vcs-Browser: https://repo.or.cz/w/git/debian.git/

Package: git
Architecture: any
Multi-Arch: foreign
Depends: ${misc:Depends}, ${shlibs:Depends}, perl, liberror-perl,
 git-man (>> ${source:Upstream-Version}), git-man (<< ${source:Upstream-Version}-.)
Pre-Depends: ${misc:Pre-Depends}
Recommends: ca-certificates, patch, less, ssh-client
Suggests: gettext-base, git-daemon-run | git-daemon-sysvinit,
 git-doc, git-email, git-gui, gitk, gitweb,
 git-cvs, git-mediawiki, git-svn
Breaks: bash-completion (<< 1:1.90-1),
 dgit (<< 5.1~),
 git-buildpackage (<< 0.6.5),
 git-el (<< 1:2.32.0~rc2-1~),
 cogito (<= 0.18.2+),
 openssh-client (<< 1:6.8),
 stgit (<< 0.15), stgit-contrib (<< 0.15), gitpkg (<< 0.15),
 guilt (<< 0.33), gitosis (<< 0.2+20090917-7)
Provides: git-completion, git-core
Description: fast, scalable, distributed revision control system
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package provides the git main components with minimal dependencies.
 Additional functionality, e.g. a graphical user interface and revision
 tree visualizer, tools for interoperating with other VCS's, or a web
 interface, is provided as separate git* packages.

Package: git-man
Section: doc
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}
Description: fast, scalable, distributed revision control system (manual pages)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package provides reference documentation for use by the 'man'
 utility and the 'git help' command.

Package: git-doc
Section: doc
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}
Suggests: git, git-cvs, git-svn, git-email, gitk, gitweb
Description: fast, scalable, distributed revision control system (documentation)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package provides the documentation.

Package: git-cvs
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.), cvsps, libdbd-sqlite3-perl
Suggests: git-doc, cvs
Description: fast, scalable, distributed revision control system (cvs interoperability)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package provides the git cvsimport, cvsexportcommit, and cvsserver
 tools, which allow Git to read from and write to CVS repositories and
 offer access over CVS protocol to Git repositories.
 .
 The git cvsimport tool can incrementally import from a repository that
 is being actively developed and only requires remote access over CVS
 protocol. Unfortunately, in many situations the import leads to
 incorrect results. For reliable, one-shot imports, cvs2git from the
 cvs2svn package or parsecvs may be a better fit.

Package: git-svn
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.), libsvn-perl, libyaml-perl, libterm-readkey-perl
Suggests: git-doc, subversion
Breaks: git (<< 1:1.8.3~rc1-1.)
Replaces: git (<< 1:1.8.3~rc1-1.)
Description: fast, scalable, distributed revision control system (svn interoperability)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package provides tools for interoperating with Subversion repositories,
 and importing SVN development history.

Package: git-mediawiki
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.),
 libmediawiki-api-perl (>= 0.39), liblwp-protocol-https-perl, libdatetime-format-iso8601-perl
Suggests: mediawiki
Description: fast, scalable, distributed revision control system (MediaWiki remote helper)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package provides the mediawiki remote helper, which allows Git to
 read from and write to a wiki such as Wikipedia as though it were a
 remote Git repository, and a 'git mw' command that can show a preview
 of how wiki markup will be rendered before pushing.

Package: git-email
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.)
Recommends: libemail-valid-perl,
 libmailtools-perl,
 perl (>> 5.21.5) | libnet-smtp-ssl-perl,
 libauthen-sasl-perl,
 libio-socket-ssl-perl (>= 1.951)
Suggests: git-doc
Description: fast, scalable, distributed revision control system (email add-on)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package provides the git-send-email program for sending series of
 patch emails.

Package: git-daemon-run
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.), runit, adduser
Conflicts: git-daemon-sysvinit
Description: fast, scalable, distributed revision control system (git-daemon service)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 git-daemon, as provided by the git package, is a simple server for git
 repositories, ideally suited for read-only updates, i.e. pulling from git
 repositories through the network.  This package provides a runit service
 for running git-daemon permanently.  This configuration is simpler and
 more reliable than git-daemon-sysvinit, at a cost of being less
 familiar for administrators accustomed to sysvinit.

Package: git-daemon-sysvinit
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.), adduser, lsb-base (>= 3.0-6)
Conflicts: git-daemon-run
Description: fast, scalable, distributed revision control system (git-daemon service)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 git-daemon, as provided by the git package, is a simple server for git
 repositories, ideally suited for read-only updates, i.e. pulling from git
 repositories through the network.  This package provides a sysvinit service
 for running git-daemon permanently.  Unlike git-daemon-run, this
 package provides the usual sysvinit service management commands
 ("service git-daemon start/stop") for git-daemon.

Package: git-gui
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.), tk
Recommends: gitk
Suggests: git-doc, aspell, meld
Description: fast, scalable, distributed revision control system (GUI)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package provides the git graphical user interface.
 .
 If aspell is installed, it can check the spelling of commit messages
 as the user types.
 .
 If meld is installed, it can be used for displaying diffs and for
 interactive merge conflict resolution.

Package: gitk
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.), tk
Suggests: git-doc
Description: fast, scalable, distributed revision control system (revision tree visualizer)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package provides the gitk program, a tcl/tk revision tree visualizer.

Package: gitweb
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.),
 perl, libcgi-pm-perl
Pre-Depends: ${misc:Pre-Depends}
Recommends: ${misc:Recommends}, libhttp-date-perl | libtime-parsedate-perl
Breaks: apache2.2-common (<< 2.3~)
Suggests: httpd-cgi | libcgi-fast-perl, git-doc
Description: fast, scalable, distributed revision control system (web interface)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This package configures a web interface for browsing git repositories.
 .
 If apache2 is installed, the web interface is automatically made
 available at http://localhost/gitweb.  Other servers that support CGI
 or mod_perl are supported through manual configuration.
 .
 If libcgi-fast-perl is installed, gitweb can also be run over FastCGI
 (and served by nginx, for example).

Package: git-all
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.),
 git-doc, git-cvs, git-mediawiki, git-svn,
 git-email, git-gui, gitk, gitweb
Suggests: git-daemon-run | git-daemon-sysvinit
Description: fast, scalable, distributed revision control system (all subpackages)
 Git is popular version control system designed to handle very large
 projects with speed and efficiency; it is used for many high profile
 open source projects, most notably the Linux kernel.
 .
 Git falls in the category of distributed source code management tools.
 Every Git working directory is a full-fledged repository with full
 revision tracking capabilities, not dependent on network access or a
 central server.
 .
 This is a dummy package which brings in all subpackages.
