Hi, On Sat, Jan 9, 2021 at 5:29 PM Arnaud Morin <arnaud.morin@xxxxxxxxx> wrote: > I am struggling with a rev-list command, hope someone can give me a > clue on what is going on. [...] > However, when using git rev-list to perform a symmetric difference, git > is giving me a commit ID: > $ git rev-list --left-right --cherry-pick B...master > >dbf86d8aafc897a25a3093139b4237a62395041e It looks like a bug. You might want to check the following test file and let us know if a similar case is tested in it, or not: t6007-rev-list-cherry-pick-file.sh If not, it might be a good idea to add one using 'test_expect_failure' instead of 'test_expect_success' to document the failure. Thanks, Christian. > Note that this commit is not empty > $ git show dbf86d8aafc897a25a3093139b4237a62395041e --stat > commit dbf86d8aafc897a25a3093139b4237a62395041e (origin/master, master) > Author: Arnaud Morin <hidden@mail> > Date: Sat Jan 9 10:30:10 2021 +0100 > > remove line2 and add line4 (bis) > > a | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > So, from git rev-list perspective, there is a diff. > > After digging a little bit, the thing is that this commit is having the > following patch-id: > $ git show dbf86d8aafc897a25a3093139b4237a62395041e | git patch-id > 20f4ace68e80a751b07d78a27c94e83d6c5314bc dbf86d8aafc897a25a3093139b4237a62395041e > > Which is also already existing in an other commit: > $ for c in $(git rev-list HEAD) ; do git show $c |git patch-id |grep 20f4ace68e80a751b07d78a27c94e83d6c5314bc; done > 20f4ace68e80a751b07d78a27c94e83d6c5314bc dbf86d8aafc897a25a3093139b4237a62395041e > 20f4ace68e80a751b07d78a27c94e83d6c5314bc 8969d3fa9159730fd3b23199873bfb26e3d20027 > > So, is it normal that rev-list is not able to figure out that a commit > is existing in both branch when 2 commits share the same patch-id? > > Is there any way to prevent rev-list from showing this commit? > > Thanks for your help. > > > PS. I have uploaded my test repo here: > https://gitlab.com/arnaudmorin/git-rev-list > > > -- > Arnaud Morin >