Git 内のファイルをグローバルに無視する
Git で作業しているときに、不要なファイルを無視したり、誤ってリモートリポジトリにコミットしたりする必要がある場合があります。リモートリポジトリにチェックインしたくないファイルを無視するように Git を構成できます。
Git がそれらのファイルを追跡せず、そのローカルコンピューターからの将来のコミットのためにそれらを無視することを保証します。一部の開発者は、クライアント用に開発したすべてのプロジェクトで同じ無視されたファイルを繰り返しコピーして貼り付けることに悩まされます。
Git には、この種の状況に対応するために、IDE 固有のすべてのファイルと OS ファイルをグローバルな .gitignore
ファイルに保持するという究極のソリューションがあります。プロジェクトの gitignore
は、将来、プロジェクト固有のファイルを保持するために使用されます。
Git 内のファイルをグローバルに無視する
これらのコマンドを将来的に継続的またはグローバルに使用するために、ローカルコンピューター上のすべての Git リポジトリー内のファイルを無視するためのルールを指定する .gitignore
ファイルを作成します。
ファイル*~/.gitignore_global
を開発し、同じリポジトリへの将来のプッシュに関連するいくつかのルールを指定します。この状況では、globalcore.excludesfile
構成ファイルを昇格させて、このグローバル無視ファイルを見つける必要があります。
以下は、.gitignore
ファイルを作成する手順です。
この最初のステップでは、ローカルコンピューターのパス C:\Users\{username}
にファイル .gitignore
を作成します(例:C:\Users\John
)。プロジェクトがリモートリポジトリに次にプッシュするときにファイルにアクセスできるようにします。
その後、3つの異なる方法で .gitignore
パスを調整します。その助けを借りて、将来のプッシュでファイルを無視するようにグローバル Git に指示します。
以下の例を使用して、これら 3つの方法を 1つずつ説明します。
Windows の Git Bash を使用して .gitignore
パスを調整する
まず、Windows git bash を開き、次のコマンドを記述します。
git config --global core.excludesFile '~/.gitignore'
Windows CMD を使用して .gitignore
パスを調整する
このようにして、Windows CMD を開き、このコマンドを記述します。
git config --global core.excludesFile "%USERPROFILE%\.gitignore"
Windows PowerShell を使用して .gitignore
パスを調整する
Windows PowerShell を開き、次のコマンドを書き込みます。
git config --global core.excludesFile "$Env:USERPROFILE\.gitignore"
これで、.gitignore
グローバルファイルを簡単に設定して、将来の生活を楽にすることができます。
config
ファイルを確認する
ご存知のとおり、すべてのシステムのセットアップは同じではないため、macOS、Windows、または Windows PowerShell の config
ファイルを検証して、それが正しいかどうかを確認するには、次のコマンドを実行します。
git config --global core.excludesfile
出力はファイルへのフルパスになります。
%USERPROFILE%
が表示された場合は、問題があります。
$HOME/.gitignore_global
または%USERPROFILE%\.gitignore
が表示された場合は、問題が発生しています。Windows では、%USERPROFILE%
変数の使用を続行できない場合は、コマンドプロンプトで次のコマンドを実行し、予想される回答も確認します。
git config - global core.excludesfile ~/.gitignore_global
さらに、そのフォルダに移動して、非表示の .gitconfig
ファイルを開きます。excludesfile
パスを手動で編集して、.gitignore_global
の場所に戻ります。
以下の例では、次のようになります。
[core]excludesfile = C:\Users\adammcelhaney\.gitignore_global
Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.
LinkedIn