Outils pour utilisateurs

Outils du site


git:start

Git

Installation

L'installation dépend du système d'exploitation.
Par exemple sous debian:

apt-get install git

Dépendances

Avant de commencer il faut savoir que git se base sur ssh, le serveur client qui souhaitera communiquer avec le dépôt devra partager sa clef ssh publique.

Configuration

Se placer sur le serveur/poste/répertoire qui hébergera de dépôt git et ne servira qu'à ça, les sources de ce serveur/répertoire ne seront pas éditées.
Créer et se déplacer dans le répertoire souhaité, exemple :

cd /home/jonathan/
mkdir depot.git
cd depot.git

Initialiser le dépt grâce à la commande suivante :

git init --bare

L'option “–bare” signifie que ce ne sera pas un répertoire de travail, contrairement à une initialisation classique que l'on verra plus loin.
Se placer sur le serveur/poste/répertoire de travail, d'où le code sera édité.
Créer et se déplacer dans le répertoire souhaité, exemple :

cd /home/jonathan/
mkdir remoteserver
cd remoteserver

Initialiser le répertoire de travail :

git init

Pour éviter d'avoir les messages d'alerte, configurer les coordonnées maintenant :

git config user.email "jonathan@localhost"
git config user.name "jonathan"

Définir ce répertoire comme clone du dépôt :

git clone jonathan@remoteserver:'depot.git'

Le fichier de configuration du répertoire de travail se trouve alors à l'emplacement suivant:

cat .git/config
[core]
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
[user]
	email = jonathan@localhost
	name = jonathan
[remote "origin"]
	url = jonathan@raspiplop:depot.git
	fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
	remote = origin
	merge = refs/heads/master

Le serveur/poste/répertoire est prêt à être exploité.

Utilisation

Ajouter un premier fichier, par exemple :

mkdir monsiteweb
cd monsiteweb
echo "User-agent: *
Disallow: /" > robot.txt

Ajouter ce répertoire et son contenu comme objets à prendre en compte :

git add monsiteweb

Effectuer le premier commit :

git commit -m "Initial commit : add monsiteweb/robot.txt"

L'option “-m” permet d'écrire un commentaire, celui ci sera demandé s'il n'est pas précisé, autant ne pas l'oublier.
Enfin, pousser les modifications vers le dépôt :

git push origin master

Trucs

Hooks : Post-Upload

Il est possible de préciser au dépôt git d'effectuer des actions après un commit, par exemple pour mettre à jour un site web.
L'exemple ci-dessous définit le répertoire “/var/www/” comme répertoire de travail :

sudo git clone /home/jonathan/depot.git /var/www

Les commandes souhaitées se placent alors dans le fichier suivant :

cat depot.git/hooks/post-upload
#!/bin/bash
#

##
# Auteur: Jonathan Demmerlé
# Le    : 06/02/2016
##

echo " - mise en production - "

cd /var/www
unset GIT_DIR
sudo git pull origin master

sudo chown -R www-data: /var/www/*

Info : Exclude

Il est possible de ne pas prendre en compte des fichiers définis, par exemple, les fichiers temporaires ou de travail de certains logiciels :

cat .git/info/exclude
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]

git ls-files --others --exclude-from=.git/info/exclude
*~
Ce site web utilise des cookies. En utilisant le site Web, vous acceptez le stockage de cookies sur votre ordinateur. Si vous n'êtes pas d'accord, quittez le site.En savoir plus
git/start.txt · Dernière modification : de 127.0.0.1