Vagrant を使用して、チームに共通の開発環境を提供したいと考えています。ホストは完全に異なります。
- OS X を使用するもの、Linux を使用するもの、Windows を使用するものがあります。
- VMware を使用するものもあれば、VirtualBox を使用するものもあります。
VM 内で Linux を実行します。
これまでのところ、すべて問題ありません。
ここで、各開発者が選択した IDE を使用できるようにするという考えに基づいて、ホストと VM の間でソース コードを共有する同期フォルダーを導入しました。これは基本的に同様に機能します...シンボリックリンクを除いて.
ソース コード内には実際にいくつかのシンボリック リンクがあります。これは VM 内の Linux 内では問題ではありませんが、ホストとしての Windows では問題が発生します。唯一できないことは、シンボリック リンクを取り除くことです。そのため、これに対処する別の方法が必要です。
これまで、いくつかのオプションを試してきました。
- Vagrant の問題で言及されている回避策があります。残念ながら、これは VirtualBox のみであり、VMware を実行しているユーザーには役立ちません。これまでのところ、使用するプロバイダーに応じてVagrantfileでコードを実行する方法は見つかりませんでした。
- 標準の共有フォルダーを使用する代わりに、rsyncタイプを使用してみました。これは Windows では機能しますが、OS X では多数のエラー
symlink has no referent(シンボリック リンクごとに 1 つのエラー) でクラッシュします。 - NFSについて考えましたが、Windows をホストとして使用しない場合にのみ機能します。
- SMBについても検討しましたが、これもホストとして Windows でのみ機能します。
マルチプラットフォームのホストと共有フォルダー内のシンボリック リンクで問題を経験したのは、この地球上で私たちだけであるとは思えません。
この問題をどのように解決すれば、シンボリック リンクを保持しながら、異なるホスト オペレーティング システムを使用できるようになりますか?