什么相当于Perforce 的"git clean"?
git-clean - 从工作树中删除未跟踪的文件
通过从当前目录开始递归删除不受版本控制的文件来清除工作树.
-x不要使用从.gitignore(每个目录)和$ GIT_DIR/info/exclude读取的标准忽略规则,但仍然使用-e选项给出的忽略规则.这允许删除所有未跟踪的文件,包括构建产品.这可以(可能与git reset一起使用)创建一个pristine工作目录来测试一个干净的构建.
-X仅删除Git忽略的文件.这可能有助于从头开始重建所有内容,但保留手动创建的文件.
sco*_*777 14
使用P4V,您可以右键单击文件夹并选择"Reconcile Offline Work ...".在中间面板("不在软件仓库中的本地文件")中,将列出Perforce可以在文件夹树中找到的所有不在软件仓库中的文件.您可以选择部分或全部,然后右键单击并选择"删除本地文件"
这不是一个脚本,但它比Windows上的大多数其他解决方案容易得多.
Emi*_*Sit 11
从顶级尝试(对于Unix):
# Find all files and filter for those that are unknown by Perforce
find . -type f | p4 -x - fstat 2>&1 > /dev/null | sed 's/ -.*$//' > /tmp/list
### manually check /tmp/list for files you didn't mean to delete
# Go ahead and remove the unwanted files.
xargs rm < /tmp/list
Run Code Online (Sandbox Code Playgroud)
或者,对于一种干净的-f方法,只需直接管道到xargs rm,而不是先在/ tmp/list中暂存文件列表.
p4 clean"恢复工作区文件以匹配相应的软件仓库文件的状态"和git clean"从工作树中删除未跟踪的文件" 之间的行为存在细微差别,因此请仔细阅读手册.
特别是,vanilla p4 clean将还原您对任何待定更改列表之外的文件所做的更改.因此,使用"干运行"选项测试结果是明智的p4 clean -n.
我认为:
p4 clean -a模拟git clean "从工作树中删除未跟踪的文件".p4 clean -a -I模拟git clean -x"删除所有未跟踪的文件,包括构建产品".令我沮丧的是,没有确切的类似git clean -X"删除Git忽略的文件",但您可以使用以下方法进行近似p4 reconcile:
p4 reconcile -a && p4 clean -a -I.将删除与忽略列表匹配的未跟踪文件,其他文件将移至默认更改列表.| 归档时间: |
|
| 查看次数: |
16704 次 |
| 最近记录: |