Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/r-lib/credentials
Tools for Managing SSH and Git Credentials
https://github.com/r-lib/credentials
git password r rstats ssh
Last synced: 4 days ago
JSON representation
Tools for Managing SSH and Git Credentials
- Host: GitHub
- URL: https://github.com/r-lib/credentials
- Owner: r-lib
- License: other
- Created: 2018-11-06T19:40:03.000Z (about 6 years ago)
- Default Branch: main
- Last Pushed: 2024-10-03T18:19:02.000Z (3 months ago)
- Last Synced: 2025-01-03T13:11:54.242Z (11 days ago)
- Topics: git, password, r, rstats, ssh
- Language: R
- Homepage: https://docs.ropensci.org/credentials
- Size: 286 KB
- Stars: 72
- Watchers: 4
- Forks: 5
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Changelog: NEWS
- License: LICENSE
Awesome Lists containing this project
- jimsghstars - r-lib/credentials - Tools for Managing SSH and Git Credentials (R)
README
# credentials
*This package is a joint effort from [rOpenSci](https://ropensci.org/) and the [Tidyverse](https://www.tidyverse.org/) team.*
> Tools for Managing SSH and Git Credentials
[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](http://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
[![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/github/r-lib/credentials?branch=master&svg=true)](https://ci.appveyor.com/project/jeroen/credentials)
[![CRAN_Status_Badge](http://www.r-pkg.org/badges/version/credentials)](http://cran.r-project.org/package=credentials)
[![CRAN RStudio mirror downloads](http://cranlogs.r-pkg.org/badges/credentials)](http://cran.r-project.org/web/packages/credentials/index.html)Setup and retrieve HTTPS and SSH credentials for use with 'git' and
other services. For HTTPS remotes the package interfaces the 'git-credential'
utility which 'git' uses to store HTTP usernames and passwords. For SSH
remotes we provide convenient functions to find or generate appropriate SSH
keys. The package both helps the user to setup a local git installation, and
also provides a back-end for git/ssh client libraries to authenticate with
existing user credentials.### Setting your GITHUB_PAT
Automatically populate your `GITHUB_PAT` environment variable from the native git credential store. The credential manager will safely prompt the user for credentials when needed.
```r
credentials::set_github_pat()
```Use this function in your `.Rprofile` if you want to automatically set `GITHUB_PAT` for each R session, without hardcoding your secret in plain text.
### Manage HTTPS credentials
Load or prompt the user for GitHub username and password:
```r
library(credentials)
git_credential_ask('https://github.com')
```See which credential helper back-end your `git-credential` store is using:
```r
credentials::credential_helper_get()
```### Manage SSH keys
Lookup the appropriate key, or prompt the user to generate one:
```r
library(credentials)
ssh_key_info()
```You can copy-paste the public key directly to your [GitHub profile](https://github.com/settings/ssh/new)!
## For developers
Use the openssl package to read the user private key in R for encryption / signatures:
```r
user <- ssh_key_info()
key <- ssh_read_key(user$key)
openssl::write_pem(key)
```