相关疑难解决方法(0)

想要从"git diff"中排除文件

我试图db/irrelevant.php从Git diff中排除一个文件().我试图把在一个文件db名为的子目录.gitattributes与行irrelevant.php -diff ,我也尝试创建一个名为.git/info/attributes包含db/irrelevant.php.

在所有情况下,该db/irrelevant.php文件都作为Git二进制补丁包含在diff中.我想要的是diff命令忽略对该文件的更改.我究竟做错了什么?

git diff git-diff

202
推荐指数
9
解决办法
7万
查看次数

使用.git/info/exclude太晚了

我经常这样做:

git init
git add .
git commit .
Run Code Online (Sandbox Code Playgroud)

然后我意识到它将要添加我的nbproject目录,我希望将其排除/忽略.有时候,我甚至会检查这个目录.如果我在运行git add之前将它添加到.git/info/exclude中,一切正常(它被排除在外).

那么我修改.git/info/exclude然后就太晚了.git不再尊重.git/info/exclude的更改.

所以问题是:

  1. 如何让git接受签入中的排除文件中的更改?(我尝试再次运行git add,这没有帮助)
  2. 假设我签入了我想要排除的目录(或文件).到达我想要的状态的最少步骤数(排除文件).

git gitignore

25
推荐指数
1
解决办法
1万
查看次数

.gitattributes没有区别,尝试在使用git difftool时跳过文件

我已经阅读了Git Pro网站,并且我已经在StackOverflow上阅读了多个答案,但遗憾的是我无法让.gitattributes为我工作.

每当我使用时git difftool,它都会尝试显示二进制文件之间的差异,例如图像文件(PNG).

我在.gitattributes文件中尝试了各种组合,但每当我运行git difftool命令时,它仍然会尝试比较二进制文件.

在我的存储库文件夹中,我有:
.git
.gitattributes
[我的项目的文件子目录]

我为.gitattributes文件尝试了很多过滤器组合.例如:

*.pbxproj binary
*.png二进制文件

或者:

*.pbxproj binary -diff
*.png binary -diff

甚至:

*.pbxproj binary
*.png binary
*.pbxproj -diff -difftool
*.png -diff -difftool

每次,我只需将我的.gitattributes文件添加到索引并提交它.但是,在这样做之后,当我运行我git difftool来检查两个分支之间的差异时,会发生这种情况:

git difftool otherBranch HEAD

查看:'MyApp.xcodeproj/project.pbxproj'点击返回启动'diffmerge':

查看:'MyApp/Background1.png'点击返回启动'diffmerge':

它是怎么做到的?我怎么能最终正确设置我的.gitattributes文件,所以我不必查看这些特定文件的差异?

为了进一步调查,我使用了git check-attr如下命令:
git check-attr binary MyApp/MainBackground.png

输出是MyApp/MainBackground.png: binary: set......我想知道为什么git difftool仍然迫使我查看差异!

git diff difftool

9
推荐指数
1
解决办法
2693
查看次数

标签 统计

git ×3

diff ×2

difftool ×1

git-diff ×1

gitignore ×1