Perforce解决方法使用'@'添加文件

时间:2016-06-21 19:02:51

标签: perforce

design,Perforce不允许添加带通配符@#%*的文件名。它给出了这个错误:

Can't add filenames with wildcards [@#%*] in them.
Use -f option to force add.

但是,我有SASS文件,其上有@来支持mixins。例如:

carbon-fibre-@2X.png
sprite-dashboard-@2X.png

将这些文件添加到Perforce的最佳解决方法是什么,对签入,结帐,编译,构建和部署流程的影响最小?

1 个答案:

答案 0 :(得分:4)

您可以添加包含Perforce通配符的文件。由于' p4帮助添加'页面文件:

  

要添加包含通配符的文件名的文件,   指定-f标志。包含特殊字符的文件名   ' @','#','%'或' *'重新格式化以使用编码字符   ASCII十六进制表示。添加文件后,您   必须使用重新格式化的文件名来引用它们,因为Perforce   无法识别本地文件系统名称。

要求使用编码的'%40'来统一引用文件名。很烦人,我同意,但确实工作。

这是一个简短的例子:

$ touch 'carbon-fiber-@2X.png'
$ p4 add 'carbon-fiber-@2X.png'
The file named 'carbon-fiber-@2X.png' contains wildcards [@#%*].
Can't add filenames with wildcards [@#%*] in them.
Use -f option to force add.
$ p4 add -f 'carbon-fiber-@2X.png'
//depot/carbon-fiber-%402X.png#1 - opened for add
/path/to/carbon-fiber-@2X.png - empty, assuming text.
$ p4 submit -d added-carbon-fibre
Submitting change 2.
Locking 1 files ...
add //depot/carbon-fiber-%402X.png#1
Change 2 submitted.
$ p4 files //...
//depot/carbon-fiber-%402X.png#1 - add change 2 (text)
$ p4 fstat //depot/carbon-fiber-%402X.png
... depotFile //depot/carbon-fiber-%402X.png
... clientFile /path/to/carbon-fiber-@2X.png
... isMapped 
... headAction add
... headType text
... headTime 1466547058
... headRev 1
... headChange 2
... headModTime 1466547033
... haveRev 1