将代码推送到Gitlab中的其他项目

将代码推送到Gitlab中的其他项目,gitlab,gitlab-ci-runner,Gitlab,Gitlab Ci Runner,我想知道在Gitlab中从CI/CD作业推送代码的最佳方式是什么。比如说, project1:运行gitlab ci的地方 project2:要将代码推送到的位置 这两个项目都在Gitlab中,我们的想法是将代码从CI的proejct1推送到project2。其思想是基于project1我们编译并构建一些工件,这些工件随后被推送到project2 一个快速的解决方案是使用个人访问令牌: git push https://${GITLAB_USER_LOGIN}:${PERSONAL_ACCE

我想知道在Gitlab中从
CI/CD
作业推送代码的最佳方式是什么。比如说,

  • project1
    :运行
    gitlab ci的地方
  • project2
    :要将代码推送到的位置
这两个项目都在Gitlab中,我们的想法是将代码从CI的
proejct1
推送到
project2
。其思想是基于
project1
我们编译并构建一些工件,这些工件随后被推送到
project2

一个快速的解决方案是使用
个人访问令牌

git push https://${GITLAB_USER_LOGIN}:${PERSONAL_ACCESS_TOKEN}@<your-gitlab-server>/<your-project-2-name>.git HEAD:master
git-push-https://${GITLAB\u-USER\u-LOGIN}:${PERSONAL\u-ACCESS\u-TOKEN}@/.git-HEAD:master
要配置个人令牌,请执行以下操作:

  • 您的用户配置文件-设置-访问令牌-“创建个人访问令牌”
  • 项目1
    -设置-CI/CD-秘密变量

    个人访问令牌

  • 但此解决方案存在一些重大问题:

    • 项目的所有成员都将能够看到
      个人访问令牌
    • 如果启用
      CI\u DEBUG\u TRACE
      标志,则个人令牌将出现在作业的输出中
    我想这可能是一个暂时的解决方案。但我想知道什么是最好的解决办法


    谢谢

    项目镜像似乎是您正在寻找的功能:

    转到项目页面 设置->存储库设置

    在那里,您可以将pushong配置到另一个存储库,仅受保护的分支或所有内容,由您选择

    我希望这对你有帮助。
    如果没有,请提供更多信息。

    我们的想法不是镜像,而是在CI中构建一些,然后将其推送到另一个存储库。我在问题中澄清了这一点。