标签: diff

我可以让git diff忽略权限更改

我无意中更改了整个树的权限,并单独提交更改以及其他内容更改.

我使用类似的东西:

tar -czf deploy.tar git diff --name-only v1 v2
Run Code Online (Sandbox Code Playgroud)

使用两个标签之间的修改文件生成tar,问题是现在因为权限更改几乎所有我的树都被列为已修改.

有没有办法让我git diff忽略那些只更改权限的文件?

git diff

65
推荐指数
3
解决办法
4万
查看次数

当使用svn cp或svn mv时,如何使svn diff产生补丁适用的文件?

场景是:

  1. svn cp或mv一些文件
  2. 修改该文件
  3. svn diff> mypatch

在其他机器上(相同的工作副本,但没有更改):

  1. 尝试应用mypatch.
  2. 失败 - >尝试修改不存在的文件.

在这种情况下,如何让svn diff生成补丁应用补丁,或干净地应用svn diff生成的补丁?我无法承诺.我想保留mergeinfo(因为明显的解决方法是将文件添加为全新文件,而不连接到前一个文件).

svn diff merge patch

64
推荐指数
3
解决办法
6万
查看次数

使用jq或替代命令行工具来区分JSON文件

是否有任何命令行实用程序可用于查找两个JSON文件是否与in-dictionary-key和within-list-element排序的不变性相同?

这可以用jq其他等效工具完成吗?

例子:

这两个JSON文件是相同的

A:

{
  "People": ["John", "Bryan"],
  "City": "Boston",
  "State": "MA"
}
Run Code Online (Sandbox Code Playgroud)

B:

{
  "People": ["Bryan", "John"],
  "State": "MA",
  "City": "Boston"
}
Run Code Online (Sandbox Code Playgroud)

但是这两个JSON文件是不同的:

A:

{
  "People": ["John", "Bryan", "Carla"],
  "City": "Boston",
  "State": "MA"
}
Run Code Online (Sandbox Code Playgroud)

C:

{
  "People": ["Bryan", "John"],
  "State": "MA",
  "City": "Boston"
}
Run Code Online (Sandbox Code Playgroud)

那将是:

$ some_diff_command A.json B.json

$ some_diff_command A.json C.json
The files are not structurally identical
Run Code Online (Sandbox Code Playgroud)

diff json jq

64
推荐指数
6
解决办法
3万
查看次数

有没有办法配置vimdiff忽略所有空格?

我正在使用vim -d file1 file2它以查看它们之间的差异.这工作正常,但我想忽略空格更改 - 它们与源代码文件无关.

Vim帮助声明以下命令将起到魔力:

set diffopt+=iwhite
Run Code Online (Sandbox Code Playgroud)

但遗憾的是,此命令仅添加-b到diff工具命令行,并且只忽略尾随空格.diff的正确命令行键应该是-w,忽略所有空格更改.但我找不到如何直接从Vim修改diff命令行.当然我可以编译自定义差异,或用diff.sh替换差异,但这看起来有点难看:(.

有没有更好的方法来修改Vim如何与diff工具交互以显示文件差异?

vim diff vimdiff

63
推荐指数
4
解决办法
2万
查看次数

Python - 两个字符串之间的区别

我想在列表中存储很多单词.其中许多词语非常相似.例如,我有话afrykanerskoj?zyczny和许多类似的话afrykanerskoj?zycznym,afrykanerskoj?zyczni,nieafrykanerskoj?zyczni.什么是有效(快速和给予小差异大小)解决方案,以找到两个字符串之间的差异,并从第一个字符串恢复第二个字符串和差异?

python string diff python-3.x

63
推荐指数
3
解决办法
10万
查看次数

可以更改Mercurial中的默认差异工具吗?

每次我做一个hg diff file.ext我最终使用控制台差异应用程序.我想使用Kdiff3或WinMerge(我正在使用Windows).

有办法改变吗?我在Mercurial文档中找不到引用(我不是在谈论合并!).

diff configuration mercurial

62
推荐指数
3
解决办法
2万
查看次数

如何使用Git查看以前的diff提交?

如何使用Git查看以前的diff提交?

我有一个文件,我已经提交了几个提交,但我想查看文件的先前版本和它在不同阶段的差异.看到我犯错误的地方以及我如何解决这些错误确实有助于我的代码.顺便说一下,我在Git上使用Tower作为GUI.

git diff

60
推荐指数
3
解决办法
3万
查看次数

如何在忽略前导空格的同时区分2个文件

我有2个源文件,它们是同一个东西的不同版本.但是,有人通过一个不同的编辑器进行缩进更改,所以所有的行都显示出不同的差异.

是否有一个diff命令或我可以用来进行差异的过滤器,以便在忽略前导空格/制表符后输出只是不同的行?

diff

60
推荐指数
2
解决办法
4万
查看次数

无法在Git中的两个单独分支中区分文件

我在branchA中有FileA,在branchB中有FileB.

问题是我一次只能访问一个文件.我希望能够通过FileMerge或meld来比较这些文件,因为它们是我为Mac找到的唯一的diffTools.

你怎么能通过meld/FileMerge来区分两个文件


[已解决]:第一个问题: FileMerge不允许标准输入

Masi:您可以使用opendiff来允许FileMerge从标准输入中获取文件.所以下一个问题是找到如何使用git的diff工具来使用opendiff.


第二个开发的问题:使Git的diff工具在Mac中使用opendiff

unix git diff merge

59
推荐指数
3
解决办法
4万
查看次数

彩色Git diff到HTML

我喜欢使用git diff --color-words以清楚地看到文件中已更改的单词:

截图

但是,我想与没有git或彩色终端的人分享这种差异.那么有没有人知道可以将颜色转义终端输出转换为HTML 的工具或技巧?

html git terminal diff colors

59
推荐指数
3
解决办法
3万
查看次数

标签 统计

diff ×10

git ×4

merge ×2

colors ×1

configuration ×1

html ×1

jq ×1

json ×1

mercurial ×1

patch ×1

python ×1

python-3.x ×1

string ×1

svn ×1

terminal ×1

unix ×1

vim ×1

vimdiff ×1