gpt4 book ai didi

git - Perforce 分支与 git 分支

转载 作者:太空狗 更新时间:2023-10-29 12:45:19 25 4
gpt4 key购买 nike

我是一名尝试学习 Perforce 的 Git 用户。

在 Git 中,用户可以从主分支 checkout ,更改一些文件并将他的代码推送到具有特定提交 ID 的不同分支上的服务器。

另一个 Git 用户可以使用其提交 ID check out 该新分支并在其上工作。

如何使用 Perforce 执行此操作?

最佳答案

I am a Git user trying to learn Perforce.

对不起。

How can this be performed using Perforce?

我是一个更好的 Git 用户,而不是 Perforce 用户,所以如果有任何错误,请纠正我。我强烈建议阅读手册页和 a tutorial .

它“不能”是,至少不是 Git 的做法。

git 中,当您创建一个分支时,您正在分支 存储库的整个状态。 Perforce 不支持这个,相反,它的“分支”更每个文件:即,您将文件 A 分支到文件 B,此时文件 B 包含对文件 A 的反向引用,说“我从这里来的。”然后可以使用此反向引用来确定用于 merge 目的的共同祖先。然而,我的理解是这些反向引用是针对每个文件的,您可以自由地将任何文件集成( merge )到任何其他文件中。 (与 git 相比,其中“父提交”是您的反向引用,但在整个存储库范围内。)

您可以使用 p4 integrate 对整组文件进行分支,使用典型的 Perforce 语法(例如,//depot/some/path/...)。通常,您会将整个目录分支到另一个目录,例如 //depot/main/my_project//depot/release-1.0/my_project,或者相似的东西。据我所知,Perforce 并不真正关心路径:它只是将文件从一个位置“分支”到另一个位置。路径中的任何模式或理智取决于您。

此外,您可以使用 p4 branch创建“分支规范”,这基本上是一种记录文件源集及其目的地的方法,使分支更容易。 (如果以发布为例,您可能希望最终 merge 回更改,或将进一步的更改 merge 到发布中,等等)

两次我都使用 Perforce,分支是一种与 Git 不同性质的野兽,这里有一点文化差异。 Twig 比较少见。 (我只看到它们用于发布,曾经。)我们没有将它们用于功能分支,除了最大的功能;与 git 相比,对我来说“功能分支”通常是“它花费了 >1 次提交”。

关于git - Perforce 分支与 git 分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23208128/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com