关于git:龙智技术指南Helix4Git简明使用手册

36次阅读

共计 3708 个字符,预计需要花费 10 分钟才能阅读完成。

Helix4Git 是一款高性能的 Git 服务器(在 Perforce 服务器外部),它使 Git 用户能够应用 Git 命令拜访源代码。Helix TeamHub 是一款 Git 代码托管工具,它们同为 Perforce Git 工具。

当您将这两个工具与 Perforce 版本管理工具 Helix Core 联合应用时,您能够通过繁多可信的代码源进行跨开发团队治理。如果您正在与开源或第三方开发团队单干,这一点尤其重要。

本文由龙智技术专家团队成员邱洁玉撰写,她以简明扼要的形式出现了 Helix4Git 的应用办法,不便中国用户应用。如需理解更多对于 Helix4Git、Helix TeamHub 以及 Helix Core 的相干信息,请分割 Perforce 受权合作伙伴——龙智。

简介

Helix4Git 是高性能的 Git 服务器(在 Perforce 服务器外部)。这使 Git 用户能够像通常应用 Git 命令那样拜访其源代码。

当用户将 Helix4Git 与 Helix Core 一起应用时,用户能够在整个开发团队中保护惟一可信起源。如果用户正在与开源或第三方开发团队单干,这一点尤其重要。

Helix4Git 有两局部形成:

  • Helix 服务器(即 p4d)
  • Git connector,相当于一个 git 服务器

用户能够应用 Git 客户端从 gragh 仓库拉取文件后进行更改,而后再将文件推送至 gragh 仓库。Git 客户端与 Helix 服务器通过 git connector 通信。

装置

2.1  装置 Git connector 要求:

  • Helix Core 服务器版本要在 2017.1 以上
  • Git 版本在 1.8.5 以上
  • 举荐 git connector 与 helix server 装置在不同的机器上

2.2  Git connector 目前可装置在以下 linux 平台:

  • Ubuntu 12.04 LTS (Precise), 14.04 LTS (Trusty), 16.04 LTS (Xenial), 18.04 LTS (Bionic), 20.04 (Focal)
  • CentOS or Red Hat 6.x, 7.x, 8.x
  • SUSE Linux Enterprise Server 11, 12, 15

2.3  本文配置环境为:

操作系统: centos7
Perforce helix core: 2021.2
Git connector: 2019.2
Git version: 2.34.0

2.4  装置步骤

2.4.1 导入软件签名

sudo rpm --import http://package.perforce.com/perforce.pubkey

2.4.2 配置 repo 地址

创立 /etc/yum.repos.d/Perforce.repo 并增加以下内容:

[perforce]
name=Perforce for CentOS $releasever - $basearch
baseurl=http://package.perforce.com/yum/rhel/7/x86_64/
enabled=1
gpgcheck=1
gpgkey=http://package.perforce.com/perforce.pubkey

其中 7 示意 centos 的版本。

2.4.3 装置 Git Connector package

sudo yum install helix-git-connector

配置

3.1  配置 Git connector

root 执行以下命令进入配置脚本交互模式:

$ sudo /opt/perforce/git-connector/bin/configure-git-connector.sh

配置实现后有以下提醒:

3.2  Helix Server 权限配置

super 权限的用户执行以下命令给 gconn-user 用户须要的权限:

p4 protect

而后在权限表减少一行:

list user gconn-user * //...

其它用户如须要操作 graph 仓库,须要调配相应权限:

p4 grant-permission -d graphDepotName -u username -p admin
p4 grant-permission -d graphDepotName -u username -p create-repo
p4 grant-permission -d graphDepotName -u username -p write-all

3.3  创立 graph 仓库

在配置过程中默认创立了一个名为 repo 的仓库,如果想创立其余的 graph 仓库,输出命令:

p4 depot -t gragh depotname

创立实现之后须要给 gconn-user 赋予权限,参见 3.2。

3.4  创立 repos

