[解決済み] どの gitignore ルールが私のファイルを無視しているのか説明してください。
質問
あるファイルが git によって無視される理由を知る方法はありますか?
.gitignore
ファイルが無視される原因となっている)?
このような場合(あるいはもっと複雑なシナリオで、何百ものフォルダと何十もの
.gitignore
ファイルを作成します。
/
-.gitignore
-folder/
-.gitignore
-subfolder/
-.gitignore
-file.txt
を実行すると
git add folder/subfolder/file.txt
git はそれを無視すると文句を言うかもしれません。
The following paths are ignored by one of your .gitignore files:
folder/subfolder/file.txt
Use -f if you really want to add them.
を知る方法はありますか?
.gitignore
には、このファイルを無視するルールがあり、そのルールも表示されますか?みたいな感じです。
The following paths are ignored by your folder/.gitignore file (line 12: *.txt)
folder/subfolder/file.txt
Use -f if you really want to add them.
あるいは、ただ
$ git why-is-ignored folder/subfolder/file.txt
folder/.gitignore:12:*.txt
解決方法は?
git check-ignore -v filename
参照 マニュアルページ をご覧ください。
オリジナルの回答が続きます。
git は現在、このようなものを提供していません。 しかし、あなたの質問を見た後、少しググってみたところ、2009年当時は この機能はリクエストされ、部分的に実装されました。 . このスレッドを読んだ後、私はそれを適切に行うことはそれほど大きな作業ではないことに気づいたので、私はパッチに着手し、一両日中に完成させたいと思っています。 準備ができ次第、この回答を更新します。
UPDATE
いやあ、予想以上に大変でしたね。 の中身は
git
の exclude 処理はかなり不可解です。 とにかく、ここにあるのは
アン
ほとんど
終了した一連のコミット
今日のアップストリームに適用される
master
ブランチです。 テストスイートは99%完成していますが、まだ
--stdin
オプションはまだです。 今週末には何とかして、gitメーリングリストにパッチを投稿したいと思います。
とりあえず、テストが可能な方からのテストは大歓迎です。
私の
git
フォーク
をチェックアウトしてください。
check-ignore
ブランチを作成し、通常通りコンパイルしてください。
アップデイト2。 完成しました 最新バージョンは上記の通りgithubにあり、私は パッチシリーズをgitメーリングリストに投稿する ピアレビューのため。 彼らがどう考えるか見てみましょう ...
UPDATE 3:
さらに数ヶ月に及ぶハッキング、パッチレビュー、議論、待機の後、私は次のように言うことができることを嬉しく思っています。
この機能は、現在、git の
master
ブランチ
次のリリース(1.8.2、2013年3月8日予定)で利用可能になる予定です。 以下は
check-ignore
マニュアルページ
. ふぅ、思ったよりずっと大変だった!?
UPDATE 4: この回答がどのように発展し、この機能が実装されるに至ったのか、その全貌に興味がある方は、以下をご覧ください。 GitMinutesポッドキャスト第32話 .
関連
-
[解決済み】なぜ「git commit」は私の変更を保存しないのですか?
-
[解決済み】ローカルGitブランチとそのリモートブランチを比較する方法
-
[解決済み] Git が追跡したファイルを .gitignore に登録したまま「忘れる」ようにするにはどうしたらいいですか?
-
[解決済み] ファイルをリセットしたり、特定のリビジョンに戻したりするにはどうすればよいですか?
-
[解決済み] .gitignoreと.gitkeepの違いは何ですか?
-
[解決済み] .gitignoreで一部のファイル以外を無視するようにする
-
[解決済み] .gitignoreはGitによって無視されます。
-
[解決済み] git は修正された変更のみを追加し、追跡されていないファイルは無視する
-
[解決済み] .gitignore で無視される特定のファイルを表示する Git コマンド
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】以下の追跡されていないワーキングツリーファイルは、マージによって上書きされますが、私は気にしません。
-
git revert 複数コミット
-
git revert + git rebase 一度に複数のコミット_本然233的博客程式员息信网_git revert Multiple
-
gitコミット発生 ! [リモート拒否] master -> master (pre-receive hook declined) 解決策
-
[解決済み] 複数のコミットをチェリーピックする方法
-
[解決済み] VSTS Git Fetch Failed with exit code: 128
-
[解決済み] ブラウンアウトの一環として、パスワード認証が一時的に無効になっています。代わりに個人用アクセストークンを使用してください[重複]。
-
[解決済み] [Solved] 複数の `.gitignore` は嫌われる?
-
[解決済み] .gitignoreの除外ルールは実際にどのように機能するのですか?
-
[解決済み] Git が gitignore にないファイルを無視する