As I'm not a git expert, I would appreciate any help from the community in figuring out what is the best way to merge asf/vpc branch into asf/master.
Couple of ways I can think of: 1) git checkout master; git merge -s recursive -Xignore-space-change vpc Puts all commits from the vpc that are differnt from master, to the master branch. Pros: * no tree rebase happens * easier to revert individual commits if they cause any issues * Have 0 conflicts after the merge is done (just tested on my local branch) * Very close to vpc branch, so reduces the chances for regression bugs (vpc branch was tested) Cons: * harder to track down all VPC commits as they've been happening for a couple of months, and appear in the git log on the date they were originally submitted. 2) Do interactive rebase on master from vpc and squash all the commits into one git checkout master; git rebase -i asf/vpc Pros: * Easier to see all VPC changes as they come as a part of a single commit Cons: * Requires rebase which leads to lots of conflicts. * Not sure if there is an option to revert an individual commit happened as a part of squashed commit. I personally prefer way 1) as it doesn't lead to conflicts + leaves less chances for regression bugs as the asf/master structure becomes very similar to the structure of asf/vpc branch, and this branch was tested. But let me know if anybody sees any downsides of doing the merge this way and can suggest a better way. Thank you, Alena.