用powershell实现,管理github自动化

搜索关键字如下:
PowerShellForGitHub
powershell 传教士 原创文章。始于 2021-02-04 允许转载,但必须保留名字和出处,否则追究法律责任

---【简介】---

PowerShellForGitHub是微软开发的powershell库。它通过github v3版api,访问相关功能。以达到自动化的目的。

官网:https://github.com/microsoft/PowerShellForGitHub

---【库的功能列表】---

查询,创建,更新和删除存储库,包括:
  查询,创建和删除Branches以及关联的分支保护规则。
  查询并创建新的Forks
  在仓库中查询和创建内容。
  查询存储库中的语言和标签,并查询/更新其主题。
  更改存储库所有权。
  查询,启用和禁用安全和漏洞警报。
  查询并设置GitHub Actions权限。
  查询,设置和删除团队权限。
  查询各种流量报告,包括引荐来源和路径,页面视图和克隆。

查询,创建,编辑,锁定/解锁问题及其所有相关属性:
  查询,检查,添加和删除受让人
  查询,创建,编辑和删除问题注释
  查询,创建,编辑和删除标签
  查询事件和 时间表
  查询,创建,编辑和删除里程碑
查询和创建拉取请求
查询合作者
查询贡献者
查询组织及其成员。
查询和更新用户
查询,创建,编辑和删除Teams以及查询其成员。
查询,创建,编辑和删除Projects以及 Project Columns和 Project Cards
查询,创建,编辑和删除发布以及相关的内容/资产。
查询,创建,编辑,删除,分叉和取消(un)star gists以及要点注释。
查询,编辑和删除对“问题”和“拉取请求”的反应。
杂项功能:
  获取所有行为准则以及特定回购协议的行为准则。
  获取所有GitHub表情符号
  获取gitignore模板
  获取常用许可证以及特定存储库的许可证。
  将markdown转换为等效的HTML
  获取您当前使用API​​的速率限制。

---【安装】---

Install-Module -Name PowerShellForGitHub

 

---【保存github账户密码】---

在这里设置api token:
https://github.com/settings/tokens/new

用这个命令,保存账户密码:
Set-GitHubAuthentication
查看帮助:
Get-Help Set-GitHubAuthentication -Examples
 

---【例子:查找所有标签为“需要进行复制的步骤”的问题,并为这些问题添加新的注释】---

 

$issues = @(Get-GitHubIssue -OwnerName microsoft -RepositoryName PowerShellForGitHub -Label 'repro steps needed')
foreach ($issue in $issues)
{
$params = @{
'OwnerName' = 'microsoft'
'RepositoryName' = 'PowerShellForGitHub'
'Issue' = $issue.number
'Body' = 'Any update on those repro steps?'
}
New-GitHubIssueComment @params
}
 

---【更多命令的用法和例子】---

https://github.com/microsoft/PowerShellForGitHub/blob/master/USAGE.md#examples
 
 

---【附录a:命令列表】---

