octokit-plugin-rename-branch
octokit-plugin-rename-branch copied to clipboard
Octokit plugin to rename a branch in a github repository
⚠️ This plugin has been archived.
GitHub introduced an API to rename a branch which implements most, if not all, what this plugin used to do.
octokit-plugin-rename-branch
Octokit plugin to rename a branch in a github repository
Usage
| Browsers |
Load
|
|---|---|
| Node |
Install with
|
const MyOctokit = Octokit.plugin(renameBranch);
const octokit = new MyOctokit({
// create token at https://github.com/settings/tokens/new
auth: "my-token-123",
});
octokit.renameBranch({
owner: "octocat",
repo: "hello-world",
current_name: "master",
name: "main",
});
You can use composeRenameBranch directly, too.
composeRenameBranch(octokit, {
owner: "octocat",
repo: "hello-world",
current_name: "master",
name: "main",
});
How it works
- Creates a new reference using the
shaof the last commit ofcurrent_branch(POST /repos/:owner/:repo/git/refs) - Updates the default branch of the repository (
PATCH /repos/:owner/:repo) - Updates branch protection to the new branch name if applicable (GraphQL mutation
updateBranchProtectionRule) - Look for open pull requests and update the base branch if it’s
current_branch(PATCH /repos/:owner/:repo/pulls/:pull_number) - Delete
current_branch(DELETE /repos/:owner/:repo/git/refs/:ref)
Motivation
This library is meant to simplify the process of renaming branch names of GitHub repositories.
By default, both Git and GitHub use master for their main branch. I think Git & GitHub should follow the lead of tech communities such as Django, Drupal and CouchDB and replace master with non-offensive term, such as latest or main.
License
MIT