GitHub 操作在 windows 上将更改推送到 remote/origin

GitHub Actions push changes to remote/origin on windows

我想使用 GitHub 操作自动化我的构建过程,这个过程有以下步骤:

  1. 结帐
  2. 建设
  3. 标签
  4. 增量版本
  5. 提交更改
  6. 推送标签和新提交
  7. 将包推送到存储库

我为 GitHub 操作创建了此 main.yml:

name: Build

on:
  repository_dispatch:
    types: build

jobs:
  build:
    name: Run build
    runs-on: windows-latest
    steps:
      - uses: actions/checkout@v1
        with:
          ref: 'master'
          token: ${{ secrets.GITHUB_TOKEN }}

      # checkout master, 'cause of detached head
      - name: Checkout master
        run: git checkout master

      # run the build script
      - name: Build
        if: success()
        run: .\build\build.ps1

      # pack everything
      - name: Pack
        if: success()
        run: .\build\pack.ps1

      # tag this version
      - name: Tag
        if: success()
        run: .\build\tag.ps1

      # increment version
      - name: Increment Version
        if: success()
        run: .\build\increment-version.ps1

      # Commit changes
      - name: Add & Commit
        if: success()
        run: |
          git config user.email actions@github.com
          git config user.name "GitHub Actions"
          git commit -a -m "Automated build" --author="GitHub Actions<actions@github.com>"

      # todo: push changes to remote/origin
      - name: Git Push
        if: success()
        run: git push

      # Push package to a repo
      - name: Push Package
        if: success()
        run: .\build\push-package.ps1

我尝试使用市场提供的操作,但遗憾的是我必须在 windows 机器上构建此应用程序。
大多数 acions 退出时出现以下错误消息:##[error]Container action is only supported on Linux.
另一个也不起作用,这就是我尝试使用 run 选项的原因。

不幸的是,使用这种方式推送也不起作用。我得到这个输出:

Logon failed, use ctrl+c to cancel basic credential prompt.
bash: /dev/tty: No such device or address
error: failed to execute prompt script (exit code 1)

(我必须手动取消任务。)

我想我必须向推送命令提供 {{ secrets.GITHUB_TOKEN }},但我只找到一种使用基本身份验证的方法,但我发现所有指南(一般指南)都使用此令牌作为不记名令牌.

如何在 windows 上的 GitHub 操作中将更改推回到 origin/remote?

使用 GitHub Push by ad-m 解决了我的问题。我很确定我已经测试了这个动作。