为什么不是';我的xfuncname是否在我的.gitconfig文件中工作?
我正在尝试为为什么不是';我的xfuncname是否在我的.gitconfig文件中工作?,git,Git,我正在尝试为.natvis文件设置一个大标题。出于某种原因,它似乎不起作用。我是按照他们的指示来做的,这并没有说太多关于正则表达式的限制,比如,匹配的项目被认为是大块头还是我需要一个组?我两个都试过了,但都没有成功。这就是我所拥有的: [diff "natvis"] xfuncname = "^[\\\t ]*<Type[\\\t ]+Name=\"([^\"])\".*$" 我尝试了\t而不是\\\t,并用替换了整个正则表达式。这很困难,原因有几个: regexp首先是出了名
.natvis
文件设置一个大标题。出于某种原因,它似乎不起作用。我是按照他们的指示来做的,这并没有说太多关于正则表达式的限制,比如,匹配的项目被认为是大块头还是我需要一个组?我两个都试过了,但都没有成功。这就是我所拥有的:
[diff "natvis"]
xfuncname = "^[\\\t ]*<Type[\\\t ]+Name=\"([^\"])\".*$"
我尝试了
\t
而不是\\\t
,并用替换了整个正则表达式。这很困难,原因有几个:
- regexp首先是出了名的困难,而且
- Git添加了一层反斜杠解释
您的regexp非常接近。这里有一个适合我的:
[diff "natvis"]
xfuncname = "^[ \\t]*<Type Name=\"([^\"]*)\".*$"
它更详细,但避免了棘手的\\t
编码。由于以下几个原因,它很困难:
- regexp首先是出了名的困难,而且
- Git添加了一层反斜杠解释
您的regexp非常接近。这里有一个适合我的:
[diff "natvis"]
xfuncname = "^[ \\t]*<Type Name=\"([^\"]*)\".*$"
这更详细,但避免了棘手的\\t
编码。问题是由于我的混合环境造成的。因为我直接在cygwin和windows下使用git,所以我有两个主目录正在查看。小天鹅和窗户。因此,我从WindowsOne在Cygwin主目录中创建了一个指向我的.gitconfig
的链接。不幸的是,我忘了链接我的.gittributes
文件
正是由于缺少此文件,它无法使用正确的diffxfuncname
此问题现在已通过创建适当的链接解决。此问题是由于我的混合环境造成的。因为我直接在cygwin和windows下使用git,所以我有两个主目录正在查看。小天鹅和窗户。因此,我从WindowsOne在Cygwin主目录中创建了一个指向我的.gitconfig
的链接。不幸的是,我忘了链接我的.gittributes
文件
正是由于缺少此文件,它无法使用正确的diffxfuncname
通过创建适当的链接,此问题现已得到解决。谢谢@torek,但我也尝试过类似的解决方案,也尝试过您的解决方案,但没有成功:(你的git是什么版本,在什么平台上?git 2.11(ish,加上或减去一个小版本)在BSD/Linux/Mac上。在FreeBSD上测试。也许这只局限于windows?有人能确认吗?谢谢@torek,但我也尝试过类似的解决方案,但没有成功。:(你的git是什么版本,在什么平台上?git 2.11)(ish,加上或减去一个小版本)在BSD/Linux/Mac上。在FreeBSD上测试。也许这只局限于windows?有人能确认吗?
[diff "natvis"]
xfuncname = "^[ \\t]*<Type Name=\"([^\"]*)\".*$"
xfuncname = "^[[:space:]]*<Type[[:space:]][[:space:]]*Name=\"([^\"]*)\""