我试图差异.cs文件,我使用: git diff HEAD - ./*.cs 它只是没有工作。请注意,在不同目录下有几个cs文件。 什么是正确的命令?如何使用git diff来仅差异.cs文件
谢谢!
我在windows中使用msysgit。我决定为它编写一个python脚本。那就是:
import os
screenOutput = os.popen('git status').read()
lines =screenOutput.splitlines()
keyword = 'modified:'
cmd = 'git diff HEAD -- '
for line in lines:
index = line.find(keyword)
if(index >= 0):
line = line[index + len(keyword) + 1:].strip()
if(line.endswith('.cs')):
cmd += (line + ' ')
os.system(cmd)
脚本捕获“git的状态”输出,搜索与关键字行“修改:”,并得到修改后的文件名。它很丑。但它的工作。它可以扩展到处理参数。
如果您正在尝试为git diff head〜5 head执行此操作,它将找不到任何在头部删除并匹配所需模式的.cs文件。 – 2010-06-25 17:41:52
这是一个很好的观点。更完整的答案可能会涉及某种shell脚本来解析'git log'并以这种方式获取diff目标。这个问题似乎更多地沿着“查找所有未分离的/未提交的.cs文件并显示差异”的行,所以这就是我的答案倾向于 – Daenyth 2010-06-25 17:50:04