insertPackage {drat} | R Documentation |
Insert a package source or binary file into a drat repository
Description
R can use multiple archives: CRAN, BioConductor and Omegahat have been supported for years. It is equally easy to add local archives from the same machine, or local network, or university / company network as well as other publically available repositories. This function aids in the process, and defaults to inserting a given source archive into a given repository.
Usage
insertPackage(
file,
repodir = getOption("dratRepo", "~/git/drat"),
commit = FALSE,
pullfirst = FALSE,
action = c("none", "archive", "prune"),
location = getOption("dratBranch", "gh-pages"),
...
)
insertPackages(file, ...)
insert(...)
Arguments
file |
One or more R package(s) in source or binary format |
repodir |
A local directory corresponding to the repository top-level directory. |
commit |
Either boolean toggle to select automatic git operations ‘add’, ‘commit’, and ‘push’ or, alternatively, a character variable can be used to specify a commit message; this also implies the ‘TRUE’ values in other contexts. |
pullfirst |
Boolean toggle to call |
action |
A character string containing one of: “none”
(the default; add the new package into the repo, effectively masking
previous versions), “archive” (place any previous versions into
a package-specific archive folder, creating such an archive if it does
not already exist), or “prune” (calling |
location |
A character variable with the GitHub Pages location: either “gh-pages” indicating a branch of that name, or “docs/” directory in the main branch. The default value can be overridden via the “dratBranch” option. |
... |
For |
Details
This function inserts the given (source or binary) package file
into the given (local) package repository and updates the
index. By setting the commit
option to TRUE
, one can
then push to a remote git code repository. If the
git2r
package is installed, it is used for
the interaction with the git repository; otherwise the git
shell command is used.
An aliased function insert
is also available, but not
exported via NAMESPACE
to not clobber a possibly unrelated
function; use it via drat:::insert()
.
The function also checks for a top-level index.html
file to ensure
external tests against the repository (as for example done by CRAN if you
list the repository as an ‘Additional_repositories’ in a package)
do not return a ‘404’ error. If missing, a simple one-line example is
shown.
Value
NULL is returned.
Options
Set using options
dratRepo
Path to git repo. Defaults to
~/git/drat
dratBranch
The git branch to store packages on. Defaults to
gh-pages
Author(s)
Dirk Eddelbuettel
Examples
## Not run:
insertPackage("foo_0.2.3.tar.gz") # inserts into (default) repo
insertPackage("foo_0.2.3.tar.gz", "/nas/R/") # ... into local dir
## End(Not run)
## Not run:
insertPackage("foo_0.2.3.tar.gz", action = "prune") # prunes any older copies
insertPackage("foo_0.2.3.tar.gz", action = "archive") # archives any older copies
## End(Not run)