{"thread":{"id":"66143","subject":"git rebase silently ignores nonexistent -X (--strategy-option) but git merge does not","startedAt":"2026-08-08T18:23:46Z","lastAt":"2026-08-08T18:23:46Z","messageCount":1,"participants":["zrzut01@poczta.fm"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"550104","messageId":"ytaphxxbfvopjtsyyukv@gflc","threadId":"66143","inReplyTo":null,"subject":"git rebase silently ignores nonexistent -X (--strategy-option) but git merge does not","fromName":"","fromEmail":"zrzut01@poczta.fm","sentAt":"2026-08-08T18:23:38Z","receivedAt":"2026-08-08T18:23:46Z","isPatch":false,"body":"Hello,\n\nWhen provide nonexistent <option> to -X when doing rebase it silently\nignores it. Same scenario when executing merge results in error. Such\nsituation can lead to false positive for end user who will be confident\nthat whole operation succeeded.\n\nFedora Linux 44, 7.1.7-200.fc44.x86_64\n\n$ git --version\ngit version 2.55.0\n\nExample scenario:\n\n$ git clone https://github.com/schacon/simplegit-progit.git\nCloning into 'simplegit-progit'...\nremote: Enumerating objects: 13, done.\nremote: Total 13 (delta 0), reused 0 (delta 0), pack-reused 13 (from 1)\nReceiving objects: 100% (13/13), done.\nResolving deltas: 100% (3/3), done.\n\n$ cd simplegit-progit\n\n$ git branch -c iss1\n\n$ git checkout iss1\n\n$ vi Rakefile\n\n$ git diff\ndiff --git a/Rakefile b/Rakefile\nindex 8f94139..8080252 100644\n--- a/Rakefile\n+++ b/Rakefile\n@@ -5,8 +5,8 @@ require 'rake/gempackagetask'\n spec = Gem::Specification.new do |s|\n     s.platform  =   Gem::Platform::RUBY\n     s.name      =   \"simplegit\"\n-    s.version   =   \"0.1.1\"\n-    s.author    =   \"Scott Chacon\"\n+    s.version   =   \"0.1.1\"■■■■■\n+    s.author    =   \"Scott Chacon Big\"\n     s.email     =   \"schacon@gmail.com\"\n     s.summary   =   \"A simple gem for using Git in Ruby code.\"\n     s.files     =   FileList['lib/**/*'].to_a\n\n--------------\n// ■ - space character\n--------------\n\n$ git commit -am 'iss1: author name change'\n[iss1 fa40d71] iss1: author name change\n 1 file changed, 2 insertions(+), 2 deletions(-)\n\n$ git checkout master\nSwitched to branch 'master'\n\n$ vi Rakefile\n\n$ git diff\ndiff --git a/Rakefile b/Rakefile\nindex 8f94139..e458853 100644\n--- a/Rakefile\n+++ b/Rakefile\n@@ -5,7 +5,7 @@ require 'rake/gempackagetask'\n spec = Gem::Specification.new do |s|\n     s.platform  =   Gem::Platform::RUBY\n     s.name      =   \"simplegit\"\n-    s.version   =   \"0.1.1\"\n+    s.version   =   \"0.1.2\"\n     s.author    =   \"Scott Chacon\"\n     s.email     =   \"schacon@gmail.com\"\n     s.summary   =   \"A simple gem for using Git in Ruby code.\"\n\n$ git commit -am 'master: version update'\n[master f2b3ef3] master: version update\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\n$ git checkout iss1\nSwitched to branch 'iss1'\n\n$ git rebase master\nAuto-merging Rakefile\nCONFLICT (content): Merge conflict in Rakefile\nerror: could not apply fa40d71... iss1: author name change\nhint: Resolve all conflicts manually, mark them as resolved with\nhint: \"git add/rm &lt;conflicted_files>\", then run \"git\nrebase --continue\".\nhint: You can instead skip this commit: run \"git rebase --skip\".\nhint: To abort and get back to the state before \"git rebase\", run\n\"git rebase --abort\".\nhint: Disable this message with \"git config set advice.mergeConflict\nfalse\"\nCould not apply fa40d71... # iss1: author name change\n\n$ git rebase --abort\n\n$ git rebase -X sillyoption master\nAuto-merging Rakefile\nCONFLICT (content): Merge conflict in Rakefile\nerror: could not apply fa40d71... iss1: author name change\nhint: Resolve all conflicts manually, mark them as resolved with\nhint: \"git add/rm &lt;conflicted_files>\", then run \"git\nrebase --continue\".\nhint: You can instead skip this commit: run \"git rebase --skip\".\nhint: To abort and get back to the state before \"git rebase\", run\n\"git rebase --abort\".\nhint: Disable this message with \"git config set advice.mergeConflict\nfalse\"\nCould not apply fa40d71... # iss1: author name change\n\n"}]}