Outils pour utilisateurs
git:start
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
git:start [2021/11/27 05:45] – [Developpement] felix | git:start [2022/10/20 17:18] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
Git est un outil de dépôt de logiciel. Il s' | Git est un outil de dépôt de logiciel. Il s' | ||
- | ~~MULTI_PLUGIN_OPEN~~ | + | |
??? Comment déposer mes sources sur votre git ? | ??? Comment déposer mes sources sur votre git ? | ||
!!! | !!! | ||
Nous réservons cette fonction aux kaznautes (toujours dans le souci de localiser les données au plus proche des utilisateurs). | Nous réservons cette fonction aux kaznautes (toujours dans le souci de localiser les données au plus proche des utilisateurs). | ||
- | Si vous souhaitez avoir un compte sur notre git, envoyez nous un courriel à [[contact@kaz.bzh|]] | + | Si vous souhaitez avoir un compte sur notre git, envoyez-nous un courriel à [[contact@kaz.bzh|]] |
??? | ??? | ||
- | ~~MULTI_PLUGIN_CLOSE~~ | + | |
====== Quelques commandes utiles ====== | ====== Quelques commandes utiles ====== | ||
- | Voici quelques commandes utiles. La liste n'est pas exhaustives. En particulier, | + | Voici quelques commandes utiles. La liste n'est pas exhaustive. En particulier, |
- | Ceci est très dangereux car, si un autre développeurs | + | Ceci est très dangereux car, si un autre développeur |
+ | |||
+ | ===== Principe ===== | ||
+ | |||
+ | GIT est un moyen pour les développeurs de gérer des versions de leurs sources. | ||
+ | On distingue : | ||
+ | * une base de données sur un ou des serveurs (remote) | ||
+ | * une base de données locale chez chaque développeur (local) | ||
+ | {{ : | ||
+ | |||
+ | Voici 4 familles de commande GIT suivant le sens de déplacement des données : | ||
+ | * (1) copie une branche de la BD locale vers le répertoire courant | ||
+ | < | ||
+ | * (2) copie du répertoire courant vers une branche de ta BD locale. | ||
+ | < | ||
+ | * (3) copie du serveur vers le répertoire courant | ||
+ | < | ||
+ | * (4) copie du répertoire courant vers le serveur | ||
+ | < | ||
===== Initialisation ===== | ===== Initialisation ===== | ||
Ligne 43: | Ligne 61: | ||
export EDITOR=emacs | export EDITOR=emacs | ||
</ | </ | ||
+ | Il faut faire la modification dans son <wrap safety> | ||
</ | </ | ||
Ligne 60: | Ligne 79: | ||
</ | </ | ||
- | ===== Developpement | + | ===== Développement |
Pour la création d'une sous-branche | Pour la création d'une sous-branche | ||
Ligne 67: | Ligne 86: | ||
git checkout -b develop master | git checkout -b develop master | ||
git checkout -b develop-perso develop | git checkout -b develop-perso develop | ||
- | |||
</ | </ | ||
Ligne 76: | Ligne 94: | ||
└── develop | └── develop | ||
└── develop-perso | └── develop-perso | ||
- | |||
</ | </ | ||
- | On peut créer des répertoires et des fichiers | + | On peut créer des répertoires et des fichiers, ils ne seront pas affectés |
On peut ajouter des fichiers avec la commande suivante (la tabulation complète avec les fichiers pas encore dans le git) : | On peut ajouter des fichiers avec la commande suivante (la tabulation complète avec les fichiers pas encore dans le git) : | ||
Ligne 85: | Ligne 102: | ||
<code bash> | <code bash> | ||
git add mon-fichier | git add mon-fichier | ||
- | |||
</ | </ | ||
- | A tout moment, on peut synchroniser les fichiers avec la référence | + | A tout moment, on peut synchroniser les fichiers avec la référence |
<code bash> | <code bash> | ||
git commit -a | git commit -a | ||
- | |||
</ | </ | ||
Ligne 101: | Ligne 116: | ||
<code bash> | <code bash> | ||
git push origin develop | git push origin develop | ||
- | |||
</ | </ | ||
Ligne 109: | Ligne 123: | ||
git fetch -a | git fetch -a | ||
git pull une-branche | git pull une-branche | ||
- | |||
</ | </ | ||
Ligne 116: | Ligne 129: | ||
<code bash> | <code bash> | ||
git branch --set-upstream-to=origin/ | git branch --set-upstream-to=origin/ | ||
+ | git config push.default current | ||
</ | </ | ||
Ligne 125: | Ligne 138: | ||
<code bash> | <code bash> | ||
git config pull.rebase false | git config pull.rebase false | ||
- | |||
</ | </ | ||
- | Dans ce cas, il pourra identifier des conflits qui seront | + | Dans ce cas, il pourra identifier des conflits qui seront |
- | pour intégrer les modification | + | pour intégrer les modifications |
<code bash> | <code bash> | ||
git merge une-branche-avec-de-nouvelles-fonctions | git merge une-branche-avec-de-nouvelles-fonctions | ||
- | |||
</ | </ | ||
- | Pour réinitialisé | + | Pour réinitialiser |
<code bash> | <code bash> | ||
git reset --hard HEAD | git reset --hard HEAD | ||
+ | </ | ||
+ | |||
+ | Si vous êtes plusieurs développeurs, | ||
+ | |||
+ | Mais git vous le signale avec le motif suivant : | ||
+ | < | ||
+ | <<<<<<< | ||
+ | votre code | ||
+ | ======= | ||
+ | Autre code | ||
+ | >>>>>>> | ||
</ | </ | ||
+ | |||
+ | Prenons l' | ||
+ | <code c++> | ||
+ | int i; // une variable | ||
+ | </ | ||
+ | |||
+ | Vous avez modifié votre branche <wrap safety> | ||
+ | <code c++> | ||
+ | int j; // compteur de brouzouf (avant c' | ||
+ | </ | ||
+ | |||
+ | Sur le site une modification a été enregistrée | ||
+ | <code c++> | ||
+ | int j; // compteur de brouzouf (modif dans develop) | ||
+ | </ | ||
+ | |||
+ | Au moment de <wrap safety> | ||
+ | < | ||
+ | Fusion automatique de test.c | ||
+ | CONFLIT (contenu) : Conflit de fusion dans test.c | ||
+ | La fusion automatique a échoué ; réglez les conflits et validez le résultat. | ||
+ | </ | ||
+ | L' | ||
+ | {{ : | ||
+ | |||
+ | Voici quelques commandes utiles : | ||
+ | < | ||
+ | key | ||
+ | --- | ||
+ | C-c ^ n smerge-next | ||
+ | C-c ^ p smerge-prev | ||
+ | C-c ^ u smerge-keep-upper | ||
+ | C-c ^ l smerge-keep-lower | ||
+ | C-c ^ a smerge-keep-all | ||
+ | C-c ^ RET smerge-keep-current | ||
+ | C-c ^ C smerge-combine-with-next | ||
+ | </ | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Pour rechercher les conflits faire | ||
+ | <code bash> | ||
+ | git diff --name-only --diff-filter=U | ||
+ | </ | ||
+ | ou | ||
+ | <code bash> | ||
+ | find . -type f -exec grep -q "<<<<<<<" | ||
+ | </ | ||
+ | </ | ||
Ligne 154: | Ligne 224: | ||
{{ : | {{ : | ||
- | Ensuite vous remplissez le formulaire en indiquant à gauche la branche de destination et à droite la branche qui contient modifications récentes (le sens n'est pas naturelle). | + | Ensuite vous remplissez le formulaire en indiquant à gauche la branche de destination et à droite la branche qui contient modifications récentes (le sens n'est pas naturel). |
{{ : | {{ : | ||
L' | L' | ||
{{ : | {{ : | ||
+ |
git/start.1637991954.txt.gz · Dernière modification : 2021/11/27 05:45 de felix