1. ホーム
  2. git

[解決済み] Gitでファイルの変更を追跡しない、無視する方法とは?

2022-03-15 04:55:24

質問

あるプロジェクトをクローンしました。 .csproj ファイルです。私は、ローカルの csproj が Git で追跡される (あるいはパッチを作成するときに呼び出される) ようになりましたが、プロジェクトで必要なものであることは明らかです。

を追加しました。 *.csproj に、私のLOCAL .gitignore しかし、そのファイルはすでにレポにあります。

git statusと打つと、私の変更点が表示されます。 csproj これは、私が追跡したり、パッチのために提出することに興味がないものです。

これらのファイルの "tracking of" を私の個人リポジトリから削除して(ただし、私が使用できるようにソースには残して)、ステータス(またはパッチの作成)を行うときに変更を表示しないようにするには、どうすればよいですか?

この状況を処理する正しい/正統的な方法はありますか?

どのように解決するのですか?

呼び出すだけ git rm --cached は、リビジョン管理から削除したい各ファイルで問題ないはずです。ローカルの無視パターンが正しい限り、これらのファイルが git status の出力に含まれることはないでしょう。

この方法はリポジトリからファイルを削除するので、すべての開発者はそのファイルのローカルな(リビジョン管理されていない)コピーを維持する必要があることに注意してください。

これらのファイルの変更を git が検出できないようにするには、次のコマンドも使用する必要があります。

git update-index --assume-unchanged [path]

おそらくやりたいこと (以下より ライアン・テイラーの回答 )

<ブロッククオート
  1. これは、ファイルやフォルダーの独立したバージョンが必要であることを git に伝えるためのものです。たとえば、ファイルやフォルダを上書きしたくない (あるいは削除したくない) 場合などです。 本番/ステージング設定ファイル

git update-index --skip-worktree <path-name>

回答の全文はこちらのURLにあります。 http://source.kohlerville.com/2009/02/untrack-files-in-git/