提升效率:P4VFS让虚拟文件同步更迅速、更简单

news2024/11/25 7:25:19

虚拟文件同步(Virtual File Sync)是一个备受期待的功能集,能够显著缩短Perforce Helix Core用户的同步时间。本篇文件将解释什么是虚拟文件同步,如何设置它以及如何使用它。

什么是虚拟文件同步?

虚拟文件同步是一项功能,让用户能够在初始请求时只同步文件的元数据,在有需要的时候才下载完整的文件内容。

它包括以下四个组件:

  1. Helix Core Server(P4D),2023.1以上版本

  2. Helix C/C++应用程序编程接口(P4API),2023.1以上版本

  3. Helix Core虚拟文件服务(P4VFS),2023.1以上版本

  4. Helix Core客户端,例如Helix Visual Client(P4V),2023.2以上版本,或Helix Core命令行客户端(P4),2023.1以上版本

Perforce为什么要开发虚拟文件同步?

团队通常需要在远程和分布式的环境中同步许多大型资产,这会花费大量时间。在此之前,Perforce的一些客户试图自行实现类似功能,也获得了不同程度的成功。

为了让所有客户都能够以可靠、有效的方式加速同步,Perforce实现了对虚拟文件同步的支持。虚拟文件同步让用户能够在Perforce Helix Core中原生体验此功能,他们可以在工作区中仅同步文件的元数据,并在需要的时候再下载完整文件内容(通过明确要求下载文件,或在应用程序(例如编辑器、图形程序等)中打开文件,从而使文件自动下载)。

虚拟文件同步的好处

虚拟文件同步将缩短团队处理大型文件时的同步时间,并减少从服务器传输到用户本地的数据量。如果您是在云中运行Perforce Helix Core服务器,用户工作站不在云中,则可以大幅节省数据流出的成本。

虚拟文件同步的限制

目前,Perforce Helix Core虚拟文件服务(P4VFS)仅支持Windows平台。这也意味着目前此功能仅支持在Windows上运行的Perforce Helix Core客户端(例如:P4V、P4)。这个实现决策是有意而为之的,因为性能测试表明,依赖于操作系统的解决方案具有最佳的性能表现。

如何设置虚拟文件同步

下面是设置和安装虚拟文件同步的步骤:

  • 第一步:安装您的Perforce Helix Core服务器(2023.1版本或更高版本),或将现有的Perforce Helix Core服务器升级到2023.1版本(或更高版本)。 这也将自动升级Helix C/C++应用程序编程接口(P4API)的版本;

  • 第二步:安装Helix虚拟文件服务(P4VFS)客户端;

  • 第三步:升级Helix Visual Client(P4V)至2023.2版本(或更高版本),和/或升级Helix命令行客户端(P4)至2023.1版本(或更高版本)。

*仅支持Windows 10.1709+和Windows 11。

如何使用P4VFS(Perforce Helix Core虚拟文件服务)

当您运行P4VFS时,以下是如何使用它的教程。本节将假设您将Helix Visual Client(P4V)作为首选客户端。

步骤1:启动Helix Visual Client(P4V)。如有必要,请登录后使用。

步骤2:创建一个新工作区,将现有的工作区同步回修订版本0。

步骤3:在工作区对话框中检查“altsync”属性。

步骤4:创建工作区后,点击“获取最新版本”按钮,可以看到只有文件的元数据从Perforce Helix Core服务器同步过来。

请注意,现在在工作区视图中,所有"仅元数据"的文件都会显示一个新的"云"图标:

请注意,新的“提供者”已注册到Windows操作系统,状态(Status)列显示了所有“仅元数据”文件的“云”图标,规模(Size)列显示了准确的文件大小:

请注意,检查某一个特定的“仅元数据”文件,将发现占用磁盘大小显示为0字节:

步骤5:在工作区的Windows资源管理器视图中,双击一个文件。请注意进度对话框显示,文件内容正在下载(如果以前没有下载)。

