diff --git opção desconhecida

6

quando tento executar

diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c

Eu recebo uma opção desconhecida (instalei o git via apt-get install git )

    
por user275941 23.11.2013 / 01:08

3 respostas

15

Use

diff -u file1 file2

ou

git diff branch/commit1 branch/commit2

Mais sobre o git diff no link

No entanto, não estou ciente de nenhuma opção --git para diff e a página do manual não mostra isso.

    
por 23.11.2013 / 01:20
2

De um modo geral, quando você executa um diff recursivo entre dois diretórios, para cada diff de arquivo inclui um comando diff mostrando o que ele está fazendo para cada arquivo. Por exemplo:

$ diff -ru a b
diff -ru a/file b/file
--- a/file  2015-07-17 01:06:14.078875805 -0700
+++ b/file  2015-07-17 01:06:21.969077076 -0700
@@ -1 +1 @@
-hello
+goodbye

O Git quer produzir correções no mesmo formato, portanto, cada arquivo deve ser precedido por uma linha iniciando " diff ...". Mas como o git está usando sua própria implementação de diff interna, para deixar claro para as pessoas que estão lendo o resultado, o git adiciona a bandeira imaginária --git .

Na realidade, se você quiser usar o git para diferenciar dois arquivos ou diretórios no sistema de arquivos, você pode executar:

git diff --no-index a b

(O sinal --no-index diz para ignorar qualquer repositório git em que você esteja. Essa opção pode ser omitida se você não estiver em um repositório git.) O Git produz saída no formato "unidiff". Se você quiser aproximar isso com o comando diff do sistema, você pode usar diff -ru a b . (O sinal -u seleciona o formato unidiff, enquanto o -r é recursivo nos diretórios.)

    
por 17.07.2015 / 10:14
1

A verdade é que o git está exibindo um comando falso.

$ git diff drivers/cpufreq/intel_pstate.c
diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
index 286bfoo..14a8foo 100644
--- a/drivers/cpufreq/intel_pstate.c
+++ b/drivers/cpufreq/intel_pstate.c
    
por 14.03.2017 / 22:10