A opção “Usar o Git e ferramentas opcionais do Unix no prompt de comando do Windows” é perigosa?

9

Ao instalar o Git, ele oferece a opção de adicionar todas as suas ferramentas msys * nix ao seu PATH, mas ele avisa:

Warning: This will override Windows tools like "find" and "sort". Only use this option if you understand the implications.

Minhas perguntas são:

  • Quais ferramentas exatamente entrarão em conflito?
  • Isso importa? Eles são comumente usados pelo sistema? (Eu nunca os usei pessoalmente).
  • Posso apenas alterar a ordem dos diretórios no PATH para evitar conflitos?
  • É isso que a segunda opção faz? ("Use o Git do Prompt de Comando do Windows - Esta opção é considerada segura, pois adiciona apenas alguns wrappers mínimos do Git")
por Aleksandr Dubinsky 28.10.2015 / 00:13

2 respostas

3

Which tools exactly will it conflict with?

Eu deixaria a instalação modificar seu PATH. É fácil removê-lo do PATH se você não quiser. Então eu olharia os diretórios e faria algumas comparações como diff, comm, etc. para descobrir os conflitos. Eles devem ser documentados em algum lugar, embora eu não saiba onde.

Does it matter? Are they commonly used by the system? (I've never used them personally.)

Eu não usei as ferramentas cygwin ultimamente, mas quando eu tive que usar o Windows, eu geralmente tinha o diretório de ferramentas cygwin primeiro no meu PATH sem problemas.

O maior risco seria se um programa estivesse procurando as ferramentas conflitantes de linha de comando do Windows, ele executaria o programa incorreto. Eu acho que as chances disso são muito pequenas, considerando a quantidade extremamente pequena de scripts cmd.exe que acontecem.

Can I just change the order of the directories in the PATH to prevent conflicts?

Sim. Apenas mova o cygwin, ou seja o que for que git adicione, para o final do PATH. Apenas lembre-se de que certas seqüências de comando não funcionarão corretamente no cygwin. Além disso, pensando bem, acho que o console do cygwin configura o caminho corretamente. Configurar o seu próprio caminho quando você usa o cygwin faria o cygwin funcionar corretamente também.

Is this what the 2nd option does? ("Use Git from the Windows Command Prompt -- This option is considered safe as it only adds some minimal Git wrappers")

Soa como se isso fosse inserir no PATH um diretório contendo apenas os comandos do git que você precisa usar o git.

    
por 28.10.2015 / 01:27
7

Which tools exactly will it conflict with?

Pessoalmente, não tenho certeza de uma lista completa, mas essa pergunta do StackOverflow diz

"This includes find, kill and sort [...] The problem with the first 3 (and similar) is that they exist in both OSs and function differently in each."

Eles podem não ser usados com frequência por você, mas são comuns o suficiente para que o Git sinta a necessidade de avisá-lo sobre comportamentos inesperados.

Anedotamente, é mais provável que apareçam em programas de terceiros (principalmente scripts), portanto, o nível de efeito provavelmente depende de quanto você usa programas que dependem de qualquer um desses comandos.

Is this what the 2nd option does? ("Use Git from the Windows Command Prompt -- This option is considered safe as it only adds some minimal Git wrappers")

Basicamente, ele permite que você use o Git na linha de comando (cmd.exe) com todos os comandos comuns do Git. Esta opção é perfeitamente segura e útil para 99% do que você provavelmente desejaria criar scripts ou implementar manualmente a partir de uma linha de comando do Windows. Eu uso essa opção e nunca encontrei nenhum problema pessoalmente.

Depois de instalar, você também pode querer olhar para uma interface gráfica do git (como o GitHub Dekstop para Windows ou SourceTree ) e não esqueça que o Git bash vem com a instalação também.

    
por 28.10.2015 / 01:39