私の.gitignore
ファイルはその../../.aws/
ディレクトリを無視するように指示します。
$ cat .gitignore
coredumps/
../../.aws/
.*.sw*
*bak
*log
残念ながら、このディレクティブは無視されました。
$ git status | head -6
# On branch main
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# ../../.aws/
# ../../.bash_history
遺言が出力から除外さ.gitignore
れるようにmyをどのように変更する必要がありますか?../../.aws/
git status
答え1
この.gitignore
ファイルは、ディレクトリとそのサブディレクトリのファイルに適用されます。親ディレクトリや他の子ディレクトリには適用されません。あなたが無視したいのは、ファイルがある場所の上に../../.aws/
2つのディレクトリがあるということです。.gitignore
この問題を解決するいくつかの方法は次のとおりです。
.gitignore
ファイルを適切なディレクトリに配置します。.gitignore
:そのディレクトリまたはすぐに親ディレクトリにファイルを配置できる場合は、.aws/
これを行うことができます。この.gitignore
ファイルは、ディレクトリを無視するエントリを追加します.aws/
。.gitignore
グローバルファイルの使用:すべてのGitリポジトリでこれらのファイルを無視するには、グローバル.gitignore
ファイルを作成します。git config --global core.excludesfile '~/.gitignore_global'
.aws/
その後、この~/.gitignore_global
ファイルに追加できます。
.aws/
以前にGitによって追跡されたファイルがディレクトリにある場合は、Gitがそのファイルを無視し始める前に、リポジトリからそのファイルを削除する必要があります。次のコマンドを使用すると、ファイルのローカルコピーを削除せずにこれを実行できます。
git rm --cached -r .aws/
このコマンドを実行すると、Gitはディレクトリの変更の追跡を停止します.aws/
。