views:

75

answers:

1

i have an open source ruby project on github, where my master branch represents what has been released, and my dev branch represents what will be released next.

the master branch is ~ 80+ commits behind the dev branch, and the dev branch contains fairly significant architectural changes.

a contributor has sent me a pull request for changes that were made based on the master branch. i want to pull those changes into my dev branch without having to re-write them or do a ton of merge conflict resolutions (which would essentially be rewriting the changes anyway).

what are the best practices for handling a situation like this?

+2  A: 

One solution would be:
"Any patches that doesn't apply in a fast-forward manner is rejected."

You could ask your contributor to fetch your dev branch and to replay (rebase) his/her relevant commits on top of the fetched dev branch.
Once those changes works in that dev environment, then he/she can make a new pull request.

That way, you report the extra work on the contributor, and once this refactoring is done, you can enjoy the contribution by applying it simply on top of your current dev.

VonC
yeah, that seems like the best way over-all. thanks.
Derick Bailey