私の教育機関は最近、GitLabをインストールしてくれました。私はdevtools::install_git
を使用してGitLabサーバーからRパッケージをインストールする方法を理解し、プロジェクトがパブリックである限り機能します。
#* When modeltable project has Public status
devtools::install_git('https://mini-me2.lerner.ccf.org/nutterb/modeltable.git')
ただし、「内部」または「プライベート」と表示されているパッケージがある場合、なんらかの認証がなければパッケージをインストールできません。現時点では、URLを介して認証を渡す方法がわかりません。誰かがGitLabからパッケージをダウンロードした経験がありますか?
#* After changing the 'modeltable' project to Private status
devtools::install_git('https://mini-me2.lerner.ccf.org/nutterb/modeltable.git')
Preparing installation of modeltable using the Git-URL: https://mini-me2.lerner.ccf.org/nutterb/modeltable.git
'/usr/bin/git'clone --depth 1 --no-hardlinks https://mini-me2.lerner.ccf.org/nutterb/modeltable.git /tmp/Rtmp5aj1cU/file24493dc03a32
Error: There seems to be a problem retrieving this Git-URL.
devtools
とgetPass
パッケージの組み合わせを試すことができます。
https://github.com/wrathematics/getPass
devtools::install_git(
"https://gitlab.com/foo/bar.git",
credentials = git2r::cred_user_pass("uname", getPass::getPass())
)
ここで、uname
はGitlab
ユーザー名です。
私はSSHルートに行くことを強くお勧めします、そしてそれは以下のために機能します。 SSHに飛躍するのは簡単で、特にRとRStudioの場合は簡単でした。以下の例ではWindowsを使用しています。実際に使用するコードからの編集はすべて大文字です。
creds = git2r::cred_ssh_key("C:\\Users\\MYSELF\\.ssh\\id_rsa.pub",
"C:\\Users\\MYSELF\\.ssh\\id_rsa")
devtools::install_git("[email protected]:GITLABGROUP/PACKAGE.git",
credentials = creds)
2つの簡単な追加コメント:
Ciroのコメントによると、
https://user:[email protected]/user/repo.git
トリックを行います。したがって、完全な呼び出しは
devtools::install_git('https://user:[email protected]/nutterb/modeltable.git')
この方法でユーザー名とパスワードを渡すことには、セキュリティ上の懸念があることに注意してください。私はそれらの懸念について完全に教育されていません。私の会社のネットワークで認証され、GitLabサーバーを見ることさえできるので、これは私の目的には十分に機能します。