Lors de l’utilisation de git sur la ligne de commande, je me demande s’il est possible d’utiliser Visual Studio Code comme éditeur par défaut, c’est-à-dire lors de la création de commentaires de validation et lorsqu’on regarde un diff d’un fichier à partir de la ligne de commande.
Je comprends qu’il ne sera pas possible de l’utiliser pour effectuer des fusions (du moins à la minute), mais est-ce que quelqu'un sait s’il est possible de l’utiliser pour examiner les diff, et si oui, quelles options de ligne de commande seraient nécessaires dans le fichier .gitconfig pour y arriver?
UPDATE 1:
J'ai essayé une approche similaire à ce que j'ai fait pour Notepad ++ dans le passé , c'est-à-dire.
#!/bin/sh
"c:/Program Files (x86)/Notepad++/notepad++.exe" -multiInst -notabbar -nosession -noPlugin "$*"
Et utilisé:
#!/bin/sh
"C:\Users\gep13\AppData\Local\Code\app-0.1.0\Code.exe" "$*"
Mais cela entraîne un message d'erreur:
C:\temp\testrepo [master +1 ~0 -0]> git commit
[8660:0504/084217:ERROR:crash_reporter_win.cc(70)] Cannot initialize out-of-process crash handler
Aborting commit due to empty commit message.
C:\temp\testrepo [master +1 ~0 -0]>
Le code s’ouvre correctement, avec le contenu attendu, mais il n’attend pas la réponse, c’est-à-dire que vous enregistrez et fermez la fenêtre pour revenir à Invite.
UPDATE 2:
Je viens de recevoir l’avis de l’un des développeurs travaillant sur VSCode. On dirait que cette fonctionnalité n'est actuellement pas supportée :
--- (https://Twitter.com/IsidorN/status/595501573880553472
Si vous souhaitez que cette fonctionnalité soit ajoutée, vous voudrez peut-être ajouter vos votes ici:
UPDATE 3:
J'ai été informé de manière fiable que cette fonctionnalité a été prise en charge par l'équipe de VSCode. Je suis donc impatient de recevoir une future version qui l'inclura.
MISE À JOUR 4:
Grâce au commentaire @ f-boucheros ci-dessous, j'ai pu faire fonctionner VS Code en tant qu'éditeur par défaut pour les commentaires de validation, les modifications de base, etc. J'aimerais toujours voir s'il est également possible de l'utiliser comme outil de différenciation.
UPDATE 5:
Selon la réponse acceptée pour la question, cela est désormais possible avec la version 1.0 du code.
Dans la version la plus récente (v1.0, publiée dans en mars 2016 ), vous pouvez maintenant tiliser VS Code comme git par défaut). outil commit/diff . Cité des documentations:
Assurez-vous que vous pouvez exécuter
code --help
à partir de la ligne de commande et obtenir de l'aide.
si vous ne voyez pas d'aide, veuillez suivre ces étapes:
Mac: Sélectionnez Shell Command: Installez la commande 'Code' dans le chemin à partir de la palette de commandes.
- La palette de commandes est ce qui apparaît lorsque vous appuyez sur shift + ⌘ + P dans VS Code. (shift + ctrl + P sous Windows)
- Windows: Assurez-vous d'avoir sélectionné Ajouter à CHEMIN lors de l'installation.
- Linux: Assurez-vous que vous avez installé Code via nos nouveaux packages .deb ou .rpm.
- À partir de la ligne de commande, exécutez
git config --global core.editor "code --wait"
Vous pouvez maintenant exécuter
git config --global -e
et utiliser VS Code comme éditeur pour configurer Git. Ajoutez les éléments suivants pour activer la prise en charge de l’utilisation de VS Code en tant qu’outil de différenciation:
[diff]
tool = default-difftool
[difftool "default-difftool"]
cmd = code --wait --diff $LOCAL $REMOTE
Ceci exploite la nouvelle option
--diff
que vous pouvez transmettre à VS Code pour comparer deux fichiers côte à côte.Pour résumer, voici quelques exemples d'utilisation de Git avec VS Code:
git rebase HEAD~3 -i
permet de créer une base interactive à l'aide de VS Codegit commit
permet d'utiliser VS Code pour le message de validationgit add -p
suivi dee
pour l'ajout interactifgit difftool <commit>^ <commit>
permet d'utiliser VS Code comme éditeur de diff pour les modifications
Pour ce que je comprends, le VSCode n'est plus dans AppData.
Donc, définissez l'éditeur git par défaut en exécutant cette commande dans une fenêtre d'invite de commande:
git config --global core.editor "'C:\Program Files (x86)\Microsoft VS Code\code.exe' -w"
Le paramètre -w
, --wait
doit attendre que la fenêtre se ferme avant de revenir. Le code Visual Studio est basé sur Atom Editor. Si vous avez également installé atom, exécutez la commande atom --help
. Vous verrez que le dernier argument de l'aide est attendre.
La prochaine fois que vous ferez un git rebase -i HEAD~3
, il affichera le code Visual Studio. Une fois que le VSCode est proche, Git reprendra l’avance.
Remarque: Ma version actuelle de VSCode est 0.9.2.
J'espère que cette aide.
Vous devez utiliser la commande:
git config --global core.editor "'C:\Program Files\Microsoft VS Code\code.exe' -n -w"
Assurez-vous de pouvoir démarrer votre éditeur depuis Git Bash
Si vous souhaitez utiliser Code.exe avec un chemin court, vous pouvez le faire en ajoutant la ligne suivante à votre fichier .bash_profile:
alias vscode="C:/Program\ Files/Microsoft\ VS\ Code/Code.exe"
Et maintenant, vous pouvez l'appeler en utilisant uniquement la commande vscode
(ou le nom que vous lui avez donné)
Quelques informations supplémentaires:
Le programme d’installation ajoutera du code Visual Studio à votre% PATH%. Vous pourrez ainsi taper "code" à partir de la console pour ouvrir VS Code sur ce dossier. Vous devrez redémarrer votre console après l'installation pour que la modification de la variable d'environnement% PATH% prenne effet.
Une autre option utile consiste à définir la variable d’environnement EDITOR
. Cette variable d’environnement est utilisée par de nombreux utilitaires pour savoir quel éditeur utiliser. Git l'utilise également si aucun core.editor
n'est défini.
Vous pouvez le définir pour la session en cours en utilisant:
export EDITOR=code --wait
De cette façon, non seulement git
, mais de nombreuses autres applications utiliseront VS Code comme éditeur.
Pour rendre cette modification permanente, ajoutez ceci à ~/.profile
par exemple. Voir cette question pour plus d'options.
J'ai ouvert mon .gitconfig
et l'ai modifié avec:
[core]
editor = 'C:/Users/miqid/AppData/Local/Code/app-0.1.0/Code.exe'
Cela l’a fait pour moi (je suis sous Windows 8).
Cependant, j'ai remarqué qu'après avoir essayé un git commit
arbitraire _ dans ma console Git Bash, je vois le message suivant:
[9168:0504/160114:INFO:renderer_main.cc(212)] Renderer process started
Pas sûr de ce que les conséquences de cela pourraient être.
Bonnes nouvelles! Au moment de la rédaction de ce document, cette fonctionnalité était déjà implémentée dans la version 0.10.12-initiés et exécutée via . ) 0.10.14-initiés . Nous allons donc l'avoir dans la prochaine version Version 1.0 de VS Code .
Réf. Implémentation: Implement -w/- wait, argument de ligne de commande
GitPad définit votre éditeur de texte actuel comme éditeur par défaut pour Git.
Mon éditeur par défaut pour les fichiers .txt
dans Windows 10 est le code Visual Studio et l'exécution de GitPad en a déjà fait l'éditeur par défaut de Git. Je n'ai pas rencontré les problèmes mentionnés dans la question (Git attend que la fenêtre du code VS soit fermée dans mon cas).
(Le lien pour le fichier .exe
ne fonctionnait pas pour moi, vous devrez peut-être compiler vous-même le code source.)
Exécutez cette commande dans votre application Mac Terminal
git config --global core.editor "/Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code"
Je veux juste ajouter ces barres obliques inversées aux réponses précédentes. Je suis sur Windows 10 CMD et cela ne fonctionne pas sans les barres obliques inverses avant les espaces.
git config --global core.editor "C:\\Users\\your_user_name\\AppData\\Local\\Programs\\Microsoft\ VS\ Code\\Code.exe"
sur Windows 10 à l'aide de l'édition 64bit initiés, la commande doit être:
git config --global core.editor "'C:\Programmes\Microsoft VS Code Insiders\bin\code-insiders.cmd'"
vous pouvez également renommer 'code-insiders.cmd' en 'code.cmd' dans le répertoire 'Program Files', de cette manière, vous pouvez désormais utiliser la commande 'code'. pour commencer à éditer les fichiers sur le. annuaire
Je ne suis pas sûr de pouvoir le faire, mais vous pouvez essayer ces ajouts dans votre fichier gitconfig.
Essayez de remplacer kdiff3 à partir de ces valeurs pour pointer vers le code exécutable de Visual Studio.
[merge] tool = kdiff3 [mergetool "kdiff3"] path = C:/Program Files/KDiff3/kdiff3.exe keepBackup = false trustExitCode = false
J'ai configuré Visual Studio Code par défaut pour ouvrir le fichier .txt. Et ensuite, j'ai utilisé une commande simple: git config --global core.editor "'C:\Users\UserName\AppData\Local\Code\app-0.7.10\Code.exe\'"
. Et tout fonctionne plutôt bien.