Message ID | 20210711170703.651081-1-felipe.contreras@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | test: pull: add test for disabling pull.ff=only | expand |
On 12/07/21 00.07, Felipe Contreras wrote: > The advice clearly says it should be possible to override pull.ff=only > with --rebase: > > You can also pass --rebase, --no-rebase, or --ff-only on the command > line to override the configured default per invocation. > > Since the intended behavior of `git pull` is very easily forgotten let's > add a test to make sure it isn't. > Is pull.ff=only only do fast-forward merge when pulling? > +test_expect_success 'pull allows non-fast-forward with "only" in pull.ff if --rebase' ' > + git reset --hard c1 && > + test_config pull.ff only && > + git pull --rebase . c3 > +' > + Better say 'pull allows non-fast-forward (using --rebase) regardless of pull.ff=only config'
Bagas Sanjaya wrote: > On 12/07/21 00.07, Felipe Contreras wrote: > > The advice clearly says it should be possible to override pull.ff=only > > with --rebase: > > > > You can also pass --rebase, --no-rebase, or --ff-only on the command > > line to override the configured default per invocation. > > > > Since the intended behavior of `git pull` is very easily forgotten let's > > add a test to make sure it isn't. > > > > Is pull.ff=only only do fast-forward merge when pulling? Only when the pull is a merge pull (although there are proposals to change that). > > +test_expect_success 'pull allows non-fast-forward with "only" in pull.ff if --rebase' ' > > + git reset --hard c1 && > > + test_config pull.ff only && > > + git pull --rebase . c3 > > +' > > + > > Better say 'pull allows non-fast-forward (using --rebase) regardless of > pull.ff=only config' In English parentheses are used for stuff that isn't essential (i.e. optional). If you remove what is inside the parenthesis the title loses the most important part, so I don't think that's an improvement. Cheers.
diff --git a/t/t7601-merge-pull-config.sh b/t/t7601-merge-pull-config.sh index 52e8ccc933..72164593fd 100755 --- a/t/t7601-merge-pull-config.sh +++ b/t/t7601-merge-pull-config.sh @@ -183,6 +183,12 @@ test_expect_success 'pull prevents non-fast-forward with "only" in pull.ff' ' test_must_fail git pull . c3 ' +test_expect_success 'pull allows non-fast-forward with "only" in pull.ff if --rebase' ' + git reset --hard c1 && + test_config pull.ff only && + git pull --rebase . c3 +' + test_expect_success 'merge c1 with c2 (ours in pull.twohead)' ' git reset --hard c1 && git config pull.twohead ours &&
The advice clearly says it should be possible to override pull.ff=only with --rebase: You can also pass --rebase, --no-rebase, or --ff-only on the command line to override the configured default per invocation. Since the intended behavior of `git pull` is very easily forgotten let's add a test to make sure it isn't. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> --- t/t7601-merge-pull-config.sh | 6 ++++++ 1 file changed, 6 insertions(+)