NOTE: this is my first patch I'm submitting through git send-email. Please let me know if there is some convention that I'm missing. thank you in advance :) A bug in pull.c causes merge and rebase functions to ignore rebase.autostash if it is only set in the config. There are a couple of different scenarios that we need to be mindful of: --autostash passed in through command line $ git pull --autostash merge/rebase should get --autostashed passed through --rebase passed in, rebase.autostash set in config $ git config rebase.autostash true $ git pull --rebase merge/rebase should get --autostash from config --no-autostash passed in $ git pull --no-autostash --no-autostash should be passed into merge/rebase rebase.autostash set but --rebase not used $ git config rebase.autostash true $ git pull --autostash should not be passed into merge but not rebase This change adjusts variable names to make it more clear which autostash setting it is modifying, and ensures --autostash is passed into the merge/rebase where appropriate. John Cai (1): builtin/pull.c: use config value of autostash builtin/pull.c | 15 ++++++------ t/t5521-pull-options.sh | 51 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+), 7 deletions(-) -- 2.34.1