Setup Version : git version 2.12.1.windows.1 OS Version : Microsoft Windows [Version 10.0.14393] Options $ cat /etc/install-options.txt Path Option: Cmd SSH Option: OpenSSH CURL Option: OpenSSL CRLF Option: CRLFCommitAsIs Bash Terminal Option: MinTTY Performance Tweaks FSCache: Enabled Use Credential Manager: Enabled Enable Symlinks: Disabled Git Command : git merge --no-commit origin/workingBranch . What did you expect to occur after running these commands? merge but no commit. . What actually happened instead? commited Reference URL : https://github.com/techcap/nf-interpreter Details I tried to merge from MergeTest to master. After checking out master, I run below command. C:\work\nf-interpreter-techcap>git branch MergeTest TemplateModification UpdateBuildInstruction * master C:\work\nf-interpreter-techcap>git merge --no-commit origin/MergeTest Updating 197ad33..028f9f5 Fast-forward mergeTest.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 mergeTest.txt C:\work\nf-interpreter-techcap>git status On branch master Your branch is ahead of 'origin/master' by 1 commit. (use "git push" to publish your local commits) nothing to commit, working tree clean If I add --no-ff option, it works properly. I think --no-commit option should be worked without --no-ff. https://github.com/git-for-windows/git/issues/1102#issuecomment-289206961