Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使git diff--忽略空间更改默认值_Git_Config_Git Config - Fatal编程技术网

如何使git diff--忽略空间更改默认值

如何使git diff--忽略空间更改默认值,git,config,git-config,Git,Config,Git Config,我可能可以设置一个别名,但似乎我应该能够在配置文件中将其设置为一个选项,只是我看不到要这样做 我只希望在执行diff时使用——忽略空格更改,而不是在执行apply或其他任何操作时使用。我试图让diff更容易理解,不让它与没有实际更改的无关+/-行混在一起。根据Git配置手册,没有这样的选项。您唯一的选择是创建别名 我同意,最好只使用别名,但另一种选择是将设置为使用-b调用diff的包装器脚本,如果您使用的是shell可用操作系统,则可以使用git-alias或bash-alias git ali

我可能可以设置一个别名,但似乎我应该能够在配置文件中将其设置为一个选项,只是我看不到要这样做


我只希望在执行diff时使用
——忽略空格更改,而不是在执行apply或其他任何操作时使用。我试图让diff更容易理解,不让它与没有实际更改的无关+/-行混在一起。

根据Git配置手册,没有这样的选项。您唯一的选择是创建别名


我同意,最好只使用别名,但另一种选择是将设置为使用
-b
调用
diff
的包装器脚本,如果您使用的是shell可用操作系统,则可以使用git-aliasbash-alias

  • git alias:运行此命令以添加别名:

    git config--global alias.dfw'diff--ignore space change'

    --忽略空格更改可以缩写为-w

    要应用别名,请使用:
    git dfw

  • bash别名:运行此命令以添加bash别名:

    echo“别名gitdfw='git diff--ignore space change'”>~/.profile

    打开一个新的终端,您可以直接运行
    gitdfw
    来实现相同的功能


  • 这并不能准确回答您的问题,但这是一种为
    apply
    实现类似功能的方法

    mangit配置

     apply.whitespace
           Tells git apply how to handle whitespaces, in the same way
           as the --whitespace option. See git-apply(1).
    
    因此,打开您的
    ~/.gitconfig
    /.git/config/
    并附加

    [apply]
       whitespace = nowarn
    

    它也可能不允许您提交只更改空格的内容,但我相信您可以使用一些标志来推翻这一点。

    如果有一个选项可以这样做,那就太好了。但别名的效果相当好。以下是my.gitconfig中的相关行:

    [diff]
        tool = mydiff
    [difftool "mydiff"]
        cmd = "colordiff -NuBbwi \"$LOCAL\" \"$REMOTE\" | less -R"
    [difftool]
        prompt = false
    [alias]
        dt = difftool
    
    这假设使用colordiff,我建议您使用它,为您提供几乎完全相同的git diff显示内容的副本,但有两个区别:

  • colordiff中的---行的颜色与git diff中的同一行不同(非常小的问题)
  • 每个文件一次显示一个(恼人的问题——有人知道修复方法吗?)
  • 这是我的/etc/c:

    plain=off
    newtext=green
    oldtext=red
    diffstuff=cyan
    cvsstuff=red
    
    Mac OS X 10.9.2,git版本1.8.5.2(Apple git-48)


    (colordiff是从brew获得的)

    旧问题(2011年),但现在有一个快捷方式
    git diff-w
    ,它代表
    ——忽略所有空格

    比较行时忽略空白。即使一行有空格而另一行没有空格,这也会忽略差异


    我也在读那一页的时候这么想。我希望有人知道一种没有记录的方法。。。。哦,好吧。@Dogbert-我也有同样的问题,只有当我执行git add-p时,有什么建议吗?@JoãoPimentelFerreira没有将其设置为默认值。有这样的选项,OP在执行
    git diff
    时正在寻找一种设置默认值的方法。这适用于
    apply
    。这应该是公认的答案,因为它实际上对示例有用,而不是“转到此URL”。根据,
    -b
    -忽略空格更改
    相同。它与Linux的
    diff
    命令一致,其中
    -w
    表示
    -忽略所有空间。这是一个重要的区别,因为,例如,使用
    -w
    选项,文本
    abc
    被认为与
    abc
    相同;在代码中,这不太可能是您想要的,因此
    -b
    是更好的选择。是否更改正确答案?:)现在有一个快捷方式
    git diff-w
    ,它是
    的快捷方式——忽略所有空格:在比较行时忽略空白。即使一行有空格而另一行没有空格,这也会忽略差异。