Ao usar o git na linha de comando, eu estou querendo saber se é possível usar o Visual Studio Code como editor padrão, ou seja, ao criar comentários de commit, e olhar para um diff de um arquivo a partir da linha de comando.
Eu entendo que não será possível usá-lo para fazer mesclagens (pelo menos no momento), mas alguém sabe se é possível usá-lo para observar o diff e, em caso afirmativo, quais opções de linha de comando seriam necessárias? o arquivo .gitconfig para fazer isso acontecer?
ATUALIZAÇÃO 1:
Eu tentei uma abordagem semelhante ao que eu fiz para o Notepad ++ no passado , ou seja,
#!/bin/sh "c:/Program Files (x86)/Notepad++/notepad++.exe" -multiInst -notabbar -nosession -noPlugin "$*"
E usado:
#!/bin/sh "C:\Users\gep13\AppData\Local\Code\app-0.1.0\Code.exe" "$*"
Mas isso resulta em uma mensagem de erro:
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]>
Código abre corretamente, com o conteúdo esperado, mas não está aguardando a resposta, ou seja, clicando em salvar e fechar a janela para retornar ao prompt.
ATUALIZAÇÃO 2:
Acabei de receber uma resposta de um dos desenvolvedores trabalhando no VSCode. Parece que esta funcionalidade atualmente não é suportada 🙁
@gep13 @NathanGloyn @code I checked and what you want to do is currently not possible, unfortunetly.
— Isidor Nikolic (@IsidorN) May 5, 2015
Se você está interessado em ver este recurso ser adicionado, você pode querer pensar em adicionar seus votos aqui:
http://visualstudio.uservoice.com/forums/293070-visual-studio-code/suggestions/7756482-support-git-configure-diff-and-merge-tools
ATUALIZAÇÃO 3:
Fui informado de forma confiável que esse recurso foi escolhido pela equipe do VSCode, por isso estou ansioso por uma versão futura que o inclua.
ATUALIZAÇÃO 4:
Graças ao comentário do @f-boucheros abaixo, eu consegui fazer o VS Code funcionar como o editor padrão para comentários, rebase, etc. Eu ainda gostaria de ver se é possível usá-lo como a ferramenta diff também.
ATUALIZAÇÃO 5:
De acordo com a resposta aceita para a pergunta, isso agora é possível usando a versão V1.0 do código.
No lançamento mais recente (v1.0, lançado em março de 2016 ), agora você pode usar o VS Code como a ferramenta padrão de confirmação / teste git . Citado a partir das documentações:
- Certifique-se de que você pode executar o
code --help
partir da linha de comando e obter ajuda.
- Se você não vir ajuda, siga estas etapas:
- Mac: selecione o comando Shell: instale o comando ‘Code’ no caminho da paleta de comandos.
- Windows: Certifique-se de ter selecionado Adicionar ao PATH durante a instalação.
- Linux: Certifique-se de ter instalado o Code através dos nossos novos pacotes .deb ou .rpm.
- Na linha de comando, execute
git config --global core.editor "code --wait"
Agora você pode executar
git config --global -e
e usar o VS Code como editor para configurar o Git.Adicione o seguinte para ativar o suporte para usar o código VS como ferramenta de comparação:
[diff] tool = default-difftool [difftool "default-difftool"] cmd = code --wait --diff $LOCAL $REMOTE
Isso aproveita a nova opção
--diff
você pode passar para o VS Code para comparar dois arquivos lado a lado.Para resumir, aqui estão alguns exemplos de onde você pode usar o Git com o VS Code:
git rebase HEAD~3 -i
permite rebase interativo usando o código VSgit commit
permite usar o VS Code para a mensagem de commitgit add -p
seguido pore
para adicionar interativogit difftool
permite usar o VS Code como editor de diferenças^
Pelo que entendi, o VSCode não está mais no AppData.
Então, defina o editor git padrão, executando esse comando em uma janela de prompt de comando:
git config --global core.editor "'C:\Program Files (x86)\Microsoft VS Code\code.exe' -w"
O parâmetro -w
, --wait
é aguardar que a janela seja fechada antes de retornar. O código do Visual Studio é baseado no Atom Editor. se você também tiver o atom instalado, execute o comando atom --help
. Você vai ver o último argumento na ajuda é esperar.
Da próxima vez que você fizer um git rebase -i HEAD~3
irá aparecer o código do Visual Studio. Uma vez que o VSCode está próximo, o Git irá recuperar a liderança.
Nota: Minha versão atual do VSCode é 0.9.2
Espero que ajuda.
Você precisa usar o comando:
git config --global core.editor "'C:\Program Files\Microsoft VS Code\code.exe' -n -w"
Certifique-se de que você pode iniciar seu editor do Git Bash
Se você quiser usar Code.exe com um caminho curto, você pode fazer isso adicionando a seguinte linha ao seu .bash_profile:
alias vscode="C:/Program\ Files/Microsoft\ VS\ Code/Code.exe"
E agora, você pode chamá-lo usando apenas o comando vscode
(ou qualquer nome que você tenha)
Algumas informações adicionais:
O programa de instalação adicionará o código do Visual Studio ao% PATH%, portanto, no console, você pode digitar “código” para abrir o código VS nessa pasta. Você precisará reiniciar o console após a instalação para que a alteração na variável ambiental% PATH% entre em vigor.
Eu abri meu .gitconfig
e o .gitconfig
com:
[core] editor = 'C:/Users/miqid/AppData/Local/Code/app-0.1.0/Code.exe'
Isso fez isso por mim (estou no Windows 8).
No entanto, notei que depois de tentar um git commit
arbitrário do git commit
no meu console do Git Bash , vejo a seguinte mensagem:
[9168:0504/160114:INFO:renderer_main.cc(212)] Renderer process started
Não tem certeza de quais são as ramificações disso.
O GitPad define seu editor de texto atual como o editor padrão do Git.
Meu editor padrão para arquivos .txt
no Windows 10 é o código do Visual Studio e a execução do GitPad tornou-o o editor padrão do Git. Eu não experimentei os problemas mencionados na questão (Git espera até que a janela VS Code seja fechada no meu caso).
(O link para o arquivo .exe
não funcionou para mim, talvez seja necessário compilar a fonte).
Boas notícias! No momento em que este artigo foi escrito, este recurso já foi implementado na versão de 0.10.12-insiders e realizado através de usuários iniciados em 0.10.14 . Por isso, vamos tê-lo na próxima versão 1.0 Release of VS Code .
Implementação Ref: Implement -w / – wait linha de comando arg
Não tenho certeza se você pode fazer isso, no entanto, você pode tentar estas adições no seu arquivo gitconfig.
Tente replace o kdiff3 desses valores para apontar para o executável do código do Visual Studio.
[merge] tool = kdiff3 [mergetool "kdiff3"] path = C:/Program Files/KDiff3/kdiff3.exe keepBackup = false trustExitCode = false
Eu configurei o Visual Studio Code como padrão para abrir o arquivo .txt. Em seguida, usei o comando simples: git config --global core.editor "'C:\Users\UserName\AppData\Local\Code\app-0.7.10\Code.exe\'"
. E tudo funciona muito bem.
Execute este comando no seu aplicativo Mac Terminal
git config --global core.editor "/Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code"
no Windows 10 usando a edição de 64 bits do insiders o comando deve ser:
git config –global core.editor “‘C: \ Arquivos de Programas \ Microsoft VS Insiders de Código \ bin \ code-insiders.cmd'”
Você também pode renomear o ‘code-insiders.cmd’ para ‘code.cmd’ no diretório ‘Program Files’, desta forma você pode agora usar o comando ‘code’. para começar a editar os arquivos no. diretório