2013-11-22 17 views
150

私は1つのコミットをリモートにプッシュしましたが、コミットメッセージが正しくないことが分かりました。私はコミットメッセージを変更したいですが、AFAIKは不可能です。だから、私は正しいメッセージで空のコミットを作成することにしました:空のコミットを押すことに何らかの欠点や影響がありますか?この空のコミットのために私が将来直面する可能性のある問題はありますか?空のコミットをリモートにプッシュ

+9

これは私には役に立ちましたが、コミットすることなくプッシュフックを強制しようとしました!ありがとう! –

+0

これと同様の質問をチェックするhttp://stackoverflow.com/questions/6218199/git-commit-with-no-commit-message – Montaro

答えて

16

空のコミットを実行することには何らかの欠点や影響がありますか?

非常に混乱しているだけでなく、なぜマスターにはコンテンツがないコミットがたくさんあるのでしょうか。

あなたはリモートにプッシュすることをコミットする変更できますが、のSHA1は、ソー​​スツリーを変更され、恒久的に変更されます(基本的には、ID番号です)コミット - あなたは当時git push -fを行う必要があるだろう遠隔に

47

あなたはひどい結果に直面することはありません。ちょうど歴史がちょっと混乱します。

あなた変更は、これは誰もがその間にそのレポを引っ張っている場合、この人物が起こっていることを意味し、あなたとのリモート歴史を上書きします

git commit --amend 
git push -f 

しかしを行うことで、メッセージをコミットできあなたに非常に怒っている...

レポにアクセスしている唯一の人であれば、これを行うだけです。

+3

はい、なぜ私は空のコミットを好むのですか? – mrutyunjay

+4

@mrutyunjay他の人がレポを引っ張ってくる可能性がある場合、そう、私はそれがより良い選択肢だと思う。 –

+0

ありがとう..! +1 – mrutyunjay

9

空のコミットから他のコミットを明確に参照している限り、それはうまくいくはずです。何かのように:

Commit message errata for [commit sha1] 

[new commit message] 

他の人が指摘しているように、これは修正されたコミットを強制的に実行する方が望ましいことがよくあります。

11

コミットを空にしてもしなくても、最終的なgitフックがトリガされます。これは何もすることもできないし、世界に打撃を与えることもあります。

+2

これは過小評価です。はい、空のコミットは、プッシュされたコミットを修正するよりも優れていますが、フックがある場合は、副作用がないと見なすことはできません。 – wintermute92

関連する問題