跟踪git中的remotes / p4 / master分支
题
我正在克隆一个首先由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-设置本地分支来做同样的事情。参考代码>
不隶属于 StackOverflow