步骤 6(可选:右键单击步骤5下载的文件,然后选择“释放空间”选项,删除文件内容并仅保留文件元数据。

如果您有永远不希望进行虚拟同步的文件,那么请右击该文件,选择“始终保留在此设备上”选项。这样,无论何时进行“获取最新”操作,都会同时同步文件的元数据和文件内容。

免费使用Perforce Helix Core

您还没有使用Perforce Helix Core吗?立即为需要加速开发、简化大型项目协作的团队获取最领先的版本控制系统,最多可免费支持5个用户和20个工作区。

作者简介:

Brent Schiestl

Perforce Software 产品管理总监

Brent负责Perforce的版本控制产品组合。他喜欢做客户和软件开发团队的桥梁,乐于解决各种难题。在闲暇时间,他喜欢与家人共度时光,保持活力,并且对曲棍球运动有浓厚兴趣。

文章来源:https://bit.ly/3oIpmYR

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/624145.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

配置Wildfly的JDBC驱动程序

1、环境 windows10、Wildfly26.1.3、JDK8.0、mysql8.0 2、配置方式 配置Wildfly的JDBC驱动一般有两种方式 1️⃣、以module的方式安装; 2️⃣、以应用deploy的程序包方式安装; 以module方式安装,是把驱动置于应用服务器中;以…

Ubuntu 20.04 Apache2 增加不同端口站点

概述 Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器软件,可以在大多数电脑操作系统中运行。由于其跨平台和安全性[注 1],被广泛使用,是最流行的Web服务器软件之一。它快速、可靠并且可…

ROS:move_base路径规划介绍、更换全局路径规划算法(A star、Dijkstra、DWA,测试当前是哪种算法,效果展示图)

前提:需要安装navigation包,才可以运行move_base。 一.move_base路径规划包内容 二.更换全局路径规划算法(A*、Dijkstra、DWA) A*、Dijkstra属于全局路径规划、DWA属于局部路径规划。 1、move_base.launch move_base.launch文…

开源 AI 面临的挑战

译者:明明如月 人工智能的代价 尽管我坚信开源人工智能将继续蓬勃发展,但我也认为未来几年企业和政府将越来越有动机限制对新型神经网络架构和技术的应用。本文旨在预测并概述可能在本十年发生的潜在颠覆性变革,并提出一些想法和解决方案&a…

玩转css逐帧动画,努力成为更优质的Ikun~

🎉 一、前言 css3的animation想必大家都知道吧,那 steps 逐帧动画你知道吗?对于我来说,实际工作及练习中也很少用到这种跳跃式变化的动画,而它start和end的解释又比较“不说人话”,以前用到steps动画的时候…

FL Studio21水果软件各个版本功能区别对比

作为音乐人,在电脑上进行编曲,混音,合成是家常便饭,而市面上大家常用的音乐编曲制作软件很多,小编在这里就给大家做一个推荐。 大家常听到的音乐编曲制作软件大多是Cubase、Nuendo、Pro Tools、 SONAR等等&#xff0c…

Qt中QFile类读取ansi编码格式txt文件,在QTextEdit控件中显示乱码

系列文章目录 文章目录 系列文章目录前言一、依然无法解决乱码问题二、解决办法1.方法一:使用QString的fromLocal8Bit()函数2.读取utf-8编码格式的文件 总结 前言 使用Qt中的QFile类读取ANSI编码格式的文本文件,并在QTextEdit控件中显示乱码&#xff0c…

适配器模式的运用

文章目录 一、适配器模式的运用1.1 介绍1.2 适配器模式结构1.3 类适配器模式1.3.1 类适配器模式类图1.3.2 代码 1.4 对象适配器模式1.4.1 对象适配器模式类图1.4.2 代码 1.5 应用场景1.6 JDK源码解析1.6.1 字节流到字符流的转换类图1.6.2 部分源码分析1.6.3 总结 一、适配器模式…

MyBatis的使用、Spring AOP、Spring事务

一、MyBatis 的使用 1、环境配置 1.1、建库建表 -- 创建数据库 drop database if exists mycnblog; create database mycnblog DEFAULT CHARACTER SET utf8mb4;-- 使⽤数据数据 use mycnblog;-- 创建表[⽤户表] drop table if exists userinfo; create table userinfo(id in…

智能算法终极大比拼,以CEC2017测试函数为例,十种智能算法直接打包带走,不含任何套路!

包含人工蜂群(ABC)、灰狼(GWO)、差分进化(DE)、粒子群(PSO)、麻雀优化(SSA)、蜣螂优化(DBO)、白鲸优化(BWO)、遗传算法(GA)、粒子群算法(PSO),基于反向动态学习的差分进化算法,共十种算法,直接一文全部搞定! 还是老规矩&#xff…

Android MaterialComponents主题下Button设置background无效

问题描述 使用的主题代码如下图&#xff1a; <!-- Base application theme. --><style name"Base.Theme.MyApplication" parent"Theme.Material3.DayNight.NoActionBar"><!-- Customize your light theme here. --><!-- <item na…

JAVA面向对象(二)

第二章 方法与方法重载 目录 第二章 方法与方法重载 带参方法的使用 构造方法 构造方法重载 成员变量和局部变量 总结 内容仅供学习交流&#xff0c;如有问题请留言或私信&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 有空您就点点赞 带参方法的使用…

Java代码的运行过程

我们来聊一聊java代码是如何运行的。大家都知道java是运行在JVM上的&#xff0c;那它是怎么结合操作系统去控制那些硬件设备的呢&#xff1f; 其实想要知道这个问题我们可以跟踪一行代码的整个生命周期来解释&#xff0c;我把它抽象为这么五个步骤。 首先这行代码会被编译成字节…

最强攻略 | 1分钟带你了解内测,成为BUG小能手!

「百度产品内测」招募内测体验官啦&#xff01;&#xff01; 参与百度内测&#xff0c;不仅可以直接接触百度运营官&#xff0c;还能拿礼物拿京东卡拿百度大礼包&#xff01; 什么你说你没接触过内测&#xff1f;贴心如我&#xff0c;给大家带来一份史上最全的新手入门指南&am…

​DMBOK知识梳理for CDGA/CDGP——第五章 数据模型与设计(附常考知识点)

关 注gzh“大数据食铁兽”&#xff0c;回复“知识点”获取《DMBOK知识梳理for CDGA/CDGP》常考知识点&#xff08;第五章 数据模型与设计&#xff09; 第五章 数据模型与设计 第五章是CDGA|CDGP考试的重点考核章节之一&#xff0c;分值占比高&#xff0c;知识点比较密集…

【大数据之路4】分布式计算模型 MapReduce

4. 分布式计算模型 MapReduce 1. MapReduce 概述1. 概念2. 程序演示1. 计算 WordCount2. 计算圆周率 π 3. 核心架构组件4. 编程流程与规范1. 编程流程2. 编程规范3. 程序主要配置参数4. 相关问题1. 为什么不能在 Mapper 中进行 “聚合”&#xff08;加法&#xff09;&#xff…

MATLAB入门教程||MATLAB决策制定||MATLAB if...end 语句

MATLAB决策制定 本节内容&#xff1a;了解MATLAB提供的决策类型&#xff0c;及使用它们进行决策制定。 决策结构用来做什么&#xff1f;决策结构要求程序员能够使用一个或者多个的条件来对程序进行评估或者测试&#xff0c;沿着一条或多条语句执行&#xff0c;如果该条件被确定…

docker启动rabbitmq无法访问15672端口

1.问题说明 使用rabbitmq:3.8.14版本启动了rabbitmq容器&#xff0c;5672、25672端口都可以连接&#xff0c;唯独15672仅在服务器本地可被连接。 2.问题原因 rabbitmq:3.8版本开始&#xff0c;管理插件包含在RabbitMQ发行版中。与其他任何插件一样&#xff0c;必须先启用它&am…

SpringCloud_微服务基础day2(Eureka简介与依赖导入,服务注册与发现)

p6:Eureka简介与依赖导入 前面我们了解了如何对单体应用进行拆分&#xff0c;并且也学习了如何进行服务之间的相互调用&#xff0c;但是存在一个问题&#xff0c;就是虽然服务拆分完成&#xff0c;但是没有一个比较合理的管理机制&#xff0c;如果单纯只是这样编写&#xff0c;…

实战:Spring Cloud Stream集成兼容多消息中间件kafka、rabbitmq

文章目录 前言实战要点技术积累Spring Cloud Stream简介集成kafka要点集成rabbitmq要点 实战演示Maven依赖版本号选择Spring及MQ主要配置基础信道绑定信道消息发送集成兼容多mq演示Rabbitmq演示Kafka演示 写在最后 前言 前面的博文我们介绍并实战演示了Spring Cloud Stream整合…