Hi, I hope this is the right place for this answer. If not, plaese point me to a more appropriate place. A project "P2" [2] forked from another project "P1" [1] quite some time ago, both repos share a common history up to some point. After this point, P2 cherry-picked commits from P1, but did not merge P1 any longer. Unfortunately the author of P2 did not use any mechanism (e.g. an intermediate branch) to allow tracking up to which point P1 commits are considered. Thus the graph looks like this: P1: --A--B--C--X--X--D--E--X--X--X--F-- P2: --Y--Y--A--B--C--D--E--Y--F-- I would like to add edges (say: another branch and merge-commits) to the graph to make it look something like this: P1: --A--B--C--X--X--D--E--X--X--X--F-- \ \ \ o-----------o-----------o---new branch / / / P2: --Y--Y--A--B--C-------D--E----Y------F-- Of course the new branch should contain the same code as the respective P2-commit. So at the end, the new branch couls become the P2's new "master" branch. How can I achieve this (which commands to use)? Is there some way to automate this? (e.g. based on `git cherry`) Thanks in advance for any answer [1] https://github.com/siacs/Conversations [2] https://github.com/kriztan/Pix-Art-Messenger -- Regards Hartmut Goebel | Hartmut Goebel | h.goebel@xxxxxxxxxxxxxxxxxxx | | www.crazy-compilers.com | compilers which you thought are impossible |