在perforce中有相当于git藏匿的东西吗?

时间:2010-01-20 19:13:52

标签: git perforce

我尽我所能地挖掘了这些互联网,而我不能因为我没有找到任何方法可以轻松地在当地用stforce进行存储或分支。 我知道perforce的git包装器,但是从我读过的所有内容来看它似乎都没有太好的发展或可靠。

3 个答案:

答案 0 :(得分:32)

Perforce 2009.2搁置并取消搁置,允许您在服务器上进行修改,而无需检查它们。 http://blog.perforce.com/blog/?p=1872

我认为这提供了您想要的功能吗?

如果您尚未使用2009.2,则还有P4_Shelvep4tar作为替代方案。

答案 1 :(得分:4)

关于分支,我怀疑你可以在Perforce本地“分支”,也不能本地存储。

  • Git基于提交图表(实际上是 DAG - Directed Acyclic Graph ),它只显示提交内容(树和blob)
  • Perforce是linear VCS,基于选择规则的组成(它将根据本地选择规则组成显示内容)

关于分支:

  • Git中的一个分支只是a light-weight and local alias到头[*] / tip提交。
  • Perforce的一个分支是:
    • 代码行(最有可能在用作名词时含义)
    • 分支视图规范(如“p4 branch”命令创建的实体 - 也是名词) - 这些在下面讨论
    • 当用作动词(“to branch”)时,表示使用“p4 integrate”命令创建一个或多个文件的新代码行(或分支!)

正如本introduction to perforce branching所述,Perforce与其中心depo密切相关,需要为每个文件创建相关元数据以创建分支。
Git只会写一些位来注册新分支的创建!

[*] git branches存储在.git/refs/heads/子目录

答案 2 :(得分:2)

Perforce的未来版本将具有私有本地分支。 P4Sandbox将允许您拥有该库的本地断开连接子集。您可以从中央服务器拉出,在沙盒中执行任何操作(包括分支和集成),然后,如果您愿意,可以返回中央服务器。

搁置是git stash最接近的等价物,正如Douglas Leeder的回答所解释的那样。

(虽然最初看起来P4Sandbox将在2011.1版本中首次亮相,但2011.1测试版没有该功能,我也无法在该版本的文档中找到它。As of August 2011,P4Sandbox beta定于“今年秋天”。)