Lorsque j'utilise 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 en regardant un diff d'un fichier à partir de la ligne de commande.
Je comprends qu'il ne sera pas possible de l'utiliser pour faire des fusions (au moins à la minute) mais est-ce que quelqu'un sait s'il est possible de l'utiliser pour regarder les différences, et si oui, quelles options de ligne de commande seraient nécessaires dans le fichier .gitconfig pour y arriver?
MISE À JOUR 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 se traduit par 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 en cliquant sur enregistrer et en fermant la fenêtre pour revenir à l'invite.
MISE À JOUR 2:
Je viens d'entendre l'un des développeurs travaillant sur VSCode. Il semble que cette fonctionnalité ne soit pas prise en charge actuellement :-(
https://twitter.com/IsidorN/status/595501573880553472
Si vous souhaitez voir cette fonctionnalité ajoutée, vous pouvez penser à ajouter vos votes ici:
MISE À JOUR 3:
J'ai été informé de manière fiable que cette fonctionnalité a été récupérée par l'équipe VSCode, donc j'attends avec impatience une future version qui l'inclura.
MISE À JOUR 4:
Grâce au commentaire de @ f-boucheros ci-dessous, j'ai pu faire fonctionner VS Code en tant qu'éditeur par défaut pour les commentaires de commit, rebase, etc. Je voudrais quand même voir s'il est possible de l'utiliser également comme outil de diff.
MISE À JOUR 5:
Selon la réponse acceptée à la question, cela est désormais possible en utilisant la version V1.0 du code.
la source
--new-window
de la commande était utile. De cette façon, l'opération git s'ouvrira dans une nouvelle fenêtre.Ctrl+Shift+P
? Le mien ne fonctionne pas (noncode --help
disponible) et je ne comprends pas ce que cela signifie: "Assurez-vous d'avoir sélectionné Ajouter à PATH lors de l'installation" Que dois-je faire pour le vérifier? Quelqu'un peut-il m'aider?"files.hotExit": "off"
en bas de votre configurationgit config core.editor "code -n --wait"
avec VS Code 1.17.2, en cours d'exécution à partir de la ligne de commande externe. Les deuxcode
etcode --wait
m'ont obtenu le «abandon de validation en raison d'un message de validation vide».Pour ce que je comprends, VSCode n'est plus dans AppData.
Définissez donc l'éditeur git par défaut en exécutant cette commande dans une fenêtre d'invite de commandes:
Le paramètre
-w
,--wait
est d'attendre la fenêtre à fermer avant de revenir. Visual Studio Code est basé sur Atom Editor. si vous avez également installé atom, exécutez la commandeatom --help
. Vous verrez que le dernier argument de l'aide est attendre.La prochaine fois que vous ferez
git rebase -i HEAD~3
il affichera du code Visual Studio. Une fois VSCode fermé, Git reprendra la tête.Remarque: Ma version actuelle de VSCode est 0.9.2
J'espère que cette aide.
la source
-w
et où avez-vous trouvé cela documenté?git config --global core.editor "code --wait"
.Vous devez utiliser la commande:
Assurez-vous que vous pouvez 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 .bash_profile:
Et maintenant, vous pouvez l'appeler en utilisant uniquement
vscode
commande (ou ce que vous avez nommé)Quelques informations supplémentaires:
la source
-n
est l'abréviation de--new-window
git pour ouvrir une nouvelle fenêtre d'éditeur, et l'-w
abréviation de--wait
git attend que vous fermiez à nouveau la fenêtre. C'est la seule réponse qui fonctionne pour moi, car si je possède déjà VS Code ouvert,--wait
je ne fonctionnerai pas sans--new-window
.Une autre option utile consiste à définir
EDITOR
la variable d'environnement. Cette variable d'environnement est utilisée par de nombreux utilitaires pour savoir quel éditeur utiliser. Git l'utilise également si aucuncore.editor
n'est défini.Vous pouvez le définir pour la session en cours en utilisant:
De cette façon, non seulement
git
, mais de nombreuses autres applications utiliseront VS Code comme éditeur.Pour rendre ce changement permanent, ajoutez-le à votre
~/.profile
par exemple. Voir cette question pour plus d'options.Un autre avantage de cette approche est que vous pouvez définir différents éditeurs pour différents cas:
Ceci est particulièrement utile avec VS Code (ou tout autre éditeur GUI) car il ne fonctionne tout simplement pas sans GUI.
Sur Linux OS, mettez ceci dans votre
~/.profile
:De cette façon, lorsque vous utilisez un terminal local, la
$SSH_CONNECTION
variable d'environnement sera vide, donc l'code -w
éditeur sera utilisé, mais lorsque vous serez connecté via SSH, alors$SSH_CONNECTION
la variable d'environnement sera une chaîne non vide, donc l'vim
éditeur sera utilisé. Il s'agit d'un éditeur de console, il fonctionnera donc même lorsque vous êtes connecté via SSH.la source
J'ai ouvert mon
.gitconfig
et l' ai modifié avec:Cela me l'a fait (je suis sur Windows 8).
Cependant, j'ai remarqué qu'après avoir essayé un arbitraire
git commit
, dans ma console Git Bash, je vois le message suivant:Je ne sais pas quelles pourraient en être les ramifications.
la source
app-0.1.0/resources/app/env.js
semble contenir quelques drapeaux de ligne de commande que l'exécutable Code prend. Aucun ne suggère un comportement équivalent à celui de-multiInst
bien.--wait
indicateur, et l'--new-window
indicateur est également fortement recommandé, de sorte que le msg / diff / quoi que ce soit ne s'affiche pas simplement comme un nouvel onglet dans un éditeur déjà ouvert, vous obligeant à fermer des fichiers, vous pouvez toujours être travailler afin de signaler à Git que vous avez terminé l'édition.GitPad définit votre éditeur de texte actuel comme éditeur par défaut pour Git.
Mon éditeur par défaut pour
.txt
fichiers dans Windows 10 est Visual Studio Code et l'exécution de GitPad en a fait un éditeur par défaut pour Git. Je n'ai pas rencontré les problèmes mentionnés dans la question (Git attend la fermeture de la fenêtre VS Code dans mon cas).(Le lien pour le
.exe
fichier ne fonctionnait pas pour moi, vous devrez peut-être compiler la source vous-même.)la source
Right click
>Open with
>Chose another app
. Je m'attendrais à ce qu'il s'enregistre lui-même lors de l'installation (et met à jour le registre à chaque mise à jour pour que le shell puisse le trouver) mais je n'ai rien trouvé d'autre que l'élément de menu contextuel "Ouvrir avec le code" dans le registre. Je n'ai donc vraiment pas de réponse plus claire à ce sujet, désolé.Bonnes nouvelles! Au moment de la rédaction de ce document, cette fonctionnalité avait déjà été implémentée dans la version 0.10.12-insiders et réalisée via 0.10.14-insiders . Par conséquent, nous allons l'avoir dans la prochaine version 1.0 Release de VS Code .
Implémentation Réf: Implémenter -w / - attendre la ligne de commande arg
la source
Je veux juste ajouter ces barres obliques inverses aux réponses précédentes, je suis sur Windows 10 CMD, et cela ne fonctionne pas sans barres obliques avant les espaces.
la source
Je ne suis pas sûr que vous puissiez le faire, mais vous pouvez essayer ces ajouts dans votre fichier gitconfig.
Essayez de remplacer le kdiff3 à partir de ces valeurs pour pointer vers l'exécutable de code Visual Studio.
[merge] tool = kdiff3 [mergetool "kdiff3"] path = C:/Program Files/KDiff3/kdiff3.exe keepBackup = false trustExitCode = false
la source
J'ai configuré Visual Studio Code par défaut pour ouvrir le fichier .txt. Et ensuite je l'ai fait utiliser la 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.la source
Exécutez cette commande dans votre application Mac Terminal
la source
sur Windows 10 en utilisant l'édition 64 bits insiders, la commande devrait être:
vous pouvez également renommer le «code-insiders.cmd» en «code.cmd» dans le répertoire «Program Files», de cette façon, vous pouvez maintenant utiliser la commande «code». pour commencer à éditer les fichiers sur le. annuaire
la source