バージョン管理について(pins・renv)

バージョン管理って大切なんですね。チームで動くときは特に。

 

バージョン管理したいのは、パっと思いつくものだと、

- Rそのもの

- ライブラリ

- スクリプト

- 元データ

 

これらのバージョンを管理しておけば、

- 過去のある時点の結果を再現

- 引継ぎの後任者が結果を再現

などが可能でとても便利。

※Dockerとかいう技術もあるらしいけど、上述のバージョン管理をすべてできるのかな?

 

んじゃ、どうバージョン管理するかという話

- Rそのもの → `sessionInfo`

- ライブラリ → `renv`

- スクリプト  → `git commit id`

- 元データ → `pins` or `.sql`

が良いのかな??

 

- `renv` の仕様がちょいまだ分からん( `pacman` とちょい相性が悪そう?)

- `git commit id` を一括出力・管理できるライブラリはある?

- `pins` の仕様がちょいまだわからん

- `.sql`

    - DL実行時の日付日時の打刻つきの `.sql`

    - `.sql` をgithubに保存

    - `git commit id` でバージョン管理

- `DLable`

    - データそのものをリモートリポジトリに保存

    - DL_url、DL_script、DL_date、DL_dataの4点セット

- `non_DLable`

    - リモートリポジトリのurlを `pins` で管理?

 

renvによるパッケージ管理/renv_version_control - Speaker Deck

pins 0.4.0: Versioning - RStudio

データ分析者のためのRStudio活用術 / pyrintegration - Speaker Deck