如何使用个人访问令牌在 github 操作工作流程 (B) 中从不同的回购 (B) 提交并推送到私人回购 (A)

How to commit and push to a private repo(A), from a different repo(B), in github actions workflow (B) , using personal access token

name: deploy-me
on: [push]
jobs:
  deploys-me:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v2
        with:
          node-version: '14'
      - run: npm install
      - run: npm run dev

     //Next  I want to copy some file from this repo and commit to a different repo and push it

这是我的 workflow.yaml 文件,

npm run dev 之后,我希望能够将文件复制到另一个目录,提交并推送到另一个 repo

name: deploy-me
'on':
    - push
jobs:
    deploy-me:
        runs-on: ubuntu-latest
        steps:
            - uses: actions/checkout@v2
            - uses: actions/setup-node@v2
              with:
                  node-version: '14'
              env:
                  ACCESS_TOKEN: '${{ secrets.ACCESS_TOKEN }}'
            - run: npm install
            - run: npm run build
            - run: |
                  cd lib
                  git config --global user.email "xxx@gmail.com"
                  git config --global user.name "spark"
                  git config --global credential.helper cache
                  git clone https://${{secrets.ACCESS_TOKEN}}@github.com/sparkdevv/xxxxxx
                  cp index.js clonedFolder/ -f
                  cd clonedFolder
                  git add .
                  git commit -m "$(date)"
                  git push

这就是我解决问题的方法,

  1. 我从我的 developer settings 创建了一个个人访问令牌并复制了它以供后续步骤使用。

  2. 我通过导航到我的存储库设置并添加一个秘密来添加 ACCESS_TOKEN 环境变量。我在这里粘贴了之前创建的访问令牌。

  3. 然后简单地使用该代码并使用 secrets 上下文访问该令牌,请注意名称与我们之前创建的相似

  1. 现在只需将代码推送到 repo,一切都会像 charm 一样工作:)。

祝您黑客愉快!