创立存在于 gragh 仓库的 repo,前提是此用户有 create-repo 权限:

p4 repo //graphDepotName/repo1

3.5  Git 用户认证配置

依据 Git connector 的配置,Git 用户如果想从 Helix4Git 上 pull/push repos 则须要设置 ssh 或者 https 认证,设置实现后 Git 用户就能够通过 url 和 Helix4Git 一起协同工作。

ssh:

git <command> git@ConnectorHost:graphDepotName/repoNamehttps:git <command> 

https:

//username@ConnectorHost/graphDepotName/repoName

3.5.1 ssh

客户机创立 ssh 密钥:

ssh-keygen -t rsa

将公钥导入 Helix Server 机器,当有多个公钥时,- s 指定此次公钥作用名字

p4 -p helixserver:1666 -u admin pubkey -u bruno -s scopeName -i < id_rsa.pub

期待几分钟密钥更新后,验证是否导入胜利:

git clone git@ConnectorHost:@info

3.5.2 https

应用 https 时须要依据提醒输出 Helix Server 的账户名和明码。

执行以下命令敞开 SSL 认证:

export GIT_SSL_NO_VERIFY=truegit config --global http.sslVerify false

如何应用 Helix4Git

4.1  Git 客户端 push 文件到 Helix4Git 服务器

应用 Git 客户端 push repos 到 Helix Core 服务器的 gragh 仓库

git push git@ConnectorHost:graphDepotName/repoName

4.2  p4 侧查看上传到 gragh 仓库的内容

4.2.1 创立工作区,同步 repos

命令行或 p4v 创立工作区,工作区 type 字段抉择 gragh 类型,view 字段定义仓库到本地的映射:

创立完工作区后,应用以下命令就能够更新 gragh 仓库的最新内容到本地:

p4 sync //graphDepotName/repoName/...

也可在 p4v 上拉取最新:

4.2.2 repo 蕴含多个分支

如果我的项目有多个分支,那么 push 到 Helix4Git 的默认分支是 master,以下命令 repo 蕴含所有分支:

git push git@ConnectorHost:graphDepotName/repoName --all

在 p4 工作区能够在 repo 内切换分支:

命令行切换:


git push git@ConnectorHost:graphDepotName/repoName --all

p4v 切换:

4.2.3 repo 指定分支

如果我的项目有多个分支,那么 push 到 Helix4Git 的默认分支是 master,如果须要指定分支,比方指定 dev 分支,能够在 repo 定义里退出以下字段:

DefaultBranch: refs/heads/devGit

客户端切到(checkout)dev 分支后执行 push 命令将内容提交到相应的 repo。

4.3  git 侧更新文件,p4 侧拉新

git add .
git commit -m
git push git@ConnectorHost:graphDepotName/repoName

执行 p4 sync 查看文件能够同步到 p4 工作区:

4.4  p4 侧更新文件,Git 侧拉新

应用 p4 命令行提交 (p4v 暂不反对提交):

提交实现可在 p4 侧看到文件相应的提交历史记录:

Git 客户端拉取 Helix4Git 端代码,获取到 p4 侧上传的文件内容:

4.5  在 p4 工作区内组合一般仓库和 graph 仓库

graph 仓库(gitrepo)和 p4 一般仓库的内容能够组合到同一个 p4 工作区内,例如习惯 Git 操作的用户能够将代码保留在 graph 仓库中,平时应用 Git 命令操作,其余用户能够间接应用 p4 固有的 local,stream 仓库,须要构建时,能够按需要将不同仓库的内容组合到同一个工作区中,一条命令即可下载全副须要的数据,并且能够共享一套对立的备份计划。

工作区定义:

查看工作区组合内容:

参考文档

Helix4Git 官网手册:https://bit.ly/3znL1YA

如想收费试用 Helix4Git、Helix TeamHub 以及 Helix Core,请立刻分割 Perforce 受权合作伙伴——龙智:
电话:400-775-5506
邮箱:marketing@shdsd.com

正文完
 0