我想你必须双转义反斜杠,但不确定,那是因为从文件读取并稍后执行它的双重解析。不会直接从外壳发生的问题。该指令将是:clean = sed '/\\/\\// d'
我在Linux中工作,但我做了一个测试并且工作,看到它:
mkdir myproject
cd myproject
git init
echo -e "line one\n//line two\nline//three\nline four" > file.txt
echo -e "*.txt filter=myfilter" >> .git/info/attributes
vim .git/config
cat .git/config
这会产生:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[filter "myfilter"]
clean = sed '/\\/\\// d'
smudge = cat
继续测试:
git add .
git commit -m "First commit"
rm file.txt
git checkout file.txt
cat file.txt
这会产生:
line one
line four
使用该命令删除了带有双斜杠的两行sed
。