根据设计,Perforce不允许@#%*添加带通配符的文件名。它给出了这个错误:
Can't add filenames with wildcards [@#%*] in them.
Use -f option to force add.
Run Code Online (Sandbox Code Playgroud)
但是,我有@支持混入的SASS文件。例如:
carbon-fibre-@2X.png
sprite-dashboard-@2X.png
Run Code Online (Sandbox Code Playgroud)
将这些文件添加到Perforce 的最佳解决方法是什么,而对签入,签出,编译,构建和部署流程的干扰最小?
您可以添加其中包含 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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2891 次 |
| 最近记录: |