3

ファイルをgit rm <file>ローカルで削除したり、バージョン管理から削除したり、リポジトリで削除したりできます。git rm --cached <file>ほぼ同じことを行いますが、ファイルをローカルの作業コピーに保持します。

ファイル/フォルダーをバージョン管理から削除して (その変更は無視されます)、リポジトリに保持して、誰かがレポを複製した場合、ファイルもそこにあるが、単純なadd&で変更できないようにすることは可能commitですか?

4

3 に答える 3

1

短い答えはノーです。この.gitignore機能は、そもそもファイルが追跡されるのを防ぐだけです。つまり、ファイルが初めてリポジトリに入るのを防ぎます。ただし、ファイルが追跡されると、永久に追跡されます。そのファイルに対するすべての変更が追跡されます。

一般的な解決策は 2 つあります。(1) そのファイルをインデックスに追加することは避けてください。これは単なるポリシーの問題です。(2) そのような無視されたすべてのファイルを のようなアーカイブに配置しますUnzipMeRightAfterCloning.zip。これはリポジトリにアクセスするための余分な手順ですが、少なくともターゲット ファイルがコミットされることはありません。

于 2013-04-03T15:22:18.640 に答える
0

既に Git の下にあるファイルは、次を使用して無視できます

git update-index --assume-unchanged filename 

そして unigtore git update-index --no-assume-unchanged filename

しかし、いくつかの興味深い機能もあります。git - コミットされたファイルを無視してブランチを切り替える

于 2013-04-03T14:56:07.230 に答える