GitHub Actions - 将公共回购克隆到我的私人回购?
Posted
技术标签:
【中文标题】GitHub Actions - 将公共回购克隆到我的私人回购?【英文标题】:GitHub Actions - Cloning a Public Repo To My Private Repo? 【发布时间】:2021-03-29 23:33:42 【问题描述】:我在 Github 上有一个公共 repo,我想克隆它。
我的目标是设置一个 Github 操作,每月一次,它将克隆此存储库并将任何新更改从公共存储库(托管在 Github)上传到我的私人存储库。
到目前为止,这是我的 yml 文件:
name: Clone Repo Copy
on:
schedule:
- cron: "0 0 1 * *"
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
repository: aws/aws-sdk-java-archetype
token: $ secrets.GITHUBPAT
- uses: actions/checkout@v2
- run: |
git config user.name github-actions
git config user.email github-actions@github.com
git add .
git commit -m "generated"
git push
(my secrets.GITHUBPAT 是我的 Github 个人访问令牌,它可以访问所有内容以进行调试)
但是,正如预期的那样,它没有用,这是我的日志:https://pastebin.com/tHLP0rn5(已编辑以删除用户名和 repo) 如何让 GitHub Actions 克隆一个公共仓库并将其推送到我的私人仓库?
【问题讨论】:
【参考方案1】:您可以使用Git Sync Action 之类的操作,它甚至适用于独立/非分叉的存储库。
【讨论】:
【参考方案2】:如果您只想将更改推送到镜像仓库,则无需添加和提交任何内容。
在这种情况下,使用git remote add mirror https://url.to.your.private.repo
,然后推送git push mirror branchname
,源分支上不存在的提交将同步到远程。
这假设镜像是一个精确的副本,并且人们也没有将更改推送到该 repo,在这种情况下,这个过程会有点困难。
【讨论】:
以上是关于GitHub Actions - 将公共回购克隆到我的私人回购?的主要内容,如果未能解决你的问题,请参考以下文章
如何从 GitHub Actions 克隆 BitBucket 项目?