私はファイル.gitignore_global
を作成し、これを私のgit installディレクトリに入れました。Git global ignore not working
git config --global core.excludesfile ~/.gitignore
無視ファイルのルールが自分のコミットに適用されません。
ファイル.gitignore
の名前を変更してプロジェクトルートに配置すると、その規則が適用されます。
ここで何が間違っていますか?
私はファイル.gitignore_global
を作成し、これを私のgit installディレクトリに入れました。Git global ignore not working
git config --global core.excludesfile ~/.gitignore
無視ファイルのルールが自分のコミットに適用されません。
ファイル.gitignore
の名前を変更してプロジェクトルートに配置すると、その規則が適用されます。
ここで何が間違っていますか?
たぶん、あなたは何をする必要があります。
git config --global core.excludesfile ~/.gitignore_global
そして、いくつかのコーヒーを持っています。
申し訳ありませんが、私はそれを意味しています。私がコピーしたのは、何がうまくいっているかを目の当たりにすることでした。 – user880954
コーヒーや歯には真です。 .gitignore_globalはあなたの$ HOMEにありますか? git installディレクトリにインストールしたとしますか? – CharlesB
それはまだここで動作しない理由は何ですか?私はスキップしたい.7zファイルを持っています。私はこれらのルールを追加しました:https://gist.github.com/octocat/9257657;私がファイルを変更した後も、それはまだ.gitでバージョン化されています:( –
ファイルはホームディレクトリにある必要があります。ウィンドウでは、通常は以下を意味します。 C:\ documents and settings \ [user]。 Linux上で
それは次のとおりです。 /ホーム/ [ユーザー]
注:git1.7.12 (August 2012)を開始:
の値:$ HOME/.configファイルに
core.attributesfile
デフォルト/ git/attributesとcore.excludesfile
はデフォルトで$HOME/.config/git/ignore
になります。
あなたは$HOME/.config/git/attributes
ファイルを作成するのであれば、あなたもあなたcore.excludesfile
設定を設定する必要はありません。
私はこのようにそれを定義したときことがわかった:それは動作しませんでした
git config --global core.excludesfile $HOME/.config/git/ignore
。 $ HOME変数を使用しないように変更するには、次のようにします。
git config --global core.excludesfile ~/.config/git/ignore
すぐに作業が開始されました。これが他の人に役立つことを願っています
はFYI:
$ git --version
git version 1.7.10.2 (Apple Git-33)
私もこれを観察しました。私はドキュメントをスキミングしましたが、何も見つかりませんでした:.gitignore(ディレクトリごと)と.git/info/excludeに加えて、gitはこのファイルに、追跡されないファイルのパターンを探します。 "〜/"は$ HOMEの値に、 "〜user /"は指定されたユーザーのホームディレクトリに展開されます。 – rliu
は、私はこの上でチップだろうと思いました。グローバル無視ファイルが動作しないように見える別の理由があります。それは私が以前の答えでカバーされたとは思わないものです。それは非常に明白です - もちろん - それは見逃しがちです。
これは、は、新しいファイルを無視するということです。ファイルがすでにgitによって追跡されている場合、もちろんgitはそれを無視しません!したがって、gitignore
またはexclude
ファイルのどのパターンでも、は適用されません。
これは意味があります。どうしてgitはすでに追跡しているファイルへの変更を無視したいのですか?ファイルを無視する場合は、まずgitにそれを追跡しないように指示してから、gitはマニュアルに記載されているように無視しなければなりません。ファイルを展開する方法については、see this answerを参照してください。
これはすべて私に尋ねます。追跡されたファイルの変更を無視することは可能ですか?再び、gitは配信します。この答え。 Git: Ignore tracked filesは私たちに指令を与える:
git update-index --assume-unchanged file
最後に、ここでのgitは無視デバッグのいくつかの追加情報です。
gitignore(5) Manual Pageは教えてくれる:ユーザーはGitがすべての状況で無視したい
パターン(例えば、バックアップまたは任意のユーザーのエディタによって生成された一時ファイル)は、一般的にコアで指定されたファイルの中に入ります。ユーザーの〜/ .gitconfigファイルを除外します。デフォルト値は$ XDG_CONFIG_HOME/git/ignoreです。 $ XDG_CONFIG_HOMEが設定されていないか空でない場合は、代わりに$ HOME/.config/git/ignoreが使用されます。
これは前述の~/.gitignore_global
を置き換えたものです。
次に、これは本当に便利です.1.8.2の時点で、優れたデバッグツールが用意されています。これは、そのgitのが正常例えば、あなたのパターンを無視していることを確認するために、新しいcheck-ignore
フラグを使用する方法を示し
Git Learns to Ignore Better - New in 1.8.2
:見て
git check-ignore bin/a.dll --verbose
'git update-index --assume-unchanged file'はまさに私が探していたものでした。ありがとう! – Jai
.gitignore(_global)が行にスペースをリードすることができ動作していない表示された理由を追跡するために別のハード。このファイルは先頭のスペースを許していません。だから、あなたのファイルの各行に空白行がなければ、それがないかどうか確認してください。わかるにはしばらく時間がかかりました。
ちょうど私の2セントを追加してください。
私は最初に 'git config core.excludefiles'を--globalなしで間違った値で呼び出していたため、このプロパティがローカルに保存されていたため、この問題が発生しました。ローカルプロパティが正しい値を持つグローバルなものを隠しているように見えますが、それを完全に無視しています。
私は最近、ミスを犯し、 git config core.excludesfile tags
次のコマンドを実行します。私はそうすることをを修正するために、これは現在のリポジトリ内のローカルファイルへのexcludesfileのパスを変更し、この設定が.git/config
の下にローカル設定ファイルに書き込まれています.git/config
ファイルを開き、excludesfile tags
という行を削除したところ、すべて正常に戻りました。
私は同じ問題を抱えていました(Windowsの場合)。私は私の~/.gitconfig
ファイルをチェックすることになったし、私のexcludesfile
に設定していることが分かっ:
excludesfile = C:\\Users\\myUserName\\Documents\\gitignore_global.txt
それがされている必要があります:
excludesfile = C:\\Users\\myUserName\\.gitignore_global
私はそれを変更した後、すべてはそれが必要として働いていました。
グローバルなgit ignoreが動作しない別の理由は、パス内の見えない文字です。
私はそれが運良くが見えるようになったクロームのアドレスバーにgit-check-ignoreから警告メッセージを貼り付けたときに、これは私の問題だったが分かった:
(それは上に見えませんでした)長いウサギの穴のデバッグ...)
@ジャロッド '〜/ .gitignore_global'は、彼が私の答えを受け入れたが、OPが意味するもので、あなたの編集はグーではありませんd – CharlesB