Git es uno de los sistemas de control de versiones distribuidos de código abierto más populares disponibles, diseñado para manejar todo, desde pequeños hasta grandes proyectos con velocidad y eficiencia.
Le permite realizar un seguimiento de los cambios de su código, crear diferentes ramas de código, colaborar con otros desarrolladores, por nombrar algunos. Linux Kernel, uno de los proyectos populares de código abierto, también está alojado en un repositorio de Git.
En este artículo, cubriremos la instalación de Git en los sistemas operativos CentOS, Ubuntu y Windows.
Git en CentOS 6.x/7.x
Para instalar Git en CentOS versión 6.x/7.x o RHEL 6.x/7.x, usaremos el administrador de paquetes yum. Ejecute el siguiente comando para instalar Git:
$ sudo yum install git
Si se le solicita que confirme como se muestra a continuación, confirme presionando ‘y’:
Is this ok [y/d/N]: y
A continuación se muestra el fragmento de instalación de Git en la configuración mínima de CentOS 7 (tenga en cuenta que las dependencias instaladas junto con Git pueden diferir en su instalación según la versión de su sistema operativo y los paquetes instalados):
$ sudo yum install git Loaded plugins: fastestmirror Determining fastest mirrors * base: centos.excellmedia.net * extras: centos.excellmedia.net * updates: centos.excellmedia.net base | 3.6 kB 00:00:00 docker-ce-stable | 3.5 kB 00:00:00 extras | 2.9 kB 00:00:00 updates | 2.9 kB 00:00:00 (1/2): docker-ce-stable/7/x86_64/primary_db | 50 kB 00:00:00 (2/2): updates/7/x86_64/primary_db | 3.7 MB 00:00:00 Resolving Dependencies --> Running transaction check ---> Package git.x86_64 0:1.8.3.1-23.el7_8 will be installed --> Processing Dependency: perl-Git = 1.8.3.1-23.el7_8 for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl >= 5.008 for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: rsync for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(warnings) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(vars) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(strict) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(lib) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(Term::ReadKey) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(Git) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(Getopt::Long) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(File::stat) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(File::Temp) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(File::Spec) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(File::Path) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(File::Find) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(File::Copy) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(File::Basename) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(Exporter) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: perl(Error) for package: git-1.8.3.1-23.el7_8.x86_64 --> Processing Dependency: /usr/bin/perl for package: git-1.8.3.1-23.el7_8.x86_64 --> Running transaction check ---> Package perl.x86_64 4:5.16.3-297.el7 will be installed --> Processing Dependency: perl-libs = 4:5.16.3-297.el7 for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Socket) >= 1.3 for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Scalar::Util) >= 1.10 for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl-macros for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl-libs for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(threads::shared) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(threads) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(constant) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Time::Local) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Time::HiRes) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Storable) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Socket) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Scalar::Util) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Pod::Simple::XHTML) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Pod::Simple::Search) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Filter::Util::Call) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: perl(Carp) for package: 4:perl-5.16.3-297.el7.x86_64 --> Processing Dependency: libperl.so()(64bit) for package: 4:perl-5.16.3-297.el7.x86_64 ---> Package perl-Error.noarch 1:0.17020-2.el7 will be installed ---> Package perl-Exporter.noarch 0:5.68-3.el7 will be installed ---> Package perl-File-Path.noarch 0:2.09-2.el7 will be installed ---> Package perl-File-Temp.noarch 0:0.23.01-3.el7 will be installed ---> Package perl-Getopt-Long.noarch 0:2.40-3.el7 will be installed --> Processing Dependency: perl(Pod::Usage) >= 1.14 for package: perl-Getopt-Long-2.40-3.el7.noarch --> Processing Dependency: perl(Text::ParseWords) for package: perl-Getopt-Long-2.40-3.el7.noarch ---> Package perl-Git.noarch 0:1.8.3.1-23.el7_8 will be installed ---> Package perl-PathTools.x86_64 0:3.40-5.el7 will be installed ---> Package perl-TermReadKey.x86_64 0:2.30-20.el7 will be installed ---> Package rsync.x86_64 0:3.1.2-10.el7 will be installed --> Running transaction check ---> Package perl-Carp.noarch 0:1.26-244.el7 will be installed ---> Package perl-Filter.x86_64 0:1.49-3.el7 will be installed ---> Package perl-Pod-Simple.noarch 1:3.28-4.el7 will be installed --> Processing Dependency: perl(Pod::Escapes) >= 1.04 for package: 1:perl-Pod-Simple-3.28-4.el7.noarch --> Processing Dependency: perl(Encode) for package: 1:perl-Pod-Simple-3.28-4.el7.noarch ---> Package perl-Pod-Usage.noarch 0:1.63-3.el7 will be installed --> Processing Dependency: perl(Pod::Text) >= 3.15 for package: perl-Pod-Usage-1.63-3.el7.noarch --> Processing Dependency: perl-Pod-Perldoc for package: perl-Pod-Usage-1.63-3.el7.noarch ---> Package perl-Scalar-List-Utils.x86_64 0:1.27-248.el7 will be installed ---> Package perl-Socket.x86_64 0:2.010-5.el7 will be installed ---> Package perl-Storable.x86_64 0:2.45-3.el7 will be installed ---> Package perl-Text-ParseWords.noarch 0:3.29-4.el7 will be installed ---> Package perl-Time-HiRes.x86_64 4:1.9725-3.el7 will be installed ---> Package perl-Time-Local.noarch 0:1.2300-2.el7 will be installed ---> Package perl-constant.noarch 0:1.27-2.el7 will be installed ---> Package perl-libs.x86_64 4:5.16.3-297.el7 will be installed ---> Package perl-macros.x86_64 4:5.16.3-297.el7 will be installed ---> Package perl-threads.x86_64 0:1.87-4.el7 will be installed ---> Package perl-threads-shared.x86_64 0:1.43-6.el7 will be installed --> Running transaction check ---> Package perl-Encode.x86_64 0:2.51-7.el7 will be installed ---> Package perl-Pod-Escapes.noarch 1:1.04-297.el7 will be installed ---> Package perl-Pod-Perldoc.noarch 0:3.20-4.el7 will be installed --> Processing Dependency: perl(parent) for package: perl-Pod-Perldoc-3.20-4.el7.noarch --> Processing Dependency: perl(HTTP::Tiny) for package: perl-Pod-Perldoc-3.20-4.el7.noarch ---> Package perl-podlators.noarch 0:2.5.1-3.el7 will be installed --> Running transaction check ---> Package perl-HTTP-Tiny.noarch 0:0.033-3.el7 will be installed ---> Package perl-parent.noarch 1:0.225-244.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ========================================================================================================================================================================== Package Arch Version Repository Size ========================================================================================================================================================================== Installing: git x86_64 1.8.3.1-23.el7_8 base 4.4 M Installing for dependencies: perl x86_64 4:5.16.3-297.el7 base 8.0 M perl-Carp noarch 1.26-244.el7 base 19 k perl-Encode x86_64 2.51-7.el7 base 1.5 M perl-Error noarch 1:0.17020-2.el7 base 32 k perl-Exporter noarch 5.68-3.el7 base 28 k perl-File-Path noarch 2.09-2.el7 base 26 k perl-File-Temp noarch 0.23.01-3.el7 base 56 k perl-Filter x86_64 1.49-3.el7 base 76 k perl-Getopt-Long noarch 2.40-3.el7 base 56 k perl-Git noarch 1.8.3.1-23.el7_8 base 56 k perl-HTTP-Tiny noarch 0.033-3.el7 base 38 k perl-PathTools x86_64 3.40-5.el7 base 82 k perl-Pod-Escapes noarch 1:1.04-297.el7 base 52 k perl-Pod-Perldoc noarch 3.20-4.el7 base 87 k perl-Pod-Simple noarch 1:3.28-4.el7 base 216 k perl-Pod-Usage noarch 1.63-3.el7 base 27 k perl-Scalar-List-Utils x86_64 1.27-248.el7 base 36 k perl-Socket x86_64 2.010-5.el7 base 49 k perl-Storable x86_64 2.45-3.el7 base 77 k perl-TermReadKey x86_64 2.30-20.el7 base 31 k perl-Text-ParseWords noarch 3.29-4.el7 base 14 k perl-Time-HiRes x86_64 4:1.9725-3.el7 base 45 k perl-Time-Local noarch 1.2300-2.el7 base 24 k perl-constant noarch 1.27-2.el7 base 19 k perl-libs x86_64 4:5.16.3-297.el7 base 689 k perl-macros x86_64 4:5.16.3-297.el7 base 44 k perl-parent noarch 1:0.225-244.el7 base 12 k perl-podlators noarch 2.5.1-3.el7 base 112 k perl-threads x86_64 1.87-4.el7 base 49 k perl-threads-shared x86_64 1.43-6.el7 base 39 k rsync x86_64 3.1.2-10.el7 base 404 k Transaction Summary ========================================================================================================================================================================== Install 1 Package (+31 Dependent packages) Total download size: 16 M Installed size: 59 M Is this ok [y/d/N]: y Downloading packages: (1/32): git-1.8.3.1-23.el7_8.x86_64.rpm | 4.4 MB 00:00:01 (2/32): perl-Carp-1.26-244.el7.noarch.rpm | 19 kB 00:00:00 (3/32): perl-Encode-2.51-7.el7.x86_64.rpm | 1.5 MB 00:00:00 (4/32): perl-Error-0.17020-2.el7.noarch.rpm | 32 kB 00:00:00 (5/32): perl-Exporter-5.68-3.el7.noarch.rpm | 28 kB 00:00:00 (6/32): perl-File-Path-2.09-2.el7.noarch.rpm | 26 kB 00:00:00 (7/32): perl-File-Temp-0.23.01-3.el7.noarch.rpm | 56 kB 00:00:00 (8/32): perl-Filter-1.49-3.el7.x86_64.rpm | 76 kB 00:00:00 (9/32): perl-Getopt-Long-2.40-3.el7.noarch.rpm | 56 kB 00:00:00 (10/32): perl-Git-1.8.3.1-23.el7_8.noarch.rpm | 56 kB 00:00:00 (11/32): perl-HTTP-Tiny-0.033-3.el7.noarch.rpm | 38 kB 00:00:00 (12/32): perl-PathTools-3.40-5.el7.x86_64.rpm | 82 kB 00:00:00 (13/32): perl-Pod-Escapes-1.04-297.el7.noarch.rpm | 52 kB 00:00:00 (14/32): perl-Pod-Perldoc-3.20-4.el7.noarch.rpm | 87 kB 00:00:00 (15/32): perl-5.16.3-297.el7.x86_64.rpm | 8.0 MB 00:00:02 (16/32): perl-Pod-Simple-3.28-4.el7.noarch.rpm | 216 kB 00:00:00 (17/32): perl-Pod-Usage-1.63-3.el7.noarch.rpm | 27 kB 00:00:00 (18/32): perl-Scalar-List-Utils-1.27-248.el7.x86_64.rpm | 36 kB 00:00:00 (19/32): perl-Socket-2.010-5.el7.x86_64.rpm | 49 kB 00:00:00 (20/32): perl-Storable-2.45-3.el7.x86_64.rpm | 77 kB 00:00:00 (21/32): perl-TermReadKey-2.30-20.el7.x86_64.rpm | 31 kB 00:00:00 (22/32): perl-Text-ParseWords-3.29-4.el7.noarch.rpm | 14 kB 00:00:00 (23/32): perl-Time-HiRes-1.9725-3.el7.x86_64.rpm | 45 kB 00:00:00 (24/32): perl-Time-Local-1.2300-2.el7.noarch.rpm | 24 kB 00:00:00 (25/32): perl-constant-1.27-2.el7.noarch.rpm | 19 kB 00:00:00 (26/32): perl-libs-5.16.3-297.el7.x86_64.rpm | 689 kB 00:00:00 (27/32): perl-macros-5.16.3-297.el7.x86_64.rpm | 44 kB 00:00:00 (28/32): perl-parent-0.225-244.el7.noarch.rpm | 12 kB 00:00:00 (29/32): perl-podlators-2.5.1-3.el7.noarch.rpm | 112 kB 00:00:00 (30/32): perl-threads-1.87-4.el7.x86_64.rpm | 49 kB 00:00:00 (31/32): perl-threads-shared-1.43-6.el7.x86_64.rpm | 39 kB 00:00:00 (32/32): rsync-3.1.2-10.el7.x86_64.rpm | 404 kB 00:00:00 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 5.0 MB/s | 16 MB 00:00:03 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : 1:perl-parent-0.225-244.el7.noarch 1/32 Installing : perl-HTTP-Tiny-0.033-3.el7.noarch 2/32 Installing : perl-podlators-2.5.1-3.el7.noarch 3/32 Installing : perl-Pod-Perldoc-3.20-4.el7.noarch 4/32 Installing : 1:perl-Pod-Escapes-1.04-297.el7.noarch 5/32 Installing : perl-Encode-2.51-7.el7.x86_64 6/32 Installing : perl-Text-ParseWords-3.29-4.el7.noarch 7/32 Installing : perl-Pod-Usage-1.63-3.el7.noarch 8/32 Installing : 4:perl-libs-5.16.3-297.el7.x86_64 9/32 Installing : perl-Storable-2.45-3.el7.x86_64 10/32 Installing : perl-Exporter-5.68-3.el7.noarch 11/32 Installing : perl-constant-1.27-2.el7.noarch 12/32 Installing : perl-Socket-2.010-5.el7.x86_64 13/32 Installing : perl-Time-Local-1.2300-2.el7.noarch 14/32 Installing : perl-Carp-1.26-244.el7.noarch 15/32 Installing : 4:perl-Time-HiRes-1.9725-3.el7.x86_64 16/32 Installing : perl-PathTools-3.40-5.el7.x86_64 17/32 Installing : perl-Scalar-List-Utils-1.27-248.el7.x86_64 18/32 Installing : 1:perl-Pod-Simple-3.28-4.el7.noarch 19/32 Installing : perl-File-Temp-0.23.01-3.el7.noarch 20/32 Installing : perl-File-Path-2.09-2.el7.noarch 21/32 Installing : perl-threads-shared-1.43-6.el7.x86_64 22/32 Installing : perl-threads-1.87-4.el7.x86_64 23/32 Installing : perl-Filter-1.49-3.el7.x86_64 24/32 Installing : 4:perl-macros-5.16.3-297.el7.x86_64 25/32 Installing : perl-Getopt-Long-2.40-3.el7.noarch 26/32 Installing : 4:perl-5.16.3-297.el7.x86_64 27/32 Installing : 1:perl-Error-0.17020-2.el7.noarch 28/32 Installing : perl-TermReadKey-2.30-20.el7.x86_64 29/32 Installing : rsync-3.1.2-10.el7.x86_64 30/32 Installing : perl-Git-1.8.3.1-23.el7_8.noarch 31/32 Installing : git-1.8.3.1-23.el7_8.x86_64 32/32 Verifying : perl-HTTP-Tiny-0.033-3.el7.noarch 1/32 Verifying : perl-threads-shared-1.43-6.el7.x86_64 2/32 Verifying : perl-Storable-2.45-3.el7.x86_64 3/32 Verifying : 4:perl-libs-5.16.3-297.el7.x86_64 4/32 Verifying : perl-Exporter-5.68-3.el7.noarch 5/32 Verifying : perl-constant-1.27-2.el7.noarch 6/32 Verifying : perl-PathTools-3.40-5.el7.x86_64 7/32 Verifying : perl-Socket-2.010-5.el7.x86_64 8/32 Verifying : git-1.8.3.1-23.el7_8.x86_64 9/32 Verifying : 1:perl-parent-0.225-244.el7.noarch 10/32 Verifying : perl-TermReadKey-2.30-20.el7.x86_64 11/32 Verifying : 1:perl-Pod-Escapes-1.04-297.el7.noarch 12/32 Verifying : perl-File-Temp-0.23.01-3.el7.noarch 13/32 Verifying : 1:perl-Pod-Simple-3.28-4.el7.noarch 14/32 Verifying : perl-Time-Local-1.2300-2.el7.noarch 15/32 Verifying : perl-Git-1.8.3.1-23.el7_8.noarch 16/32 Verifying : perl-Carp-1.26-244.el7.noarch 17/32 Verifying : 1:perl-Error-0.17020-2.el7.noarch 18/32 Verifying : 4:perl-Time-HiRes-1.9725-3.el7.x86_64 19/32 Verifying : perl-Scalar-List-Utils-1.27-248.el7.x86_64 20/32 Verifying : perl-Pod-Usage-1.63-3.el7.noarch 21/32 Verifying : perl-Encode-2.51-7.el7.x86_64 22/32 Verifying : perl-Pod-Perldoc-3.20-4.el7.noarch 23/32 Verifying : perl-podlators-2.5.1-3.el7.noarch 24/32 Verifying : perl-File-Path-2.09-2.el7.noarch 25/32 Verifying : perl-threads-1.87-4.el7.x86_64 26/32 Verifying : rsync-3.1.2-10.el7.x86_64 27/32 Verifying : perl-Filter-1.49-3.el7.x86_64 28/32 Verifying : perl-Getopt-Long-2.40-3.el7.noarch 29/32 Verifying : perl-Text-ParseWords-3.29-4.el7.noarch 30/32 Verifying : 4:perl-5.16.3-297.el7.x86_64 31/32 Verifying : 4:perl-macros-5.16.3-297.el7.x86_64 32/32 Installed: git.x86_64 0:1.8.3.1-23.el7_8 Dependency Installed: perl.x86_64 4:5.16.3-297.el7 perl-Carp.noarch 0:1.26-244.el7 perl-Encode.x86_64 0:2.51-7.el7 perl-Error.noarch 1:0.17020-2.el7 perl-Exporter.noarch 0:5.68-3.el7 perl-File-Path.noarch 0:2.09-2.el7 perl-File-Temp.noarch 0:0.23.01-3.el7 perl-Filter.x86_64 0:1.49-3.el7 perl-Getopt-Long.noarch 0:2.40-3.el7 perl-Git.noarch 0:1.8.3.1-23.el7_8 perl-HTTP-Tiny.noarch 0:0.033-3.el7 perl-PathTools.x86_64 0:3.40-5.el7 perl-Pod-Escapes.noarch 1:1.04-297.el7 perl-Pod-Perldoc.noarch 0:3.20-4.el7 perl-Pod-Simple.noarch 1:3.28-4.el7 perl-Pod-Usage.noarch 0:1.63-3.el7 perl-Scalar-List-Utils.x86_64 0:1.27-248.el7 perl-Socket.x86_64 0:2.010-5.el7 perl-Storable.x86_64 0:2.45-3.el7 perl-TermReadKey.x86_64 0:2.30-20.el7 perl-Text-ParseWords.noarch 0:3.29-4.el7 perl-Time-HiRes.x86_64 4:1.9725-3.el7 perl-Time-Local.noarch 0:1.2300-2.el7 perl-constant.noarch 0:1.27-2.el7 perl-libs.x86_64 4:5.16.3-297.el7 perl-macros.x86_64 4:5.16.3-297.el7 perl-parent.noarch 1:0.225-244.el7 perl-podlators.noarch 0:2.5.1-3.el7 perl-threads.x86_64 0:1.87-4.el7 perl-threads-shared.x86_64 0:1.43-6.el7 rsync.x86_64 0:3.1.2-10.el7 Complete! $
Git en CentOS 8.x
Para instalar Git en CentOS versión 8.x o RHEL 8.x, usaremos el administrador de paquetes DNF. Ejecute el siguiente comando para instalar Git:
$ sudo dnf install git
Si se le solicita que confirme, presione ‘y’:
Is this ok [y/N]: y
Aquí está el fragmento de instalación de la instalación de Git en CentOS 8:
$ sudo dnf install git CentOS-8 - AppStream 9.1 kB/s | 4.3 kB 00:00 CentOS-8 - AppStream 752 kB/s | 6.2 MB 00:08 CentOS-8 - Base 6.5 kB/s | 3.9 kB 00:00 CentOS-8 - Base 1.6 MB/s | 2.3 MB 00:01 CentOS-8 - Extras 3.5 kB/s | 1.5 kB 00:00 CentOS-8 - Extras 12 kB/s | 8.1 kB 00:00 Extra Packages for Enterprise Linux Modular 8 - x86_64 15 kB/s | 8.5 kB 00:00 Extra Packages for Enterprise Linux 8 - x86_64 10 kB/s | 9.1 kB 00:00 Extra Packages for Enterprise Linux 8 - x86_64 2.4 MB/s | 8.6 MB 00:03 Dependencies resolved. ========================================================================================================================================================================== Package Architecture Version Repository Size ========================================================================================================================================================================== Installing: git x86_64 2.27.0-1.el8 AppStream 164 k Installing dependencies: git-core x86_64 2.27.0-1.el8 AppStream 5.7 M git-core-doc noarch 2.27.0-1.el8 AppStream 2.5 M perl-Error noarch 1:0.17025-2.el8 AppStream 46 k perl-Git noarch 2.27.0-1.el8 AppStream 77 k Transaction Summary ========================================================================================================================================================================== Install 5 Packages Total download size: 8.5 M Installed size: 45 M Is this ok [y/N]: y Downloading Packages: (1/5): git-2.27.0-1.el8.x86_64.rpm 299 kB/s | 164 kB 00:00 (2/5): perl-Error-0.17025-2.el8.noarch.rpm 173 kB/s | 46 kB 00:00 (3/5): perl-Git-2.27.0-1.el8.noarch.rpm 182 kB/s | 77 kB 00:00 (4/5): git-core-doc-2.27.0-1.el8.noarch.rpm 813 kB/s | 2.5 MB 00:03 (5/5): git-core-2.27.0-1.el8.x86_64.rpm 431 kB/s | 5.7 MB 00:13 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 615 kB/s | 8.5 MB 00:14 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : git-core-2.27.0-1.el8.x86_64 1/5 Installing : git-core-doc-2.27.0-1.el8.noarch 2/5 Installing : perl-Error-1:0.17025-2.el8.noarch 3/5 Installing : perl-Git-2.27.0-1.el8.noarch 4/5 Installing : git-2.27.0-1.el8.x86_64 5/5 Running scriptlet: git-2.27.0-1.el8.x86_64 5/5 Verifying : git-2.27.0-1.el8.x86_64 1/5 Verifying : git-core-2.27.0-1.el8.x86_64 2/5 Verifying : git-core-doc-2.27.0-1.el8.noarch 3/5 Verifying : perl-Error-1:0.17025-2.el8.noarch 4/5 Verifying : perl-Git-2.27.0-1.el8.noarch 5/5 Installed products updated. Installed: git-2.27.0-1.el8.x86_64 git-core-2.27.0-1.el8.x86_64 git-core-doc-2.27.0-1.el8.noarch perl-Error-1:0.17025-2.el8.noarch perl-Git-2.27.0-1.el8.noarch Complete! $
Git en Ubuntu
En Ubuntu, la forma más sencilla de instalar git es usar un administrador de paquetes apt. Primero, actualice el índice del paquete apt usando el siguiente comando:
$ sudo apt update
$ sudo apt update Hit:1 http://in.archive.ubuntu.com/ubuntu groovy InRelease Hit:2 http://in.archive.ubuntu.com/ubuntu groovy-updates InRelease Hit:3 http://in.archive.ubuntu.com/ubuntu groovy-backports InRelease Get:4 http://security.ubuntu.com/ubuntu groovy-security InRelease [110 kB] Fetched 110 kB in 1s (110 kB/s) Reading package lists... Done Building dependency tree Reading state information... Done All packages are up to date. $
Ahora, ejecute el siguiente comando para instalar Git en Ubuntu:
$ sudo apt install git
Si se le solicita que confirme, presione ‘Y’:
Do you want to continue? [Y/n] Y
A continuación se muestra un fragmento de registro de instalación para la instalación en Ubuntu 20:
$ sudo apt install git Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: git-man liberror-perl Suggested packages: git-daemon-run | git-daemon-sysvinit git-doc git-el git-email git-gui gitk gitweb git-cvs git-mediawiki git-svn The following NEW packages will be installed: git git-man liberror-perl 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. Need to get 5,764 kB of archives. After this operation, 41.2 MB of additional disk space will be used. Do you want to continue? [Y/n] Y Get:1 http://in.archive.ubuntu.com/ubuntu groovy/main amd64 liberror-perl all 0.17029-1 [26.5 kB] Get:2 http://in.archive.ubuntu.com/ubuntu groovy/main amd64 git-man all 1:2.27.0-1ubuntu1 [911 kB] Get:3 http://in.archive.ubuntu.com/ubuntu groovy/main amd64 git amd64 1:2.27.0-1ubuntu1 [4,827 kB] Fetched 5,764 kB in 1s (9,187 kB/s) Selecting previously unselected package liberror-perl. (Reading database ... 292528 files and directories currently installed.) Preparing to unpack .../liberror-perl_0.17029-1_all.deb ... Unpacking liberror-perl (0.17029-1) ... Selecting previously unselected package git-man. Preparing to unpack .../git-man_1%3a2.27.0-1ubuntu1_all.deb ... Unpacking git-man (1:2.27.0-1ubuntu1) ... Selecting previously unselected package git. Preparing to unpack .../git_1%3a2.27.0-1ubuntu1_amd64.deb ... Unpacking git (1:2.27.0-1ubuntu1) ... Setting up liberror-perl (0.17029-1) ... Setting up git-man (1:2.27.0-1ubuntu1) ... Setting up git (1:2.27.0-1ubuntu1) ... Processing triggers for man-db (2.9.3-2) ... $
Git en Windows
Los instaladores binarios de Windows están disponibles en el sitio oficial de Git. Descargue el instalador correspondiente a su sistema Windows.
A partir de la versión 2.29.2, ofrece versiones de Git de 32 y 64 bits; elija el que se adapte a sus necesidades y arquitectura del sistema. La mayoría de los sistemas nuevos son compatibles con la arquitectura de 64 bits, y el descargador predeterminado proporcionado por el sitio debería ser bueno para la mayoría de los propósitos.
Inicie el instalador de Git descargado y debería aparecer el asistente de instalación. Acepte las indicaciones que el Control de acceso de usuario de Windows pueda mostrar al comienzo de la instalación. El instalador solicitará acceso administrativo y debe aceptarse para que la instalación se realice correctamente. También está disponible una versión portátil de Git, que se puede utilizar como alternativa si la instalación no es posible por medios normales debido a restricciones administrativas. Acepte el acuerdo de licencia y haga clic en Siguiente.
Especifique la ruta de instalación de Git o deje la predeterminada que se muestra en el cuadro de diálogo. Haga clic en Siguiente para continuar.
El cuadro de diálogo Seleccionar componentes le permite seleccionar los componentes de Git que deberían estar disponibles después de la instalación. Las opciones predeterminadas deberían ser buenas para la mayoría de los propósitos. Haga clic en Siguiente una vez que se seleccionen los componentes requeridos.
La opción de acceso directo del menú Inicio se muestra a continuación. Haga clic en Siguiente para continuar.
El siguiente cuadro de diálogo le permite seleccionar el editor predeterminado que utilizará Git. Vim, que es el popular editor CLI de Linux, es compatible y está seleccionado de forma predeterminada. Tiene la opción de seleccionar un editor diferente como Notepad ++, etc., en la lista desplegable si lo prefiere. Haga clic en Siguiente una vez confirmado.
Para la mayoría de los casos, una opción de nombre de rama inicial se puede dejar como está. Haga clic en Siguiente para continuar.
Git se agregará a la variable PATH de Windows para que sea accesible desde otros programas como Símbolo del sistema, etc. Seleccione la opción 1 si desea usar Git solo desde Git Bash, instalado como parte de la instalación de Git. Luego proceda haciendo clic en Siguiente.
Se necesita un ejecutable Secure Shell o SSH para las acciones relacionadas con la red para Git, como las solicitudes push y pull. La opción predeterminada de OpenSSH provista con el instalador debería ser buena para la mayoría de los casos y, como tal, se puede dejar como está. Haga clic en Siguiente para continuar.
La opción predeterminada se puede seleccionar para la biblioteca OpenSSL. Esta es una elección entre la biblioteca SSL proporcionada por Git y la que viene con Windows. Haga clic en Siguiente para continuar.
Era necesario confirmar el estilo de confirmación, y los sistemas Windows y Linux/Unix interpretan el final de línea de manera diferente. Para que el código sea compatible entre diferentes plataformas de desarrollo, Git debe saber cómo el archivo de código tiene un carácter de final de línea especificado y si es necesario cambiarlo a otro estilo. Nuevamente, la opción predeterminada es buena aquí, y Git realiza todo el cambio y la conversión en segundo plano. En caso de que se requiera otra configuración, consulte a su administrador de código Git. Luego haga clic en Siguiente para continuar.
El emulador de terminal le permite tener un entorno similar a BASH o el símbolo del sistema de Windows como consola predeterminada. Ambas opciones funcionan bien y dependen de las necesidades del usuario. Haga clic en Siguiente para continuar.
La siguiente opción es especificar el comportamiento predeterminado de “git pull”. Se debe seleccionar una opción predeterminada a menos que esté seguro de que necesita cambiarla a una de las no predeterminadas. Haga clic en Siguiente para continuar.
Credential Manager almacena sus secretos como contraseñas y claves que usa para iniciar sesión en diferentes repositorios remotos de Git. La primera opción debería ser buena ya que Git Credential Manager ha quedado obsoleto. Haga clic en Siguiente para continuar.
El siguiente cuadro de diálogo le permite seleccionar algunas opciones adicionales, como el almacenamiento en caché del sistema de archivos y los enlaces simbólicos. Haga clic en Siguiente, una vez que seleccione las opciones requeridas.
Las opciones experimentales le permiten habilitar características que aún no están completamente desarrolladas y probadas. Puede dejarlos sin marcar a menos que esté seguro de que los necesita. Haga clic en Instalar para continuar con la instalación de Git con las opciones seleccionadas.
Se iniciará la instalación de Git y se mostrará el progreso. Espere a que se complete.
Un cuadro de diálogo final le permite iniciar Git Bash:
Podrá iniciar Git Bash o Git GUI usando el menú Inicio de Windows. Git Bash es la CLI de línea de comando similar que ofrece Linux y es compatible con todos los comandos de Git. Puede verificar la versión de Git como se muestra en la siguiente captura de pantalla:
Verificando Git
Para verificar su instalación de Git y verificar su versión, use el siguiente comando en la terminal de Linux (o Git Bash en Windows):
$ git --version git version 2.27.0 $
Otras lecturas
Puedes aprender más sobre Git aquí o tomar este curso definitivo.
A continuación, familiarícese con GitOps.
Tabla de contenidos