0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

PowerShellForGitHubを使ってみる

Last updated at Posted at 2021-12-25

PowershellにてGitHubを操作(?)するライブラリがあったので使用してみました。

GitHub CLIでも十分なのですがPowerShellが便利だとういことに最近気づいたので、PowerShellでできることはやっていきたいと思います。

Install方法

を確認してください。管理者権限でPowerShellを起動し、

PS > Install-Module -Name PowerShellForGitHub

を実行するとインストールされます。

Tokenの取得

まず、APIを使用するためにTokenを取得します。
2021-12-25_15h28_24.png
右上のところからSettingsを選択
2021-12-25_15h31_23.png
Developer settingsを選択
2021-12-25_15h32_08.png
Personal access tokens -> Generate new tokenを選択
2021-12-25_15h32_43.png
NoteやExpirationとかは妖刀に応じてご自由に...
image.png
生成されたら、出てきたtokenを忘れないようにしましょう。一回しか出ません。

Powersehll scriptでIssueを取得してみる

### Parameters ###
$token = "Input_your_token"
$uri = "https://github.com/path/ToRepository"

### If you use GitHub Enterprise ###
#Set-GitHubConfiguration -ApiHostName "github.example.com"

$secureString = ($token | ConvertTo-SecureString -AsPlainText -Force)
$cred = New-Object System.Management.Automation.PSCredential "username is ignored", $secureString
Set-GitHubAuthentication -Credential $cred
$secureString = $null # clear this out now that it's no longer needed
$cred = $null # clear this out now that it's no longer needed

### Get Issue list ###
$issues = Get-GitHubIssue -Uri $uri

### Output ###
foreach ($item in $issues) {
    $title = $item.title
    $url = $item.html_url
    Write-Host "$count, $title, $url"
    $count ++
}

簡単に取得できました。
Enterprise版の場合、URLを設定してやると使えるようになります。このときにAPI用のURL(v3とかついているやつ)ではなくURLを入力してやらないとだめなようです。

Pull Requestの操作等もtoken生成時に付与する権限次第でできるようになるので便利だと思います。
細かいことはwikiにかかれているのでそちらを参考にしてください、若干説明が足りないところもありますが...

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?