我正在克隆一个首先由git-p4生成的回购。 git-p4使用我想跟踪的'remotes / p4 / master'分支。我怎么告诉克隆那个repo的git跟踪remotes / p4 / master呢?这样我就可以查看“origin / remotes / p4 / master”。什么的。

有帮助吗?

解决方案

您也可以调整抓取属性以镜像这些引用,但不是标准克隆的一部分。

如下序列:

git clone ~/p4/git/services/info-service.git
cd info-service
git config --add remote.origin.fetch +refs/remotes/p4/*:refs/remotes/origin/p4/*
git fetch origin

这将获取 refs / remotes / p4 / release / 1.1 ,例如在 info-service.git refs / remotes / origin / p4 /您的克隆中的release / 1.1 ,您可以使用 git checkout -b r1.1-fixes origin / p4 / release / 1.1

创建基于它的分支。

说了这么多,在我的Perforce副本回购中,我创建了实际的分支来镜像所有p4远程分支,主要是为了避免必须完成上述所有操作。它还让我有机会修改从p4路径前缀到git分支名称的命名(因此 p4 / main 变为 master p4 / release / 1.1 变为 r1.1 等)。我使用自己的p4-to-git复制,但你可以通过使用 git for-each-ref 循环p4远程refs并使用 git update-设置本地分支来做同样的事情。参考

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top