我试图在私有仓库上使用Github Action创建git clone
,但我不确定如何配置它以使用SSH连接到GitHub。顺便说一下,它是一个macOS运行器。
此时,actions/checkout
工作正常,但当我直接调用git clone
时,抛出了这个错误。
.yml文件如下所示:
name: Release IOS
on:
push:
branches:
- github-action
jobs:
build:
name: Build IPA and upload to TestFlight
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
ref: ${{ github.head_ref }}
- name: Check Github User
run: |
git --version
git config user.name 'MyUsername'
git config user.email 'MyEmail'
git config user.name
git config user.email
env:
NODE_AUTH_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
- name: Setup Node.js
uses: actions/setup-node@v1
with:
node-version: 14.17.0
env:
NODE_AUTH_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
- name: Set up SSH
uses: pioug/la-cle@v1.1.0
with:
GH_SSH_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
- name: Try copy a private repo
run: git clone https://github.com/MyUsername/MyRepo.git
1条答案
按热度按时间kh212irz1#
正如@torek所指出的,错误是试图从您的终端读取凭据,因为它耗尽了其他选项(配置等)。
由于您在上一步中设置了ssh,因此您的意图似乎是使用ssh,因此您应该将url更改为ssh。
请注意,还有其他选项。您仍然可以使用https,但可以使用git extraheader cli选项沿着PAT。这实际上是我们在常见情况下在actions/checkout中所做的。
https://www.codegrepper.com/code-examples/shell/How+do+I+clone+a+git+repository+with+extraHeader
从该网站的完整性:
基本上,你让它传递你的PAT作为一个base64编码的头。