From: Derek G. <fri...@gm...> - 2013-01-03 21:15:29
|
Oh - I also don't like "--no-ff" for merging. It essentially "squashes" a bunch of commits into one... which I think is a bad idea. Git is all about working with tons of patches... and being able to swap them in and out of branches. If you squash them together you lose a _ton_ of flexibility. To update master from devel I would do something like the following (in a real libMesh repo clone): git checkout devel git rebase master git checkout master git merge devel The rebasing of devel on master will deal with any cherry-picked "hotfixes" that might have been pulled over to master from devel earlier and restack all the new patches from devel. At that point the merge of devel into master is guaranteed to be a "fast forward" without any problems. Derek On Thu, Jan 3, 2013 at 2:08 PM, Derek Gaston <fri...@gm...> wrote: > On Thu, Jan 3, 2013 at 1:58 PM, John Peterson <jwp...@gm...>wrote: > >> I looked at this diagram for a while, and I like it, other than I >> probably wouldn't make such a big distinction between the yellow and >> green dots... >> >> Feature (pink) branches periodically merge into develop, every once in >> a while develop is merged into master as a "tagged" release. >> > > Right - I view the "pink" branches as our own branches in our own libMesh > forks. The "develop" branch will hopefully be the "devel" branch in the > libMesh repo we've been talking about. > > I wouldn't mess around with a "hotfix" branch at all. If a particular > bugfix needs to get merged from "devel" to master then I would just go to > the master branch and use "cherry-pick" to pull over a patch from devel > like so: > > git cherry-pick 3ea9861 > > Where "3ea9861" is the beginning of the hash for the patch in "devel" that > you want to pull over to master. That will take a patch from "devel" and > stack it on top of master. Git is smart enough so that when you do the > (eventual) merge from devel to master it will recognize that the same patch > is there twice and do the right thing. > > Derek > |