devtools (version 1.13.5)

use_github: Connect a local repo with GitHub.

Description

If the current repo does not use git, calls use_git automatically. use_github_links is called to populate the URL and BugReports fields of DESCRIPTION.

Usage

use_github(auth_token = github_pat(), private = FALSE, pkg = ".",
  host = "https://api.github.com", protocol = c("ssh", "https"),
  credentials = NULL)

Arguments

auth_token

Provide a personal access token (PAT) from https://github.com/settings/tokens. Defaults to the GITHUB_PAT environment variable.

private

If TRUE, creates a private repository.

pkg

Path to package. See as.package for more information.

host

GitHub API host to use. Override with the endpoint-root for your GitHub enterprise instance, for example, "https://github.hostname.com/api/v3".

protocol

transfer protocol, either "ssh" (the default) or "https"

credentials

A cred_ssh_key specifying specific ssh credentials or NULL for default ssh key and ssh-agent behaviour. Default is NULL.

Authentication

A new GitHub repo will be created via the GitHub API, therefore you must provide a GitHub personal access token (PAT) via the argument auth_token, which defaults to the value of the GITHUB_PAT environment variable. Obtain a PAT from https://github.com/settings/tokens. The "repo" scope is required which is one of the default scopes for a new PAT.

The argument protocol reflects how you wish to authenticate with GitHub for this repo in the long run. For either protocol, a remote named "origin" is created, an initial push is made using the specified protocol, and a remote tracking branch is set. The URL of the "origin" remote has the form git@github.com:<USERNAME>/<REPO>.git (protocol = "ssh", the default) or https://github.com/<USERNAME>/<REPO>.git (protocol = "https"). For protocol = "ssh", it is assumed that public and private keys are in the default locations, ~/.ssh/id_rsa.pub and ~/.ssh/id_rsa, respectively, and that ssh-agent is configured to manage any associated passphrase. Alternatively, specify a cred_ssh_key object via the credentials parameter.

See Also

Other git infrastructure: use_git_hook, use_github_links, use_git

Examples

Run this code
# NOT RUN {
## to use default ssh protocol
create("testpkg")
use_github(pkg = "testpkg")

## or use https
create("testpkg2")
use_github(pkg = "testpkg2", protocol = "https")
# }

Run the code above in your browser using DataCamp Workspace