git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Git fast-export with import marks file omits merge commits

From
ICIsaac Chou <isaac.chou@microfocus.com>
Date
Apr 16, 2018, 19:58 UTC
Message-ID
<1D42A4F860DBEF4C91D0E09C5CDE20097EC178E8@prvxmb04.microfocus.com>
Hello,
I came across a change of behavior with Git version 2.15 and later where the fast-export command would omit the merge commits.  The same use case works correctly with Git version 2.14 and older.  Here is the detail of the use case:

0> git --version git version 2.16.2.windows.1

1> git init Initialized empty Git repository in c:/./.git/

2> echo 1111 >> file.txt
3> git add file.txt

4> git commit -m "first commit" [master (root-commit) 711d4d5] first commit 1 file changed, 1 insertion(+) create mode 100644 file.txt

5> git checkout -b test Switched to a new branch 'test'

6> echo 2222 >> file.txt
7> git add file.txt

8> git commit -m "commit on test branch" [test 76d231c] commit on test branch 1 file changed, 1 insertion(+)

9> git checkout master Switched to branch 'master'

10> echo 3333 >> file.txt
11> git add file.txt

12> git commit -m "commit on master branch" [master 61c55fd] commit on master branch 1 file changed, 1 insertion(+)

13> git merge test Auto-merging file.txt CONFLICT (content): Merge conflict in file.txt Automatic merge failed; fix conflicts and then commit the result.

14> notepad file.txt
15> git add file.txt

16> git commit -m "merged with test branch" [master 1442e0e] merged with test branch

17> git log
commit 1442e0ee728c831e74550329e39d27d4188b4422 (HEAD -> master)
Merge: 61c55fd 76d231c
Author: isaac <...>
Date:   Mon Apr 16 15:08:39 2018 -0400
    merged with test branch
commit 61c55fdb883fc403e63c91b49bc11bdade62b3e8
Author: isaac <...>
Date:   Mon Apr 16 15:07:41 2018 -0400
    commit on master branch
commit 76d231cdb12eb84f45abdebede06a56f912613d3 (test)
Author: isaac <...>
Date:   Mon Apr 16 15:07:07 2018 -0400
    commit on test branch
commit 711d4d5781df41924421f8629af040e7c91a8d2e
Author: isaac <...>
Date:   Mon Apr 16 15:06:07 2018 -0400
    first commit
18> echo :1 711d4d5781df41924421f8629af040e7c91a8d2e > git-marks

19> cat git-marks :1 711d4d5781df41924421f8629af040e7c91a8d2e

20> git fast-export --use-done-feature --import-marks=git-marks refs/heads/master -- feature done blob mark :2 data 12 1111 2222

commit refs/heads/master mark :3 author isaac <...> 1523905627 -0400 committer isaac <...> 1523905627 -0400 data 22 commit on test branch from :1 M 100644 :2 file.txt

blob mark :4 data 12 1111 3333

commit refs/heads/master mark :5 author isaac <...> 1523905661 -0400 committer isaac <...> 1523905661 -0400 data 24 commit on master branch from :1 M 100644 :4 file.txt

done
Thanks,
Isaac
Message 1 of 1 in “Git fast-export with import marks file omits merge commits”
  1. Isaac ChouApr 16, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.