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.

Reply via email to