2016-09-06 5 views
2

私は最後の2つのコミットをgitでスカッシュしようとしています。 この例では、私は開発と呼ばれる別のブランチからブランチを作成していると私は3つの新しいコミットをして、これはgitのログです:GIT - コミットすることができません:致命的:1つのリビジョンが必要です

commit a350cf6071db1bcaa2a37710a61508565a34d917 
Author: tibbus 
Date: Tue Sep 6 11:49:19 2016 +0200 

    commit message #3 

commit 8c0384b995831e5a62b423721434005788b2eb63 
Author: tibbus 
Date: Tue Sep 6 11:49:01 2016 +0200 

    commit message #2 

commit 6eab9df2df71196d62dab3c6caed9cd0ac6aeee5 
Author: tibbus 
Date: Tue Sep 6 11:48:41 2016 +0200 

    commit message #1 
... 
more commits from develop... 

だから私はコミット#3をコミットし、単一のものに#2をコミットスカッシュしたいです、私が試してみてください。私が行う場合

fatal: Needed a single revision 
invalid upstream HEAD˜2 

git rebase -i HEAD˜2 

と私はこのエラーを取得する

git rebase -i develop 

うまく動作しますが、私は3つのコミットすべてをスカッシュしたくありません。私は最新の2だけします。このエラーは十分なコミットがないときに表示されますが、確かに¯_ )_ /¯

+0

「git log --oneline --graph --decorate'」の出力を投稿してください。 – Leon

+0

こんにちは@レオン、ありがとうございます。私はjsfiddleにコマンドログを保存して、読みやすくしています:https://jsfiddle.net/083kvr6b/2/ – tibbus

答えて

1

あなたは間違った~シンボルを使用しています。あなたのコマンドの〜はthe small tilde ASCII以外の文字ですが、普通の ASCIIシンボルが必要です。どこかからコピーしましたか、キーボードの~˜を挿入しましたか?

コピー&私の答えからのコマンドを貼り付け、それが問題なく動作するはずです:

git rebase -i HEAD~2 
1

はあなたtilda~)を確認してください。別のASCIIと思われるので、gitコマンドラインは改訂を要求しています。

関連する問題