Git est un système de contrôle de version open source, distribué, conçu pour gérer tous les types de projets, des plus petits aux plus grands, avec rapidité et efficacité. Il est facile à apprendre et consomme peu de mémoire avec des performances fulgurantes. Il surpasse plusieurs autres outils SCM tels que Subversion, CVS, Perforce et ClearCase avec des fonctionnalités telles que la création de branches locales bon marché, des zones de préparation pratiques et plusieurs flux de travail.
De plus, Git 2.9.0 a une variété de fonctionnalités et de corrections de bogues par rapport au reste des versions, certaines des fonctionnalités avancées de Git 2.9 le rendant important par rapport au repos sont comme ci-dessous :
- Sous-modules plus rapides et plus flexibles :il prend en charge le clonage et la mise à jour des sous-modules en parallèle.
- Belles utilisations des diffs : il ajoute une nouvelle heuristique expérimentale pour la gestion des diffs.
- Tester les commits avec le rebase interactif Git
Avantages de GIT par rapport aux autres outils SCM
- Branchement et fusion
- Petit et rapide
- Distribué
- Assurance des données
- Zone de préparation
- Gratuit et open source
Dans cet article, je vais vous montrer comment installer la dernière version de Git sur un serveur Ubuntu 16.04. Commençons par les étapes d'installation.
Installer Git
Sur un serveur Ubuntu, nous pouvons installer les packages Git à partir de leurs référentiels en exécutant simplement cette commande.
root@ubuntu:~# apt-get update
root@ubuntu:~# apt-get install git
Mais il n'est pas obligatoire d'obtenir les derniers packages de version de Git en les installant de cette manière. Dans ce cas, nous préférons installer Git en téléchargeant à partir de leurs packages source. Nous pouvons télécharger nos packages de version Git ici.
J'expliquerai les étapes d'installation de la dernière version de Git 2.9.0 sur mon système.
Télécharger les fichiers Git
Étape 1 :Téléchargez le package Git 2.9 à partir du lien de téléchargement ci-dessus
root@ubuntu:~# wget https://github.com/git/git/archive/v2.9.0.zip
root@ubuntu:~# unzip v2.9.0.zip
Installez le module de décompression s'il n'est pas présent sur le serveur en exécutant simplement cette commande "apt install unzip ".
Configurer et créer
Étape 2 :Déplacez-vous vers le dossier Git extrait et commencez la configuration. Tout d'abord, nous devons faire la configuration et construire le package Git. Pour que la partie configuration fonctionne, nous devons installer autoconf sur notre serveur.
root@ubuntu:~/git-2.9.0# apt-get install autoconf
root@ubuntu:~/git-2.9.0# make configure
GEN configure
root@ubuntu:~/git-2.9.0# ./configure --prefix=/usr/local
Après avoir installé autoconf, nous pouvons créer le fichier de configuration pour Git et commencer la configuration à l'aide de la commande ci-dessus.
Mais pendant le temps de configuration, si vous rencontrez une erreur similaire, veuillez installer le package suivant.
Error:
configure: error: in `/root/git-2.9.0':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
Fix:
root@ubuntu:~/git-2.9.0# apt-get install gcc
Vous pouvez installer le package gcc pour activer le compilateur C sur votre serveur et terminer la partie configuration en douceur comme ceci.
root@ubuntu:~/git-2.9.0# ./configure --prefix=/usr/local
checking for BSD sysctl... no
checking for POSIX Threads with ''... no
checking for POSIX Threads with '-mt'... no
checking for POSIX Threads with '-pthread'... yes
configure: creating ./config.status
config.status: creating config.mak.autogen
config.status: executing config.mak.autogen commands
Notre prochaine étape consiste à créer les packages Git. Nous pouvons toujours construire le package en exécutant cette commande make.
root@ubuntu:~/git-2.9.0# make prefix=/usr/local
PS : At times, you may come across some errors while running this, due to some missing packages.
Errors:
root@ubuntu:~/git-2.9.0# make prefix=/usr/local
CC credential-store.o
In file included from credential-store.c:1:0:
cache.h:40:18: fatal error: zlib.h: No such file or directory
compilation terminated.
Makefile:1935: recipe for target 'credential-store.o' failed
make: *** [credential-store.o] Error 1
/bin/sh: 1: msgfmt: not found
Makefile:2094: recipe for target 'po/build/locale/pt_PT/LC_MESSAGES/git.mo' failed
make: *** [po/build/locale/pt_PT/LC_MESSAGES/git.mo] Error 127
Afin de corriger ces erreurs, vous pouvez installer les packages suivants nécessaires à Git.
apt-get install zlib1g-dev
apt-get install tcl-dev
apt-get install libssl-dev
apt-get install gettext
Après avoir corrigé ces erreurs, vous pouvez relancer ces make commandes pour terminer le processus de construction.
root@ubuntu:~/git-2.9.0# make prefix=/usr/local
root@ubuntu:~/git-2.9.0# make prefix=/usr/local install
Nous pouvons maintenant confirmer notre installation de Git. Vous pouvez définir la variable d'environnement pour récupérer les bibliothèques Git à partir de /usr/local en exécutant ldconfig.
root@ubuntu:~# git version
git version 2.9.0
Configuration de Git
Git est livré avec un outil appelé git config qui vous permet d'obtenir et de définir des variables de configuration qui contrôlent tous les aspects du fonctionnement de Git. Ces variables peuvent être stockées à trois endroits différents :
fichier/etc/gitconfig :Ce fichier contient des valeurs pour chaque utilisateur du système et tous leurs référentiels.
git config --system :Cette option lit et écrit spécifiquement à partir de ce fichier.
fichier ~/.gitconfig ou ~/.config/git/config :Ce fichier est propre à chaque utilisateur.
git config --global :Cette option lit et écrit spécifiquement à partir de ce fichier.
.git/config :fichier de configuration dans le répertoire Git du référentiel que vous utilisez actuellement. Ce fichier est spécifique à ce référentiel unique.
git config --local :Cette option lit et écrit spécifiquement à partir de ce fichier.
Création de votre identité
La première chose que vous devez faire après l'installation de Git est de marquer votre identité. Vous devez définir votre nom d'utilisateur et votre adresse e-mail. C'est important car Git commit utilise ces informations et elles sont immuablement attachées aux commits que vous créez.
root@ubuntu:~# git config --global user.name "Saheetha Shameer"
root@ubuntu:~# git config --global user.email [email protected]
Vérification de vos paramètres Git
Vous pouvez vérifier vos paramètres Git actuels en utilisant la commande git config --list. Cela listera tous les paramètres Git.
root@ubuntu:~# git config --list
user.name=Saheetha Shameer
[email protected]
Vous pouvez également vérifier l'état en saisissant une valeur de clé spécifique comme celle-ci
root@ubuntu:~# git config user.name
Saheetha Shameer
Commandes Git
Vous pouvez en savoir plus sur les commandes Git en exécutant l'git help commande. Voici quelques-unes des commandes Git courantes et leurs utilisations.
Vous pouvez obtenir la page du manuel Git en exécutant cette commande git help config.
Créer et gérer un dépôt Git
Tout d'abord, voyons comment vous pouvez créer un référentiel Git. Vous pouvez exécuter cette commande pour créer votre référentiel git sur le dossier existant. J'ai créé un dossier appelé gitdemo et lancé la commande git init pour créer mon dépôt.
root@ubuntu:~# mkdir gitdemo
root@ubuntu:~# cd gitdemo/
root@ubuntu:~/gitdemo#
root@ubuntu:~/gitdemo# git init
Initialized empty Git repository in /root/gitdemo/.git/
Après l'exécution de cette commande, vous pouvez voir qu'elle crée un dossier appelé .git. C'est là que git stocke tout, y compris les ensembles de modifications, les branches, etc. Voyons la structure de ce dossier.
À tout moment, vous pouvez supprimer ce dossier pour détruire votre référentiel. En bref, cela signifie que git utilise une configuration de base de fichiers locale où vous pouvez effectuer une sauvegarde manuelle de ce dossier pour conserver ou valider dans n'importe quel référentiel distant ou même envoyer ces fichiers de sauvegarde à vos amis, pour leur donner un accès direct à votre référentiel avec git installé dans leur système.
Pour le moment, nous n'avons rien à mettre sous contrôle de version, alors créons un fichier et vérifions le statut de git.
root@ubuntu:~/gitdemo# touch testrepo.txt
root@ubuntu:~/gitdemo# git status
On branch master
Initial commit
Untracked files:
(use "git add <file>..." to include in what will be committed)
testrepo.txt
nothing added to commit but untracked files present (use "git add" to track)
Même si le fichier testrepo.txt existe, il n'est pas encore suivi par Git. Le statut de Git nous indique que notre fichier n'est pas suivi. Nous devons résoudre ce problème avec la commande git add
root@ubuntu:~/gitdemo# git add testrepo.txt
root@ubuntu:~/gitdemo# git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: testrepo.txt
Maintenant, notre statut git indique que notre fichier de test est prêt à être validé. C'est ce qu'on appelle la mise en scène. Nous avons préparé ce fichier pour valider.
Avant de valider le référentiel, nous devons lancer la commande git add pour mettre à jour toutes les modifications. Par exemple, si nous modifions quoi que ce soit dans notre fichier de test, cela n'ajoutera pas les modifications lors de la validation tant que nous n'aurons pas exécuté ce git add commander à nouveau. Le statut Git vous aidera à identifier les modifications.
root@ubuntu:~/gitdemo# git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: testrepo.txt
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: testrepo.txt
Par conséquent, nous devons exécuter la commande git add pour mettre en scène ces modifications.
root@ubuntu:~/gitdemo# git add testrepo.txt
root@ubuntu:~/gitdemo# git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: testrepo.txt
Une fois que nous avons mis en scène nos modifications, nous sommes prêts à les valider dans notre référentiel. Vous pouvez utiliser git commit commande pour cela. En exécutant cette commande "git commit testrepo.txt", il affichera une fenêtre vim, où vous devrez taper "Initial commit" en haut de l'écran et enregistrer pour quitter.
root@ubuntu:~/gitdemo# git commit testrepo.txt
[master (root-commit) 2b3f303] Initial commit
1 file changed, 2 insertions(+)
create mode 100644 testrepo.txt
PS : you can even use git commit -m "changes" instead
Si nous exécutons à nouveau le statut git, nous pouvons voir qu'il n'y a plus de modifications en attente, ce qui signifie qu'elles sont toutes validées dans notre référentiel.
root@ubuntu:~/gitdemo# git status
On branch master
nothing to commit, working directory clean
Nous pouvons obtenir les détails de notre historique de validation en exécutant git log, qui fournira leurs détails tels que les auteurs, l'heure, la date, les notes de validation, etc.
root@ubuntu:~/gitdemo# git log
commit 2b3f30387f3b7417acbbc5287132df7441aa0881
Author: Saheetha Shameer <[email protected]>
Date: Thu Jul 14 08:02:52 2016 +0000
Initial commit
Vous pouvez obtenir encore plus d'informations sur le journal git en vous référant à son manuel avec la commande man git log. J'espère que cet article est informatif et utile pour vous. Merci d'avoir lu ceci. Bonne journée !