すでにGitリポジトリにコミットされているファイル(config.php)がありますが、ローカルで無視します。つまり、そのファイルをリポジトリに残しておき、Gitに変更を強制的に無視させます。
ファイルを.gitignoreに入れましたが、まだ変更済みとマークされており、Gitは何かをコミットするたびに変更をコミットしようとしています。どのような考え、私は何が欠けているか間違っていますか?
すでにGitリポジトリにコミットされているファイル(config.php)がありますが、ローカルで無視します。つまり、そのファイルをリポジトリに残しておき、Gitに変更を強制的に無視させます。
ファイルを.gitignoreに入れましたが、まだ変更済みとマークされており、Gitは何かをコミットするたびに変更をコミットしようとしています。どのような考え、私は何が欠けているか間違っていますか?
回答:
ファイルが.gitignoreにあるにもかかわらず、ステータスに引き続き表示される場合は、まだ追跡されていないことを確認してください。
git rm --cached config.php
ローカルで無視するだけの場合は、gitステータスで無視することもできます。
git update-index --assume-unchanged config.php
update-index --assume-unchanged
リモートブランチを強制する方法はありますか?ファイルをリポジトリに保持したいのですが、他の人が変更できず、ステージングできません。
ファイルがすでにリポジトリにあり、したがってインデックス/ステージング領域にある場合、.gitignoreを更新してもその状況は変わりません-コミットされ続けます。
インデックス/ステージング領域からファイルを削除するには、を使用しますgit rm <file>
。
status
ます。それらの変更について。* .logファイルを無視したい場合は、以前に追跡されたファイルと現在追跡されていないファイルの両方について、両方のファイルgit rm *.log
と.gitignoreファイルを更新する必要があります。一部のログファイルが実際に重要かどうかを最初に確認してください...特別なログファイルは忘れがちです;-)
ファイルが.gitignoreにリストされたら、変更することはできません。
したがって、1つのコミットでリストからファイルを削除し、次の変更をコミットし、3番目のコミットで無視リストにファイルを再度追加できます。
私が通常行うことは、ファイルを2つに分割することです。1つは許可され、もう1つは変更できます。2番目のファイルが存在する場合はそれを含め、開発者は無視されたファイルの構成をオプションで変更できます。
.gitignore
Sと私は常にこれらのファイルを変更しています!これは初めてです。誰かがファイルをに追加すると.gitignore
変更できないと言っています。