ホームページ  >  記事  >  開発ツール  >  ベンダー ディレクトリをバージョン管理に追加する必要がありますか?

ベンダー ディレクトリをバージョン管理に追加する必要がありますか?

藏色散人
藏色散人転載
2019-09-20 13:29:343196ブラウズ

ベンダー ディレクトリをバージョン管理に追加する必要がありますか?

#コンポーザーの使用法チュートリアル列では、次のようなコンポーザーのさまざまな問題の解決策を提供します。

ベンダー ディレクトリをバージョン管理に追加する必要がありますか?

通常はこれを行わないでください。ベンダー フォルダー (または依存パッケージがインストールされている他の場所) を .gitignore/svn:ignore/....

に追加する必要があります。

最良の方法は、すべての開発者が

Composer コマンドを使用して依存関係をインストールできるようにすることです。同様に、ビルド サーバー、デプロイメント ツールなどには、実行中の Composer をコマンドの一部として含める必要があります。プロジェクトブート。

コードをリポジトリに送信したくなる場合もありますが、次の問題が簡単に発生する可能性があります。

## コードを更新すると、バージョン管理リポジトリのコードが大きくなり、デフが肥大化します。

# プロジェクトのすべての依存関係は、バージョン管理にコピーされます。

# 一部のシナリオでは、Composer によって git 経由でインストールされた git リポジトリはサブモジュールとして扱われます。これらは実際にはサブモジュールではないため、これには問題があり、問題が発生します。

どうしてもこれを行う必要があると思われる場合は、次のオプションがあります:

1. 依存パッケージのバージョンは、タグ付けされたリリース (非開発) バージョンに制限されます。この場合、zip 形式でのみインストールするため、git サブモジュールの問題を回避できます。

2. --prefer-dist を使用するか、preferred-install をプロジェクトの構成に dist に設定します。

3. 各依存関係をインストールした後、.git ディレクトリを削除してからインストールします。リポジトリに。 rm -rfvendor/**/.git (ZSH の場合) または、vendor/ -type d -name ".git" -exec rm -rf {} \; (Bash の場合) を検索します。ただし、これは、次回 Composer update を実行するときに、これらの依存関係を削除する必要があることを意味します。 /

4. .gitignore ルールを追加します (/vendor/**/.git) を使用すると、vendor の下の .git ディレクトリを無視できます。このアプローチの利点は、コンポーザーを更新するためにこれらの依存関係を削除する必要がないことです。

以上がベンダー ディレクトリをバージョン管理に追加する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。