0

私はまだGitに苦労しています。私はgitローカルリポジトリを持っています。以下のようになります。

project
  - .git
     - .gitignore
  - child [directory]
  - some files

.gitignore:

target/
logs/

.DS_Store

そして、私はしました。

git rm --cached .
git add .

.gitignore のファイルとディレクトリは追跡されないだろうと思っていましたが、うまくいきませんでした。ファイル内の何も無視されませんでした。

これを修正するにはどうすればよいですか?

あなたの答えをいただければ幸いです。

4

1 に答える 1

2

git でファイルを無視するように設定できる場所が 3 つあります (.git/.gitignoreそれらの 1 つではありません)。優先度の高いものから順に、次のとおりです。

  • .gitignoreパスと同じディレクトリ、または任意の親ディレクトリにあります。.gitignores は、プロジェクトの残りの部分と共にコミットされ、バージョン管理されます。通常、リポジトリのルートに 1 つ存在しますが、ディレクトリごとに最大 1 つ持つことができます。このファイルには、無視するプロジェクト固有のもの (ビルド出力など) が含まれている必要があります。
  • と呼ばれるリポジトリごとのファイル.git/info/exclude。このファイルはバージョン管理されておらず、そのリポジトリにのみ影響します。
  • 構成変数で指定されたグローバル ファイルcore.excludesfile。通常は、 のような名前のユーザーのホーム ディレクトリに配置されますが、任意の~/.gitignore_global名前を付けることができます。このファイルもバージョン管理されていません。すべての git リポジトリに適用されます。このファイルには、無視するプロジェクトに依存しないもの (エディター ファイル、オペレーティング システム ファイル) が含まれている必要があります。

あなたの場合、.gitignoreプロジェクトのルートに次のものを作成する必要があります。

target/
logs/

.DS_Store次に、ルールのグローバル gitignore を作成します~/.gitignore_global

.DS_Store

実行git config --global core.excludesfile ~/.gitignore_globalしてそのファイルを有効にします。

詳細については、この役立つ GitHub 記事gitignore(5)を参照してください。

于 2013-07-18T04:35:10.477 に答える