0

gitに問題があります。コンテンツを含むファイル .gitignore があります。

uploads
.htaccess
robots.txt
etc..

やった:

 git commit -a -m "GIT TEST"

そして、git は私のファイルを送信しました: .htaccess とその他 (.gitignore 内)。なんで ?このコミットをキャンセルするにはどうすればよいですか? (commit はレポ "git push origin master" にプッシュされます)

4

1 に答える 1

0

gitに追加される前にファイルがすでに追跡されていた場合、そのファイルが現在.gitignore存在しているという理由だけで自動的に無視されることはありません.gitignore。あなたがする必要があります

git rm --cached .htaccess
git commit

gitそのファイルの追跡を停止するように指示します。次のコミットとプッシュサイクルでそれを行うことができますが、ファイルを削除するために最新のコミットを本当に修正する必要がある場合は、次のようにすることができます。

git rm --cached .htaccess
git commit --amend
git push -f

(ただし、他の人がすでに「悪い」コミットをフェッチしている可能性がある場合は注意してください。これにより、他の人が悲しみを感じることになります)。問題のコミットが最新のものではないが、履歴がはるかに古い場合は、git filter-branch(正確な構文の例を見つけるのは非常に簡単です)の後に同じことを実行できますgit push -fが、同じ注意事項が適用されます。

于 2013-01-15T16:24:27.043 に答える