Add-GitHubAssignee
Add-GitHubIssueLabel
Backup-GitHubConfiguration
Clear-GitHubAuthentication
ConvertFrom-GitHubMarkdown
Get-GitHubConfiguration
Get-GitHubEmoji
Get-GitHubRateLimit
Group-GitHubIssue
Group-GitHubPullRequest
Invoke-GHRestMethod
Invoke-GHRestMethodMultipleResult
Join-GitHubUri
New-GitHubTeam
Remove-GitHubAssignee
Remove-GitHubGistFile
Reset-GitHubConfiguration
Restore-GitHubConfiguration
Set-GitHubAuthentication
Set-GitHubConfiguration
Set-GitHubGistFile
Set-GitHubIssueLabel
Set-GitHubProfile
Set-GitHubRepositoryTopic
Test-GitHubAuthenticationConfigured
Add-GitHubGistStar
Copy-GitHubGist
Disable-GitHubRepositorySecurityFix
Disable-GitHubRepositoryVulnerabilityAlert
Enable-GitHubRepositorySecurityFix
Enable-GitHubRepositoryVulnerabilityAlert
Get-GitHubAssignee
Get-GitHubCloneTraffic
Get-GitHubCodeOfConduct
Get-GitHubContent
Get-GitHubEvent
Get-GitHubGist
Get-GitHubGistComment
Get-GitHubGitIgnore
Get-GitHubIssue
Get-GitHubIssueComment
Get-GitHubIssueTimeline
Get-GitHubLabel
Get-GitHubLicense
Get-GitHubMilestone
Get-GitHubOrganizationMember
Get-GitHubPathTraffic
Get-GitHubProject
Get-GitHubProjectCard
Get-GitHubProjectColumn
Get-GitHubPullRequest
Get-GitHubReaction
Get-GitHubReferrerTraffic
Get-GitHubRelease
Get-GitHubReleaseAsset
Get-GitHubRepository
Get-GitHubRepositoryActionsPermission
Get-GitHubRepositoryBranch
Get-GitHubRepositoryBranchProtectionRule
Get-GitHubRepositoryCollaborator
Get-GitHubRepositoryContributor
Get-GitHubRepositoryFork
Get-GitHubRepositoryLanguage
Get-GitHubRepositoryTag
Get-GitHubRepositoryTeamPermission
Get-GitHubRepositoryTopic
Get-GitHubTeam
Get-GitHubTeamMember
Get-GitHubUser
Get-GitHubUserContextualInformation
Get-GitHubViewTraffic
Initialize-GitHubLabel
Lock-GitHubIssue
Move-GitHubProjectCard
Move-GitHubProjectColumn
Move-GitHubRepositoryOwnership
New-GitHubGist
New-GitHubGistComment
New-GitHubIssue
New-GitHubIssueComment
New-GitHubLabel
New-GitHubMilestone
New-GitHubProject
New-GitHubProjectCard
New-GitHubProjectColumn
New-GitHubPullRequest
New-GitHubRelease
New-GitHubReleaseAsset
New-GitHubRepository
New-GitHubRepositoryBranch
New-GitHubRepositoryBranchProtectionRule
New-GitHubRepositoryFork
New-GitHubRepositoryFromTemplate
Remove-GitHubGist
Remove-GitHubGistComment
Remove-GitHubGistStar
Remove-GitHubIssueComment
Remove-GitHubIssueLabel
Remove-GitHubLabel
Remove-GitHubMilestone
Remove-GitHubProject
Remove-GitHubProjectCard
Remove-GitHubProjectColumn
Remove-GitHubReaction
Remove-GitHubRelease
Remove-GitHubReleaseAsset
Remove-GitHubRepository
Remove-GitHubRepositoryBranch
Remove-GitHubRepositoryBranchProtectionRule
Remove-GitHubRepositoryTeamPermission
Remove-GitHubTeam
Rename-GitHubGistFile
Rename-GitHubRepository
Rename-GitHubTeam
Set-GitHubContent
Set-GitHubGist
Set-GitHubGistComment
Set-GitHubGistStar
Set-GitHubIssue
Set-GitHubIssueComment
Set-GitHubLabel
Set-GitHubMilestone
Set-GitHubProject
Set-GitHubProjectCard
Set-GitHubProjectColumn
Set-GitHubReaction
Set-GitHubRelease
Set-GitHubReleaseAsset
Set-GitHubRepository
Set-GitHubRepositoryActionsPermission
Set-GitHubRepositoryTeamPermission
Set-GitHubTeam
Split-GitHubUri
Test-GitHubAssignee
Test-GitHubGistStar
Test-GitHubOrganizationMember
Test-GitHubRepositoryVulnerabilityAlert
Unlock-GitHubIssue

 
-完-
 

用powershell实现,管理github自动化的更多相关文章

  1. msysGit管理GitHub代码

    msysGit管理GitHub代码   代码的管理,在日常开发中是很重要的环节,程序员的修炼三部曲——版本控制,单元测试,项目自动化. 本篇就简单的说说通过msysGit来管理GitHub中的代码,实 ...

  2. 用Windows PowerShell 控制管理 Microsoft Office 365

    如果想要通过PowerShell控制管理Office365,首先要安装Microsoft Online Services Sign-In Assistant 7.0,链接如下 Microsoft On ...

  3. kvm虚拟机管理 系统自动化安装

    原创博文安装配置KVM http://www.cnblogs.com/elvi/p/7718574.htmlweb管理kvm http://www.cnblogs.com/elvi/p/7718582 ...

  4. 用tortoiseGit管理GitHub项目代码(完整教程)

    一.为什么要写这篇博客呢,因为在一开始用tortoiseGit来管理项目的时候,在百度上找了很多教程,但是感觉说的都不是很全,有些东西以及操作没写清楚,所以想写一片比较完整用tortoiseGit管理 ...

  5. github网站介绍、并使用git命令管理github(详细描述)

    本章学习: 1)熟悉github网站 2)通过git命令远程管理github, 3)git命令使用ssh key密钥无需输入账号密码 1.首先我们来熟悉github网站 1.1 注册github 登录 ...

  6. 【原创】开启PowerShell远程管理

    非域网络,开启PowerShell远程管理,命令如下: 以下操作,PS命令窗口,必须都以管理员省份执行. Step 1: 机器A和B,分别开启PowerShell远程管理服务A = 192.168.3 ...

  7. mac使用git管理Github

    工欲善其事,必先利其器. 在OS X Yosemite 10.10.3安装最新版本号Xcode.在terminal下能够发现git已经被安装. ~ mesut$ git --version git v ...

  8. 利用Powershell在IIS上自动化部署网站

    本文主要讲如何通过Powershell在IIS上自动化部署ASP.NET网站,而不涉及Powershell的基本语法,如果没有Powershell基础的同学也可以把本文作为学习Powershell的基 ...

  9. (数据科学学习手札67)使用Git管理Github仓库

    一.简介 Git是目前使用最广泛的分布式版本控制系统,通过Git可以方便高效地管理掌握工作过程中项目内容文件的更新变化情况,通过Git我们可以以命令行的形式完成对Github上开源仓库的clone,以 ...

随机推荐

  1. linux串口通信 接收信息不完整 读取不全

    类似这种 ready.o是我用来读取串口信息的一个程序 执行结果如下: [root@localhost testPlc]# ./ready.o 0 02 1 30 2 30 3 46 4 46 5 3 ...

  2. Spring 抽象的缓存包 spring-cache

    项目实战 用户信息查询接口中,使用@Cacheable注解  绑定相关信息接口中,使用@CachePut更新用户信息到缓存 更新用户信息接口中,使用@CacheEvict删除缓存信息 使用步骤 添加依 ...

  3. 利用PHP递归 获取所有的上级栏目

    /** * 获取所有的上级栏目 * @param $category_id * @param array $array * @return array * @author 宁佳兵 <meilij ...

  4. nginx文件结构与解析,例子

    1.nginx文件结构 1 ... #全局块 2 3 events { #events块 4 ... 5 } 6 7 http #http块 8 { 9 ... #http全局块 10 server ...

  5. SpringBoot同时接收单个对象和List<object>参数

    最近做项目的有个需求,是把多个文件移动到另一个文件夹下,这需要把 新的文件夹id -- Long类型 多个文件的信息 -- List< Object > 类型 这两个参数传给后台,我的后台 ...

  6. Sentry(v20.12.1) K8S 云原生架构探索,SENTRY FOR JAVASCRIPT 故障排除

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  7. DHCP最佳实践(三)

    这是Windows DHCP最佳实践和技巧的最终指南. 如果您有任何最佳做法或技巧,请在下面的评论中发布它们. 在本指南(三)中,我将分享以下DHCP最佳实践和技巧. 仅在需要时才使用IP冲突检测 运 ...

  8. Puzzle (II) UVA - 519

    题目链接: https://vjudge.net/problem/UVA-519 思路: 剪枝+回溯 这个题巧妙的是他按照表格的位置开始搜索,也就是说表格是定的,他不断用已有的图片从(0,0)开始拼到 ...

  9. library cache pin解决方法

    library cache pin大部分都是因为编译存储过程造成的 查找造成问题的数据库对象(一般为存储过程) SELECT * FROM v$session_wait WHERE event = ' ...

  10. MySQL下载与安装教程

    一,下载篇 1,首先访问MySQL官网下载页,https://dev.mysql.com/downloads/mysql/ 如果是MAC系统,操作系统请选择macOS,Windows则选择Window ...