使用PowerShell从私有GitHub存储库下载文件(使用OAuth)

时间:2020-08-20 13:58:19

标签: powershell github github-api

我已经在广泛寻找解决方案,但尚未找到成功。我只希望能够使用PowerShell从我的私有GitHub存储库下载文件。我想使用OAuth,而不是基本身份验证,因此我已经生成了令牌。但是从这里开始,我所引用的所有示例都不适合我。我能做的最好的就是收到“未找到”的回复。

我尝试过的代码示例是:

Invoke-WebRequest https://api.github.com/repos/MyAccount/MyRepo/contents/MyFile.txt -Headers @{"Authorization"="token 123456789012345678901234567890"} -OutFile C:\Temp\MyFile.txt

结果:

Invoke-WebRequest:{“ message”:“不 找到”,“ documentation_url”:“ https://docs.github.com/rest/reference/repos#get-repository-content”}

我很确定自己拥有身份验证权。我相信我的文件路径错误。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

相对于本次SO讨论的潜在重复用例...

PowerShell: retrieve file from GitHub

$url = 'https://github.com/mycompany/myrepo/blob/master/myscript.ps1'
$wc  = New-Object -TypeName System.Net.WebClient
$wc.Headers.Add('Authorization','token your_token')
iex ($wc.DownloadString($url))

..当然没有Invoke-WebRequest。

另请参阅:

Using PowerShell and oAuth

# Modified article code
Invoke-RestMethod https://api.github.com/repos/MyAccount/MyRepo/contents/MyFile.txt -Method Get -Headers @{"Authorization" = "Bearer $accessToken"}