2012-08-27 11 views
16

私はカスタムRパッケージリポジトリを作成しており、CRANアーカイブ構造を複製して、古いバージョンのパッケージがsrc/contrib/Archive/packageName/ディレクトリに格納されるようにしたいと考えています。 install_version機能をdevtools(ソースhere)に使用したいのですが、その機能はすべてのパッケージバージョンをsrc/contrib/にする代わりに、CRANのようなアーカイブ構造に依存しています。Rパッケージリポジトリ管理ツールはありますか?

このディレクトリ構造の作成やその他の関連タスク(Archive.rdsファイルの更新など)を容易にするRパッケージリポジトリ管理ツールはありますか?

私は私の地元のMac上としてのLinuxサーバー上で同じinstall.packages()またはinstall_version()コードを使用できるように、管理ツールは(つまり私が持っていないリポジトリ側のパッケージtypeロジックを処理した場合にもいいだろうMacにローカルにインストールする場合はtype="both"またはtype="source"を使用してください)。

+3

R-develメーリングリストでこの質問をすることができます(まだ行っていない場合)。 CRANのメンテナ、すなわちKurtから直接でも可能です。 –

+0

ありがとう、私はした。すぐに回答を投稿します。 –

答えて

4

短い回答: 本物ではありません。

長い答え: 1が自分のレポを管理するために使用できるツールがいくつかありますが、コヒーレント既製の生態系はまだありません。

CRANの管理者は、CRANリポジトリを管理するために複数のスクリプトを保持していますが、それらがどのように連携しているか、パッケージインデックスの更新、パッケージチェックの実行、またはディレクトリ構造の管理に必要な部分は不明です。

tools::write_PACKAGES機能を使用してパッケージインデックスを更新できますが、パッケージを追加、更新、またはリポジトリから削除するたびに更新する必要があります。

M.eik Michalkeが自動的に与えられたリポジトリを更新する機能を備えていroxyPackagepackageを、作成している、それをインストールし、開発者なども最近アーカイブ構造がarchive_structureとCRANのそれを模倣持っている能力を追加しました関数。欠点は、パッケージがCRANにないことと、おそらくdevtoolsと統合されている方が良いでしょう。それはまた新しいものであり、まだ幅広い使用の準備ができていません。

最後に、特定のリポジトリを監視し、ファイルが変更された場合にパッケージインデックスを更新する小さなRuby scriptを作成しました。ただし、これは私の特定の組織で機能するように作られており、外部からの使用のためにリファクタリングする必要があります。もし誰かがそれに興味を持っていればもっと一般化することができます。