tuto:linux:git
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 | ||
tuto:linux:git [2018/09/25 18:37] – [Astuces] root | tuto:linux:git [2024/07/19 08:26] (Version actuelle) – admin | ||
---|---|---|---|
Ligne 74: | Ligne 74: | ||
then | then | ||
| | ||
- | GIT_COMITTER_NAME=" | + | GIT_COMMITTER_NAME=" |
- | | + | |
- | | + | |
git commit-tree " | git commit-tree " | ||
else | else | ||
Ligne 725: | Ligne 725: | ||
Trouver par recherche dichotomique la modification qui a introduit un bug : | Trouver par recherche dichotomique la modification qui a introduit un bug : | ||
* [[https:// | * [[https:// | ||
+ | |||
+ | ==== submodule ==== | ||
+ | * Config : | ||
+ | < | ||
+ | git config --local status.submoduleSummary true | ||
+ | git config --local diff.submodule log | ||
+ | </ | ||
+ | |||
+ | * Ajout de submodules: | ||
+ | < | ||
+ | git submodule add -b docker-edge-to-nightly --force https:// | ||
+ | git submodule add -b main https:// | ||
+ | git submodule add https:// | ||
+ | </ | ||
+ | |||
+ | * Etat des submodules entre ceux déclarés et ceux connus : | ||
+ | < | ||
+ | cat .gitmodules | ||
+ | cat .git/config | ||
+ | </ | ||
+ | |||
+ | * Cloner un projet en copiant également les submodules : | ||
+ | < | ||
+ | git clone --recursive https://xxx xxx | ||
+ | </ | ||
+ | |||
+ | * Initialiser un projet : | ||
+ | < | ||
+ | git submodule update --init --recursive | ||
+ | </ | ||
+ | |||
+ | * Mettre à jour les sous-projets à la dernière version de la branche : | ||
+ | < | ||
+ | git submodule update --init --recursive --remote --rebase | ||
+ | </ | ||
+ | |||
+ | * Status: | ||
+ | < | ||
+ | git submodule status --recursive | ||
+ | </ | ||
+ | |||
+ | * Vérifier le SHA avant de mettre à jour les submodules: | ||
+ | < | ||
+ | git ls-tree -r HEAD dev/docker | ||
+ | 160000 commit c700df55425430d352d16b2a59bea2ab67a6a8bb dev/docker | ||
+ | </ | ||
+ | |||
+ | * Nettoyer les sous-projets : | ||
+ | < | ||
+ | git submodule status --recursive | ||
+ | git fetch --recurse-submodules --prune | ||
+ | git submodule foreach --recursive 'git reset --hard' | ||
+ | git submodule foreach --recursive 'git clean -fdx' | ||
+ | </ | ||
+ | |||
+ | * Changement de branche de tracking : | ||
+ | < | ||
+ | git submodule set-branch --branch master dev/docker | ||
+ | git submodule set-branch --default dev/docker | ||
+ | </ | ||
+ | |||
+ | * Suppression d'un submodule: | ||
+ | < | ||
+ | git submodule deinit -f -- nginx | ||
+ | git rm -f nginx | ||
+ | rm -rf .git/ | ||
+ | </ | ||
+ | |||
+ | ==== worktree ==== | ||
+ | * Créer un worktree sur une nouvelle branche nommée **myfeature** depuis la branche main dans **../ | ||
+ | < | ||
+ | git worktree add -b myfeature ../ | ||
+ | </ | ||
+ | |||
+ | * Lister les worktree: | ||
+ | < | ||
+ | $ git worktree list | ||
+ | / | ||
+ | / | ||
+ | </ | ||
+ | |||
+ | * Supprimer un worktree: | ||
+ | < | ||
+ | git worktree remove / | ||
+ | </ |
tuto/linux/git.1537900620.txt.gz · Dernière modification : 2018/09/25 18:37 de root