49

https://github.com/github/gitignore.gitignoreに便利なファイル のコレクションがあります。すべての無視ファイルには、Java.gitignore、vim.gitignore などの拡張子が付いています。これらのファイルを作業ディレクトリに直接配置すると、機能しません。.gitignore

単一のファイルを作成.gitignoreし、構成ファイルをそれにマージする必要がありますか?

したがって、ファイルを使用する場合、--global .gitignore構成は単一のファイルを指しているようです。たとえば.gitignore、Global/ ディレクトリ内のすべてのファイルを適用したい場合、それらを手動で 1 つのファイルにマージする必要がありますか? その場合、このマージされたファイルを「公式」コレクションで最新の状態に保つのは余分な作業です。

繰り返し.gitignoreますが、異なるディレクトリで異なるファイルを使用できることは認めていますが、それは私が望んでいるものではありません。.gitignore1つのディレクトリに複数のファイルを適用したい。

4

1 に答える 1

53

明確にするために:プロジェクトのgitignoreファイルが呼び出されます.gitignore


バックグラウンド:

A.gitignoreは、それが存在するディレクトリを指します。これは、.git リポジトリを持つディレクトリの最上位または下位、つまり「.git/」ディレクトリです。

任意のサブディレクトリに複数の.gitignoreファイルが存在する可能性がありますが、ベスト プラクティスは、特定のプロジェクト ルートに1 つ .gitignoreを配置し、そのファイルが必要に応じてサブディレクトリを参照するようにすることです。 gitignore ファイルを調べて、無視されているものを見つけます。パターンをファイル名として使用できることを考えると、かなりトリッキーになる可能性があります!

また、マシン上のすべてのプロジェクトに適用されるグローバル ファイルの使用を避けることをお勧めしますが、新しいプロジェクトで使用するためにテンプレートを保持することもできます。ここでの主な考慮事項は、あなたの意志は他の開発者 (存在する場合もしない場合もある) とは異なるため、結果は未定であるということです。これに対する例外の 1 つの例は、自分のマシンで開くどのプロジェクトにも必要のない IDE ファイルにグローバル ファイルを使用することです。そのため、.idea/ ファイル (rubyMine) のエントリでグローバルを使用します。.gitignore.gitignore.gitignore.gitigore


リストされているテンプレートの目的は、通常、特定のファイルのコードを特定の言語で記述することです。このため、多くの場合、言語に基づくテンプレートで十分です。

コードベースに複数の言語がある場合は.gitignore、それらの言語の複数の を組み合わせる必要があります。これは、次のようなさまざまな方法で実行できます。

cat .gitignore1 .gitignore2 > .gitignore # if .gitignore doesn't exist yet
cat .gitignore1 >> .gitignore # Add to it if it already exists
paste .gitignore1 .gitignore # Add to it if it already exists

ホット(っぽい)プレスオフ(2014年夏):

Gitignorer は、.gitignore ファイルの作成を支援するシンプルなユーティリティです。特定の (指定された) .gitignore テンプレートを、除外する共通ファイルとともに github.com/github/gitignore から取得し、それらを一緒にマッシュして、現在のディレクトリの .gitignore に保存します。

使用例:

gitignorer create c java python

Gitignorer は現在、https://aur.archlinux.org/packages/gitignorer/ の AUR とhttps://github.com/zachlatta/gitignorerの GitHub で利用できます。


于 2012-04-23T03:26:36.717 に答える