Comment puis-je faire Git utiliser l'éditeur de mon choix pour les révisions?
Je préfère écrire mes messages de commit dans Vim, mais c'est de les ouvrir dans Emacs.
Comment puis-je configurer Git de toujours utiliser Vim? Remarque que je veux faire cela à l'échelle mondiale, et pas seulement pour un seul projet.
- "Comment obtenir git pour aller à vim pour la validation des commentaires du git-aller?"
- Liées (en double possible): Comment puis-je configurer un éditeur pour travailler avec Git sur Windows?
InformationsquelleAutor brasskazoo | 2010-04-08
Vous devez vous connecter pour publier un commentaire.
Si vous souhaitez définir l'éditeur seulement pour Git, ne soit (vous n'avez pas besoin de deux):
de base.l'éditeur
dans votre Git config:git config --global core.editor "vim"
GIT_EDITOR
variable d'environnement:export GIT_EDITOR=vim
Si vous souhaitez définir l'éditeur pour Git et aussi d'autres programmes, ensemble normalisé d'
VISUAL
etEDITOR
variables d'environnement*:* définition des deux n'est pas forcément nécessaire, mais certains programmes ne peuvent pas utiliser la plus correcte
VISUAL
. VoirVISUAL
au lieu deÉDITEUR
.Pour Sublime Text:
Ajoutez à cela le
.gitconfig
. Le--wait
est important. (il permet de taper du texte dans sublime et va attendre pour enregistrer/fermer événement.'subl" peut être remplacé par le chemin complet de l'exécutable, mais est généralement disponible lorsqu'il est correctement installé.
git config --global
voudrais écrire à vos données personnelles (par utilisateur) git fichier de configuration. Sur Unix, il est~/.gitconfig
. Donc, ce serait de le configurer pour tous vos dépôts.git commit --amend
-w {scriptout}
enregistre tous les caractères que vous saisissez lors de l'édition de rejouer plus tard. Vous êtes peut-être de le confondre avec-f
, qui est nécessaire lors de l'appel de la version graphique de Vim. C'est, si vous utilisezmvim
, puis l'éditeur que vous spécifiez doit êtremvim -f
plutôt quemvim
.macvim
)! Les deux -w et -W ne pas fonctionner correctement pour moi. Avec -w j'ai euAborting commit due to empty commit message.
, et -W ouvert un vim fenêtre de bienvenue.core.editor
etGIT_EDITOR
ensemble,GIT_EDITOR
sera utilisé. C'est bien pour réglage par défaut via git config et en remplaçant la config pour les commandes individuelles si nécessaire. Par exemple, j'ai juste besoin$ GIT_EDITOR=nano git rebase -i origin/master
parce que mon X n'était pas disponible pour utiliser mon éditeur.git config --global core.editor "subl -n -w" ~
git config --global core.editor "notepad"
'subl' -w -n: subl: command not found
error: There was a problem with the editor ''subl' -w -n'
git config --global core.editor "'C:/Program Files/Sublime Text 3/subl.exe' --wait"
Copier coller ceci:
Dans le cas où vous voulez savoir ce que vous faites. De
man git-commit
:VISUAL
ouEDITOR
, mais ils ne sont certainement pas utiliserGIT_EDITOR
oucore.editor
.man git-commit
?Sur Ubuntu et aussi Debian (merci @MichielB) changer l'éditeur par défaut est également possible en cours d'exécution:
Qui invite les suivantes:
alternatives
système est un moyen beaucoup plus facile de gérer les paramètres par défaut pour les prises en charge les types de programme. Pour référence: debian-administration.org/article/91/...GIT_EDITOR
etEDITOR
pas de travail --ubuntuDans windows 7, lors de l'ajout du "Sublime" de l'éditeur, il était encore de me donner une erreur:
Sublime n'a pas été en mesure de garder le focus.
Pour corriger cela, j'ai ouvert le .gitconfig fichier dans c:/users/username/dossier et ajouté la ligne suivante à l'aide de --option d'attente à l'extérieur des guillemets.
Espère que son utile à quelqu'un face à problème similaire avec Sublime.
git config --global core.editor "'C:/Program Files/Sublime Text 3/subl.exe' --wait"
Dans Windows 7, réglage de l'éditeur Notepad++
C:\Users\YOUR_USERNAME\.gitconfig
git commit
et appuyez surEnter
. Il va s'ouvrir Notepad++.-multiInst
en tant que paramètre à notepad++ et éventuellement-notabbar
. Cela s'git n'a pas l'air de savoir quand vous avez fini d'éditer le fichier et attend jamais ou pas du tout.>git config --global core.editor '"C:/Program Files (x86)/Notepad++/notepad++.exe"'
-multiInst
et-notabbar
ont été nécessaires. Ce qui était sur écoute depuis quelques heures.editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar
- qui est, params à l'extérieur de la délimitation des guillemets simplesPour Faire de Code de Visual Studio (vscode) votre défaut, git éditeur
Et si vous travaillez avec des designers à l'aide de la ligne de commande puis Pico, et ne sais pas de raccourcis 😉
Ou
Réglage de Sublime Text 2 comme Git commit l'éditeur sous Mac OSX 10
Exécuter cette commande:
Ou tout simplement:
mate
..-w
paramètre. Par exemple.$ git config --global core.editor "code -w"
. Bien des chosesAtome comme votre git éditeur
Windows: configuration de bloc-notes en tant que par défaut le message de validation de l'éditeur de
Appuyez sur Ctrl+S pour enregistrer votre message de commit. À jeter, il suffit de fermer la fenêtre du bloc-notes, sans enregistrer.
Dans le cas où vous frappez le raccourci pour enregistrer, puis décider d'annuler, allez dans Fichier->Enregistrer sous, puis dans la boîte de dialogue qui s'ouvre, modifiez "Save as type" sur "Tous les fichiers (*.*)". Vous verrez un fichier nommé "COMMIT_EDITMSG". Le supprimer, et de fermer la fenêtre du bloc-notes.
Edit: Alternativement, et de plus en plus facilement, de supprimer tout le contenu de l'ouvrir la fenêtre du bloc-notes et cliquez sur enregistrer. (merci mwfearnley pour le commentaire!)
Je pense que pour les petites écrire-ups telles que des messages de validation de bloc-notes qui sert au mieux, car il est simple, est-il avec windows, ouvre en un rien de temps. Même votre sublime peut prendre une seconde ou deux pour obtenir tiré vers le haut quand vous avez une charge de plugins et d'autres choses.
\r\n
(saut de ligne dans Windows) et\n
(saut de ligne dans linux, également par défaut pour Git).core.editor = 'notepad' .git/COMMIT_EDITMSG --wait
afin qu'elle s'ouvre et enregistre la valeur par défaut modifier le message et que vous n'avez pas besoin de "enregistrer sous"Pour les utilisateurs d'emacs
.emacs
:shellrc
:git config --global core.editor "emacs -nw"
git config --global core.editor "emacs -nw -q"
, où la-q
ignore les fichiers d'initialisation.Meilleurs réglages pour Sublime Text 3 comme votre git éditeur (Windows & Linux instructions):
De suivre ces instructions dans Windows assurez-vous que vous avez installé git pour Windows. Dans Windows, j'aime utiliser Git BASH sorte qu'il se sent plus comme Linux.
Tout d'abord, nous voulons créer un Sublime Texte du projet de sorte que nous pouvons spécifier projet spécial paramètres que nous voulons définir à chaque fois que git appelle l'éditeur, pour faciliter les choses lors de l'édition dans git. Par exemple, j'ai l'habitude de mettre mon souverain à 120 caractères dans la plupart des projets, mais pour git commit messages je veux qu'il soit 72 caractères, de sorte qu'il s'intègre parfaitement dans un terminal lorsque vous appelez
git log
ougit lg
.1. Créer un Sublime Texte du projet avec les paramètres que nous voulons utiliser pour éditer git commit messages
Ouvrir Sublime Texte et allez dans "Fichier" --> "Nouvelle Fenêtre" pour créer un nouveau projet anonyme. Aller à "Projet" --> "Enregistrer le Projet sous..." et choisissez un emplacement pour l'enregistrer. Dans Linux je l'ai enregistré dans mon Linux à la maison répertoire avec le nom de fichier
.gitconfig.sublime-project
. Son chemin est donc:~/.gitconfig.sublime-project
. Dans Windows aussi l'enregistrer dans votre répertoire home, ex:C:\Users\MY_USER_NAME\.gitconfig.sublime-project
Maintenant, allez à "Projet" --> "Projet Modifier" pour modifier les paramètres du projet. Collez le code suivant et enregistrer les paramètres. Apportez des modifications supplémentaires pour les paramètres de votre projet si vous le souhaitez.2. Jeu de l'éditeur pour être utilisé par git
Maintenant, nous devons mettre de l'éditeur pour être utilisé par git, en modifiant le
.gitconfig
fichier.Pour Linux:
Votre utilisateur copie de la présente sera situé dans
~/.gitconfig
. Ouvrez ce fichier et ajoutez les lignes suivantes. Assurez-vous d'utiliser le bon nom de chemin d'accès pour le projet git que vous venez de créer au-dessus! Je suis en utilisant~/.gitconfig.sublime-project
.La
--wait
est important, tout comme les forces de git d'attendre jusqu'à ce que vous fermez le fichier avant qu'il continue sur. Le--project
ligne est important de le dire Sublime Text le projet qui vous voulez ouvrir chaque fois que git ouvre Sublime.Par @digitaldreamer la réponse ci-dessus (https://stackoverflow.com/a/2596835/4561887), "
subl
peut être remplacé par le chemin complet de l'exécutable, mais [l'aliassubl
] est généralement disponible lorsque [Sublime est correctement installé."Pour Windows:
Pour Windows, lisez d'abord les instructions données pour Linux pour l'info de base. Maintenant, nous allons faire quelque chose de presque identiques.
(En OPTION: créer un
subl
alias pour une utilisation dans Git BASH):Ouvrir un éditeur de texte (ex: Notepad, Notepad++, Sublime Text, Geany, etc), et créez un fichier appelé ".bash_profile" dans votre répertoire home. Son chemin sera donc:
C:\Users\MY_USER_NAME\.bash_profile
. Enregistrer ce qui suit dedans:Cela crée un Git BASH alias appelé
subl
que nous pouvons maintenant utiliser Git BASH pour Windows, pour ouvrir facilement les Sublime. Cette étape n'est pas obligatoire mais il est utile de général Git BASH utilisation. Maintenant, vous pouvez appelersubl .
, par exemple, dans Git BASH pour ouvrir une nouvelle Sublime Projet dans votre répertoire courant.(OBLIGATOIRE):
Modifier le
.gitconfig
fichier qui se trouve dans votre répertoire home:C:\Users\MY_USER_NAME\.gitconfig
, par adjonction, à elle. Remarquez les changements subtils de la Linux instructions ci-dessus:/
PAS\
pour séparer les dossiers dans le chemin d'accès de nom de! (Merci VonC pour m'aider à voir ce).subl
alias que l'on fait pour Git BASH ci-dessus ne fonctionne pas ici, de sorte que vous ne pouvez pas l'utiliser comme nous l'avons fait dans le Linux exemple, au lieu de cela, vous devez spécifier le chemin d'accès complet comme indiqué ci-dessus.~
symbole, cependant, n'a encore travailler ici pour obtenir votre Windows home directory.2.5. (Facultatif) Installez le "Git" paquet dans Sublime Text 3.
Cela vous donne la coloration syntaxique pour le
git commit
des messages, ainsi que l'accès à d'autres commandes git commegit blame
(que j'utilise fréquemment dans Sublime Text) ougit commit
(que je n'ai pas l'utiliser dans Sublime Text depuis je préfère la ligne de commande pour le général git flow, comme je l'ai mentionné dans mes commentaires ci-dessous cette réponse).Pour installer un package: tout d'Abord, s'assurer de la “Package Control” est installé. Ensuite, appuyez sur la touche Ctrl + Maj + P (de même que les Outils → Commande de la Palette) et tapez tout ou partie du “Package Control: Package d'Installation”, puis appuyez sur Enter. Dans la boîte de recherche qui s'ouvre, rechercher le package "Git" et appuyez sur Entrée ou cliquez sur elle, afin de les installer automatiquement.
Une fois installé, Ctrl + Maj + P alors la recherche pour "git" affichera les commandes git que vous pouvez utiliser en interne, à l'intérieur de Sublime Text maintenant, comme
git blame
.3. Utiliser
Maintenant, lorsque vous appelez
git commit
, par exemple, comme d'habitude à partir de la ligne de commande, Sublime Texte d'ouvrir la.gitconfig.sublime-project
nous avons créé ci-dessus, que les paramètres du projet! À mesure que vous tapez un paragraphe, vous remarquerez qu'il s'étend au-delà de la règle nous ensemble depuis soft word-wrap est éteint. À force de dur envelopper par l'auto-inséré dur de revenir à la fin de chaque ligne, placez votre curseur sur le long de la ligne que vous voulez auto-enveloppé et appuyez sur Alt + Q. Il sera désormais difficile wrap/dur-pli à 72 caractères, qui est ce que nous avons défini dans les paramètres du projet' de "règles" paramètre ci-dessus.Maintenant, enregistrez votre message de validation avec Ctrl + S, et à la sortie (à compléter votre
git commit
) avec Ctrl + Maj + W.Fait!
Git Commit
la syntaxe type. Vous pouvez passer la commande "sublime-texte du projet" étape maintenant.sublime
avecgit
et également utilisertrim_trailing_white_space_on_save
vous souhaitez ajouter un alias pour le patch ajoutant car la suppression d'espace de fin pauses patch éditions où elle est très significative. Ceci peut être réalisé avec quelque chose comme ceci:git config --global alias.patch "-c core.editor=vim add --patch"
Cela fournit une réponse pour les gens qui arrivent à cette Question qui pourrait faire le lien entre un éditeur autre que vim.
La ressource liée par Github,est susceptible d'être tenu à jour, lorsque les rédacteurs en chef sont mis à jour, même si des réponses sur (y compris celui-ci) ne le sont pas.
Associe dans ce cas des Éditeurs de Texte avec git
De Github post montre exactement ce qu'il faut taper en ligne de commande pour divers éditeurs, y compris les options/indicateurs spécifiques à chaque éditeur pour qu'il fonctionne mieux avec git.
Notepad++:
git config --global core.editor "'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
Sublime Text:
git config --global core.editor "'c:/Program Files/sublime text 3/subl.exe' -w"
Atom:
git config --global core.editor "atom --wait"
Les commandes ci-dessus supposent que votre rédacteur en chef a été installé dans le répertoire par défaut pour une machine windows.
Les commandes fondamentalement ajouter le texte entre les guillemets pour
.gitconfig
dans votre répertoire home.Sur une machine windows à la maison est susceptible d'être
C:\Users\your-user-name
, où votre nom d'utilisateur est votre nom d'utilisateur.À partir de la ligne de commande, vous pouvez atteindre ce répertoire en tapant dans
cd ~
.par exemple, une commande ci-dessus serait d'ajouter la ligne suivante sous la
[core]
section comme suit:[core]
editor = 'C:/Program Files/sublime text 3/subl.exe' -w
Si vous avez un autre éditeur, il suffit de remplacer le chemin d'accès à votre éditeur, en utilisant soit la méthode ci-dessus. (et l'espoir pas de drapeaux sont nécessaires pour une utilisation optimale.)
Mvim que votre git éditeur
Comme toutes les autres applications avec interface graphique, vous devez lancer mvim avec l'attente du pavillon.
--remote-wait-silent
pour éviter le vilain message d'erreur 🙂Pour les utilisateurs de Windows qui veulent utiliser neovim avec le sous-système Windows pour Linux:
git config core.editor "C:/Windows/system32/bash.exe --login -c 'nvim .git/COMMIT_EDITMSG'"
C'est pas une recette miracle qu'il ne gère pas interactif année de référence (par exemple). Des améliorations bienvenues!
Juste essayer
EDITOR=vim git commit
.Ou vous pouvez configurer votre ÉDITEUR vim par
export EDITOR=vim
dans votre bashrc.Pour les utilisateurs de TextWrangler sur le Mac app store:
Aussi, assurez-vous que votre "TextWrangler > Préférences > Application > Lorsque TextWrangler devient active:" est réglé à "Ne rien faire"
Cela fonctionne pour moi sur OS X 10.11.4. de avec TextWrangler 5.0.2 sur le Mac app store.
Explication:
La -n moyen de l'ouvrir dans une nouvelle instance.
La -W signifie d'attendre jusqu'à ce que l'application se ferme avant d'utiliser le contenu du fichier édité le message de commit.
La -un TextWrangler signifie utiliser le TextWrangler application pour ouvrir le fichier.
Voir
man open
dans votre Mac Terminal d'application pour plus de détails.git config --global core.editor "edit -w"
. Cela va ouvrir le message de commit dans l'instance en cours et dès que vous fermez seulement ce message de validation document, le commit va continuer.Lors de l'utilisation de
git-review
j'ai dû modifiersequence.editor
valeur pour être en mesure de faire rebase interactif (git rebase -i -p
):gvim
besoin:apt install vim-gtk
Références
Pour Textmate Utilisateurs
Cela ouvre Textmate de l'éditeur lorsque vous souhaitez modifier vos commits.
Nécessite textmate outils de ligne de commande pour être installé.
git config --global core.editor "mate -w"
git config --global core.editor "/usr/local/bin/mate -w"
Pour les utilisateurs de Windows qui veulent utiliser Kinesics Éditeur de Texte
Créer un fichier nommé 'k.sh", d'ajouter le texte suivant et le placer dans votre répertoire home (~):
À l'invite git type: