https://github.com/arlac77/github-repository-provider
repository provider for github
https://github.com/arlac77/github-repository-provider
github
Last synced: 2 months ago
JSON representation
repository provider for github
- Host: GitHub
- URL: https://github.com/arlac77/github-repository-provider
- Owner: arlac77
- License: 0bsd
- Created: 2017-11-16T17:02:36.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2026-02-05T20:07:55.000Z (4 months ago)
- Last Synced: 2026-02-05T20:58:53.222Z (4 months ago)
- Topics: github
- Language: JavaScript
- Homepage:
- Size: 4.28 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://www.npmjs.com/package/github-repository-provider)
[](https://spdx.org/licenses/0BSD.html)
[](https://bundlejs.com/?q=github-repository-provider)
[](https://npmjs.org/package/github-repository-provider)
[](https://github.com/arlac77/github-repository-provider/issues)
[](https://actions-badge.atrox.dev/arlac77/github-repository-provider/goto)
[](https://github.com/prettier/prettier)
[](http://commitizen.github.io/cz-cli/)
[](https://snyk.io/test/github/arlac77/github-repository-provider)
# github-repository-provider
repository provider for github
```javascript
import { GithubProvider } from 'github-repository-provider';
const config = GithubProvider.optionsFromEnvironment(process.env);
const provider = new GithubProvider(config);
const repository = await provider.repository(`myuser/repo1`);
for async (const entry of repository.entries('\*_/_.md')) {
console.log(entry.name);
console.log(entry.string);
}
```
# API
### Table of Contents
* [GithubBranch](#githubbranch)
* [Parameters](#parameters)
* [writeEntry](#writeentry)
* [Parameters](#parameters-1)
* [commit](#commit)
* [Parameters](#parameters-2)
* [entry](#entry)
* [Parameters](#parameters-3)
* [entries](#entries)
* [Parameters](#parameters-4)
* [removeEntries](#removeentries)
* [Parameters](#parameters-5)
* [GithubOwner](#githubowner)
* [createRepository](#createrepository)
* [Parameters](#parameters-6)
* [deleteRepository](#deleterepository)
* [Parameters](#parameters-7)
* [GithubProvider](#githubprovider)
* [Examples](#examples)
* [initializeRepositories](#initializerepositories)
* [repositoryBases](#repositorybases)
* [name](#name)
* [instanceIdentifier](#instanceidentifier)
* [GithubPullRequest](#githubpullrequest)
* [\_merge](#_merge)
* [Parameters](#parameters-8)
* [update](#update)
* [validMergeMethods](#validmergemethods)
* [list](#list)
* [Parameters](#parameters-9)
* [open](#open)
* [Parameters](#parameters-10)
* [GithubRepository](#githubrepository)
* [commits](#commits)
* [Parameters](#parameters-11)
* [commitForSha](#commitforsha)
* [Parameters](#parameters-12)
* [tree](#tree)
* [Parameters](#parameters-13)
* [addTree](#addtree)
* [Parameters](#parameters-14)
* [initializeBranches](#initializebranches)
* [initializeTags](#initializetags)
* [url](#url)
* [issuesURL](#issuesurl)
* [homePageURL](#homepageurl)
* [api](#api)
* [update](#update-1)
* [refId](#refid)
* [Parameters](#parameters-15)
* [\_setRefId](#_setrefid)
* [Parameters](#parameters-16)
* [setRefId](#setrefid)
* [Parameters](#parameters-17)
* [deletePullRequest](#deletepullrequest)
* [Parameters](#parameters-18)
* [initializeHooks](#initializehooks)
## GithubBranch
**Extends Branch**
Branch on GitHub.
### Parameters
* `owner`
* `name`
* `options`
### writeEntry
Writes content into the branch
#### Parameters
* `entry` **ContentEntry**
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\** written content with sha values set
### commit
#### Parameters
* `message` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `entries` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\**
* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)?**
### entry
#### Parameters
* `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
### entries
#### Parameters
* `patterns` **([Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)> | [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String))**
Returns **AsyncGenerator\** all matching entries in the branch
### removeEntries
#### Parameters
* `entries` **AsyncIterable\**
## GithubOwner
**Extends RepositoryGroup**
Represents github repo owner either
* users
* organization
### createRepository
#### Parameters
* `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** (optional, default `{}`)
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\** newly created repository
### deleteRepository
#### Parameters
* `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
## GithubProvider
**Extends MultiGroupProvider**
GitHub provider.
Lookup a repository.
known environment variables
* GITHUB\_TOKEN or GH\_TOKEN api token
### Examples
```javascript
import GithubProvider from 'github-repository-provider';
const ghp = new GithubProvider();
const r1 = ghp.repository('git@github.com:arlac77/github-repository-provider.git');
const r2 = ghp.repository('git://github.com/arlac77/github-repository-provider.git');
const r3 = ghp.repository('git+ssh://github.com/arlac77/github-repository-provider.git');
const r4 = ghp.repository('https://github.com/arlac77/github-repository-provider.git#master');
const r5 = ghp.repository('git+https://github.com/arlac77/github-repository-provider.git#master');
const r6 = ghp.repository('arlac77/github-repository-provider');
// different ways to address the same repository
```
### initializeRepositories
### repositoryBases
All possible base urls
* github:
*
* git://github.com
* git+ssh://github.com
*
* git+
Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>** common base urls of all repositories
### name
We are called github.
Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** github
### instanceIdentifier
Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** default environment name prefix for the provider instance
## GithubPullRequest
**Extends PullRequest**
Github pull request.
### \_merge
#### Parameters
* `method` (optional, default `"MERGE"`)
### update
### validMergeMethods
All valid merge methods.
Returns **[Set](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Set)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>** valid merge methods
### list
#### Parameters
* `repository` **Repository**
* `filter` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** (optional, default `{}`)
### open
#### Parameters
* `source` **Branch**
* `destination` **Branch**
* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)?**
## GithubRepository
**Extends Repository**
Repository on GitHub.
### commits
#### Parameters
* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**
Returns **AsyncIterable\**
### commitForSha
#### Parameters
* `sha` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>** response
### tree
* **See**:
#### Parameters
* `sha` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>>**
### addTree
* **See**:
#### Parameters
* `updates` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>**
* `base` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** base tree sha
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>** newly created tree
### initializeBranches
### initializeTags
### url
Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** github https url
### issuesURL
Deliver the url of issue tracking system.
Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
### homePageURL
Deliver the url of the repositories home page.
Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
### api
API endpoint for ourselfs.
Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
### update
### refId
Get sha of a ref.
#### Parameters
* `ref` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>** sha of the ref
### \_setRefId
#### Parameters
* `ref` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `sha` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
### setRefId
#### Parameters
* `ref` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `sha` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
* `options` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**
Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>**
### deletePullRequest
#### Parameters
* `name` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
### initializeHooks
# install
With [npm](http://npmjs.org) do:
```shell
npm install github-repository-provider
```
# license
BSD-2-Clause