2016-12-23 7 views
0

"コミットのためにステージングされていない変更:"の項目を削除するにはどうすればいいですか?私はこの点で他の多くのチケットを見つけましたが、実際に私と一緒に働いた人はいませんでした。Gitで私のunstagedな変更をすべて破棄する方法

どうしましたか?

開発ブランチをチェックアウトしました。しかし、いくつかのローカルファイルを編集した後、これらのファイルはUnstagedリストに残っています。 stashcleanrm、さらにはreset --hardできません。問題は、私が起源/ミッドブランチをチェックしてそこからリセットしようとすることで自分のローカルな変更を取り除こうとしたときに起こった。

私は今、時代遅れのブランチを持っています。たびに私は:

git fetch origin 
git reset --hard origin/mybranch 

があります。

modified : *.xlsx 

これらのローカル変更を強制的に削除することができます。唯一の解決策はクリーンなリビジョンをもう一度クローンすることですが、私は最初に修正しようとしています。

+0

'git status'の出力は何ですか? – akuhn

+0

@akuhn修正:* 修正:* 修正:私はすでにmybranchで、原点であることを試みた gitのステータス – Sam

答えて

0

この問題は.xlsxファイルでのみ発生しました。これは、Excelで開くたびに隠しファイル$ .xlsxが作成されるためです。他のオフィスのドキュメントファイルでも同じ問題が発生しています。変更を追加した場合:

git add . 

隠しファイル$ *。xlsxを盲目的に追加します。だから私はファイルを閉じた後、自動的にシステムから削除されましたが、gitからは削除されています。すでに追加されているため、gitはそれを見て、無視することはできません。

私はExcelファイルを開いて追加してから、問題なくコミットしてくれました。その後、他のファイルと同じように削除することができます。

2

試してみてください。

git checkout . 

''すべてのファイルを元のバージョンと置き換えたいことを示すために使用されます。

git checkout -- <filename> 

それとも、あなたはすべての変更を削除したい場合、あなたはこれがあるべき.

git checkout -- . 

を使用することができます上演ない

+0

を:* ローカルで修正されたファイルはすべて、まだ私がヒットするたびに記載されています。うまくいきませんでした。 gitは、私が元の/ mybranchですでに最新であることを伝え続けますが、まだステージングされていない変更をリストしています。 私は試しました:git checkout - 。 – Sam

0

の変更は、次のコマンドを使用して「削除」することができます「コミットのためにステージングされていない変更」の項目を削除するには十分です。

+0

それはunstaged変更を削除しないか、このケースで私は理由を知らない何らかの効果があります。最新のフェッチ元に​​一致するようにbrahc -hardをリセットすると、私はgitを理解できません。それはmybranchが起源/ mybranchとの最新であることを私に伝えます..しかし、私はgitを追加するときにまだunstaged変更を記載します。 --dry-run ...これらの変更のすべてがまだそこにあり、ステージングされ、コミットされる準備ができています。 – Sam

0

変更したファイルが追跡されたディレクトリ内にあり、それらをプロジェクトから完全に除外する場合は、それらをリポジトリの.gitignoreファイルに追加する必要があります。

関連する問題