Réponses:
Une solution possible à partir de git config
:
git config --global mergetool.keepBackup false
Après avoir effectué une fusion, le fichier d'origine avec des marqueurs de conflit peut être enregistré en tant que fichier avec une
.orig
extension.
Si cette variable est définie sur,false
ce fichier n'est pas conservé.
Par défauttrue
(c'est- à -dire conserver les fichiers de sauvegarde).
L'alternative étant de ne pas ajouter ou ignorer ces fichiers, comme suggéré dans cet article de gitguru ,
git mergetool
enregistre la version en conflit de fusion du fichier avec le.orig
suffixe « ».
Assurez-vous de le supprimer avant d'ajouter et de valider la fusion ou de l'ajouter*.orig
à votre.gitignore
.
Berik suggère dans les commentaires d'utiliser:
find . -name \*.orig
find . -name \*.orig -delete
Charles Bailey conseille dans sa réponse d'être conscient des paramètres internes des outils de diff qui pourraient également générer ces fichiers de sauvegarde, quels que soient les paramètres git.
.bak
comme mentionné dans son manuel ).Vous devez donc également réinitialiser ces paramètres.
git config --global mergetool.keepBackup false
, Résolu pour P4Merge sur Mavericks 10.9.2. Merci :)
keepBackup = false
sous [mergetool]
, pas sous [mergetool "BeyondCompare4"]
ou quel que soit l'outil de fusion visuel que vous avez configuré.
Vous devez être un peu prudent avec l'utilisation kdiff3
car tant que vous git mergetool
pouvez être configuré pour enregistrer un .orig
fichier pendant la fusion, le comportement par défaut de kdiff3
est également d'enregistrer un .orig
fichier de sauvegarde indépendamment de git mergetool
.
Vous devez vous assurer que la mergetool
sauvegarde est désactivée:
git config --global mergetool.keepBackup false
et aussi que les paramètres de kdiff3 sont définis pour ne pas créer de sauvegarde:
Configure/Options => Directory Merge => Backup Files (*.orig)
Configure/Options => Directory Merge => Backup Files (*.orig)
vraiment aidé à se débarrasser de tous les étranges io-esclaves, klauncher «» protocole inconnu, et n'a pas pu créer d'erreurs .orig. merci
git config --global mergetool.keepBackup false
-il régler?
L'option d'enregistrement du fichier .orig peut être désactivée en configurant KDiff3
J'utilise ceci pour nettoyer tous les fichiers se terminant par ".orig":
function git-clean-orig {
git status -su | grep -e"\.orig$" | cut -f2 -d" " | xargs rm -r
}
Si vous êtes un chat effrayé :) vous pouvez laisser la dernière partie juste pour les lister (ou laisser la -r
si vous voulez approuver chaque suppression):
function git-show-orig {
git status -su | grep -e"\.orig$" | cut -f2 -d" "
}
J'utilise simplement la commande
git clean -n *.orig
vérifiez que seul le fichier que je souhaite supprimer est répertorié, puis
git clean -f *.orig
Outre les bonnes réponses proposées comme solutions à long terme, vous pouvez utiliser git pour supprimer tous les fichiers inutiles une fois pour vous avec la git clean -f
commande, mais utilisez d' git clean --dry-run
abord pour vous assurer que rien ne se produirait.
Cela a l'avantage d'utiliser les fonctionnalités intégrées testées de Git sur des scripts spécifiques à votre système d'exploitation / shell pour supprimer les fichiers.
Les fenêtres:
Win/Users/HOME/.gitconfig
ensemble de fichiersmergetool.keepTemporaries=false
git/libexec/git-core/git-mergetool
, dans la fonction cleanup_temp_files()
add rm -rf -- "$MERGED.orig"
dans le bloc else.