Gitflow: git flow start / finishは、コミットまたはプッシュするものがない場合、ステージングされていない変更を報告します

作成日 2010年11月23日  ·  21コメント  ·  ソース: nvie/gitflow

git flowの開始または終了を実行すると、gitflowが次のように報告することがあります。

致命的:作業ツリーにはステージングされていない変更が含まれています。 中絶。

ただし、コミットするものはなく、リモートとの間でプルまたはプッシュするものもありません。 作業コピーは最新です。

これらの手順を実行するために、「readme.txt」ファイルへの変更の誤ったコミットを作成することでこの問題を回避する必要がありましたが、これは面倒です。 git flow start / finishコマンドをブロックしているものを確認するために使用できる別のコマンドはありますか?

最も参考になるコメント

ターミナルで次のコマンドを実行するだけです。

git status
git add .
git status
git commit -m 'Commit typechanges'

それは私にとってうまくいきます;)

全てのコメント21件

この問題の原因となるコマンドのリプレイを提供してください。 そうすれば、この問題の原因を分析するのが確実に簡単になります。 できるだけ短くするようにしてください。

これは、ファイルを削除してコミットしない場合に発生する可能性があります。 ステージングされたファイルgit diff --cached 、コミットします。

git diff --cached出力はありません。 何かアイデア、問題を解決する方法は?

私は同じ問題を抱えています。 何か決断はありますか?

最も簡単な解決策は、変更をコミットし、リポジトリを削除して、クローンを再作成することです。

どうもありがとう

ほとんどの場合、バグはEclipseベースのIDEのeGitで発生していますが、 git bashまたはtortoise gitこのエラーは表示されません。

git reset --hard origin / masterはあなたの命を救うことができます!

しかし、実行するのは非常に奇妙です。
gitステータス
コマンドを繰り返すと、私の環境では修正として機能します。:-)

@georgezlatevがintellijIdea13を使用して。git -flowがタイムリーにコミットを登録していないようです;-)

これは修正されますか?

このエラーは、サブディレクトリからgit flowfinishを実行しようとしたときにのみ発生します。 これは、リポジトリのルートディレクトリから機能します。
乾杯みんな

このスレッドが古いことを理解してください、しかし私は他の人がまだこのエラーを受け取り、このスレッドを見つけると確信しています。 SourceTreeを使用していますが、このエラーが発生していました。 機能ブランチを右クリックしてから、develop / originにマージすることでこれを修正することができました。 コミットした変更をプッシュして、機能ブランチを削除することができました。

最良のオプションは、スクリプトが機能を終了しようとする前にgitステータスを実行する場合です。

if output = $(git status --porcelain)&& [-z "$ output"]; それから
# 終了
そうしないと
#通常のエラー
fi

これは、リリース/ホットフィックスブランチを終了するときにも問題になりますか?

はい。 Intellj-GitflowプラグインとBashを使用します。
bashで「gitstatus」を実行して機能/リリース/ホットフィックスを終了すると、機能します。

SourceTreeで、変更がないことをSourceTreeが示したときに、このエラーが発生していました(現在の機能を終了しようとしていました)。 ターミナルに切り替えてgitステータスを実行するまで、コミットされていないファイルへのタイプ変更が表示されました(SourceTreeに表示されなかったため)。 プロジェクトで行った変更は、2つの.frameworkファイルの置き換えでした。そのため、これらの.frameworkファイルに対する多くの内部変更は、その外観によって発生しました。 最終的に、SourceTreeからのエラーは実際には正しかったのですが、SourceTreeが、機能ブランチを終了するのを妨げていたこの変更を表示できなかったことに失望しています:(

git statusが、ステージングされていない変更が何であるかを確認するのに役立つことを確認します

git reset --hardはそのような場合に私のために働きます

git reset --git statusはコミットされていない変更を表示しなかったので、私にとっては大変な作業でした。

ターミナルで次のコマンドを実行するだけです。

git status
git add .
git status
git commit -m 'Commit typechanges'

それは私にとってうまくいきます;)

私も同じ問題を抱えていました。 機能ブランチをコミットできましたが、「機能終了」を実行できませんでした。 ルートディレクトリに切り替えて、git flow featurefinishを実行しました、そしてそれはうまくいきました。

このページは役に立ちましたか?
0 / 5 - 0 評価