That seems to handle my concern :-) Erik 25. juli 2014 13:16 skrev "Rajani Karuturi" <rajani.karut...@citrix.com> følgende:
> branches will be deleted after the release or hotfix if you use the > git-flow commands. > > This would be the flow for a hotfix: > 1. branch off from the release tag on master. in this case it would be > release/4.4.0 > 2. commit the fixes in hotfix/4.4.1 > 3. do the release > 4. merge to develop > 5. merge to master and update tags > 6. delete hotfix branch > > But, I agree that there can be a problem when we wish to do 4.4.2 if we > delete the hotfix branch > > may be we should use git-flow support instead of hotfix which doesn’t > delete the branch > http://stackoverflow.com/a/16866118/201514 > > ~Rajani > > > > On 25-Jul-2014, at 12:31 pm, Daan Hoogland <daan.hoogl...@gmail.com> > wrote: > > > Rightful question Erik, > > > > Rajani mentioned that release branches will be deleted. This will only > > happen once the release is no longer supported. Any hotfix branch will > > still have to merged on that (and master possibly) until we stop > > supporting that branch. > > > > On the other hand you can branch from any commit. > > > > btw 4.4.1 is a bad example of you as we will still maintain that > > without gitflow. But it is valid for for instance 4.5.2 or 5.0.1. > > > > On Fri, Jul 25, 2014 at 8:04 AM, Erik Weber <terbol...@gmail.com> wrote: > >> This is out of my git league, but how do you handle minor versions that > way? > >> > >> Assuming 4.8.0 is the latest stable release and HEAD on master. > >> > >> Then you want to release 4.4.1. > >> > >> First of all can you develop bugfixes for 4.4 along the way, when both > >> develop and master HEAD might be hugely different? > >> > >> Second, can you commit behind HEAD? You don't want the 4.4.1 release > >> instead of 4.8.0 to be HEAD > >> > >> Someone might have good solutions to this, but if not I would propose to > >> keep the release branches for future bugfixes. > >> > >> Erik > >> 25. juli 2014 06:02 skrev "Rajani Karuturi" <rajani.karut...@citrix.com > > > >> følgende: > >> > >>> On 24-Jul-2014, at 10:25 pm, Mike Tutkowski < > mike.tutkow...@solidfire.com> > >>> wrote: > >>> > >>>> I believe I agree with these steps. > >>>> > >>>> A couple questions: > >>>> > >>>> Is 'master' simply always going to be equal to what's the most recent > >>>> version of the code that's in production? > >>> > >>> I think so. master will always be at the latest release and all the > >>> previous releases properly tagged. The release branches would be > deleted > >>> once release is done. > >>> > >>>> > >>>> Also, would 'develop' be for 4.6 code then and 4.5 code would go > directly > >>>> into RELEASE-4.5? > >>>> > >>> > >>> Yes. 4.6 work should be done on develop branch and any 4.5 bug fixes > >>> should be done on the 4.5 branch. > >>> > >>> > >>> > >>> ~Rajani > >>> > >>> > >>>> > >>>> On Thu, Jul 24, 2014 at 12:39 AM, Rajani Karuturi < > >>>> rajani.karut...@citrix.com> wrote: > >>>> > >>>>> > >>>>> Hi Daan, > >>>>> here is what i propose: > >>>>> > >>>>> 1. rename 'master' to 'develop’ > >>>>> 2. branch a new 'master' from '4.4’ > >>>>> 3. branch 'RELEASE-4.5' from the develop > >>>>> 4. merge 'RELEASE-4.5' to master once the release voting is done. > >>>>> > >>>>> RELEASE-4.6 branch should be off develop as all the feature branches > >>> would > >>>>> be merged there before freeze for 4.6 and would be merged to master > when > >>>>> the release is voted. > >>>>> > >>>>> The other question I have is in the step:4. how are we going to > manage > >>>>> fixes to 4.5 post branch cut? ( assuming no features as the freeze > is > >>> done) > >>>>> > >>>>> ~Rajani > >>>>> > >>>>> > >>>>> > >>>>> On 24-Jul-2014, at 11:52 am, Daan Hoogland <daan.hoogl...@gmail.com> > >>>>> wrote: > >>>>> > >>>>>> Mike, Rajani, > >>>>>> > >>>>>> Sebastien's point was that the current 4.4 is the closest we have > to a > >>>>>> releasable branch. I don't mind enting on master but it will require > >>>>>> more fixing. In general all of this will require some RM work of all > >>>>>> committers. Please ammend my little proposal if you will. > >>>>>> > >>>>>> On Thu, Jul 24, 2014 at 6:27 AM, Rajani Karuturi > >>>>>> <rajani.karut...@citrix.com> wrote: > >>>>>>> I agree with mike. I think we should start 4.5 from where master is > >>> now > >>>>>>> Also create a develop branch from master and continue future work > for > >>>>> 4.6 there. > >>>>>>> > >>>>>>> I am not clear on how the release branches are going to be > maintained. > >>>>>>> Are we saying we would create 4.5-RELEASE branch which is > essentially > >>>>> same as our current -FORWARD branch and continue cherry-picking? > >>>>>>> > >>>>>>> I would prefer merges to cherry-picks. > >>>>>>> Also, I think we should allow committers to commit to the RELEASE > >>>>> branch after discussing about it on dev@ and have RM closely monitor > >>> them. > >>>>>>> Any commit intended for 4.5 RELEASE should be checked in after > >>>>> discussion in the 4.5 Release branch and then merged to develop > branch. > >>>>>>> > >>>>>>> > >>>>>>> ~Rajani > >>>>>>> > >>>>>>> > >>>>>>> > >>>>>>> On 24-Jul-2014, at 1:14 am, Mike Tutkowski < > >>>>> mike.tutkow...@solidfire.com> wrote: > >>>>>>> > >>>>>>>> Per earlier e-mails, I don't think we want to start 4.5 where 4.4 > >>> left > >>>>> off > >>>>>>>> and then merge features from develop into 4.5. > >>>>>>>> > >>>>>>>> Why don't we instead start 4.5 where master is now with the > >>> assumption > >>>>> that > >>>>>>>> since we are past Feature Freeze for 4.5 that master is stable > >>> enough? > >>>>>>>> > >>>>>>>> > >>>>>>>> On Wed, Jul 23, 2014 at 12:56 PM, Daan Hoogland < > >>>>> daan.hoogl...@gmail.com> > >>>>>>>> wrote: > >>>>>>>> > >>>>>>>>> so to start formulate a proposal: > >>>>>>>>> > >>>>>>>>> all work shall be done in a new branch (it is advisable to prefix > >>> your > >>>>>>>>> branches with your id) > >>>>>>>>> when working, features will be cherry-picked/merged into the > release > >>>>>>>>> branch they are for and next into master. > >>>>>>>>> hotfixes will be done in <branchname>-hotfixes > >>>>>>>>> > >>>>>>>>> as transition we will > >>>>>>>>> > >>>>>>>>> rename 'master' to 'develop' > >>>>>>>>> branch a new 'master' from '4.4' > >>>>>>>>> branch '4.5' from the new 'master' > >>>>>>>>> merge any features from the new 'develop' to '4.5' and 'master' > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> On Wed, Jul 23, 2014 at 6:39 PM, Sebastien Goasguen < > >>> run...@gmail.com > >>>>>> > >>>>>>>>> wrote: > >>>>>>>>>> > >>>>>>>>>> On Jul 23, 2014, at 12:30 PM, Sebastien Goasguen < > run...@gmail.com > >>>> > >>>>>>>>> wrote: > >>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> On Jul 23, 2014, at 12:21 PM, Nate Gordon < > >>> nate.gor...@appcore.com> > >>>>>>>>> wrote: > >>>>>>>>>>> > >>>>>>>>>>>> Let me ask the question, why have master be develop and a > release > >>>>>>>>> branch be > >>>>>>>>>>>> "master"? If we are going to follow gitflow, why not just > stick > >>>>> with > >>>>>>>>> the > >>>>>>>>>>>> norm? If master is the development branch, it might not be > >>> stable. > >>>>> I > >>>>>>>>> think > >>>>>>>>>>>> the goal here is that we have an obvious stable branch. Anyone > >>>>> could > >>>>>>>>> come > >>>>>>>>>>>> check out master and have the latest useable. > >>>>>>>>>>> > >>>>>>>>>>> I am in favor of following the norm, so ideally master should > be > >>> our > >>>>>>>>> stable branch (agreed). > >>>>>>>>>>> > >>>>>>>>>>> The issue is with the transition. > >>>>>>>>>>> > >>>>>>>>>>> Our latest releasable product is the 4.4 branch (4.4.0 tag), so > >>>>> ideally > >>>>>>>>> we could start a stable branch of this tag and build up bug fix > >>>>> releases > >>>>>>>>> all the way to 4.5 from there. > >>>>>>>>>>> > >>>>>>>>>>> But all features for 4.5 are already in master. > >>>>>>>>>>> > >>>>>>>>>>> So if we create a 'develop' branch of master and stabilize > >>> 'master' > >>>>>>>>> then develop is now started from a stable tag (4.4.0). > >>>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> *not* started from a stable tag, and merges will be tricky, no ? > >>>>>>>>>> > >>>>>>>>>>> So what's the best way to flip ? There is most likely some git > >>> magic > >>>>>>>>> that can we do. > >>>>>>>>>>> > >>>>>>>>>>> > >>>>>>>>>>> The new git workflow and the transition process need to be part > >>> of a > >>>>>>>>> proposal that we get consensus on. > >>>>>>>>>>> > >>>>>>>>>>> getting there :) > >>>>>>>>>>> > >>>>>>>>>>> -seb > >>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> Also, I'm struggling to understand the benefit of > cherry-pick. If > >>>>> you > >>>>>>>>>>>> completely squash history, you lose a tremendous amount of > >>> context, > >>>>>>>>> which I > >>>>>>>>>>>> use extensively to figure out why a bug is the way it is. Only > >>>>> knowing > >>>>>>>>> that > >>>>>>>>>>>> the branch was merged at a given point in time doesn't give > any > >>>>>>>>> context. > >>>>>>>>>>>> Seeing the individual commit history of the branch helps to > >>>>> preserve > >>>>>>>>> the > >>>>>>>>>>>> rationale for why the code was written the way it was. In > theory > >>> if > >>>>>>>>> every > >>>>>>>>>>>> change starts out as a branch (feature, hotfix, release), then > >>> why > >>>>> not > >>>>>>>>> just > >>>>>>>>>>>> merge the branch once it is in a good and acceptable state? > >>>>>>>>>>>> > >>>>>>>>>>>> I also agree with Mike that this will have to be a transition > >>> over > >>>>>>>>> time. It > >>>>>>>>>>>> will take some time to clean up master to the point where it > can > >>> be > >>>>>>>>>>>> considered a solid stable branch. Possibly as part of the 4.5 > >>>>> release. > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> On Wed, Jul 23, 2014 at 10:51 AM, Sebastien Goasguen < > >>>>> run...@gmail.com > >>>>>>>>>> > >>>>>>>>>>>> wrote: > >>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> On Jul 23, 2014, at 11:38 AM, daan Hoogland < > >>>>> daan.hoogl...@gmail.com> > >>>>>>>>>>>>> wrote: > >>>>>>>>>>>>> > >>>>>>>>>>>>>> Sebastien, > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> It seems we can do what you are calling for is creating a > >>> branch > >>>>>>>>>>>>>> called 'release'. We can merge back into that branch from > 4.4, > >>>>>>>>> master, > >>>>>>>>>>>>>> 4.3. I would like to see people that want a feature or bug > fix > >>>>> in a > >>>>>>>>>>>>>> branch make a fork of that branch and when that fork is > working > >>>>> do a > >>>>>>>>>>>>>> cherry-pick. The -forward concept is now used for that but > it > >>> is > >>>>>>>>>>>>>> broken because more then for one piece of work there are > >>> commits > >>>>> on > >>>>>>>>>>>>>> it. This caused me conflicts during the release. Especially > >>>>> painfull > >>>>>>>>>>>>>> as not all was intended to get into the release. We can > create > >>>>> this > >>>>>>>>>>>>>> 'release' branch now on the basis of 4.4 and start pulling > in > >>>>>>>>> changes. > >>>>>>>>>>>>> > >>>>>>>>>>>>> Yes, that's what I am thinking about too, so +1 > >>>>>>>>>>>>> > >>>>>>>>>>>>> Our master would become the -develop- in gitflow terms > >>>>>>>>>>>>> The release branch you mention would become the -master- in > >>>>> gitflow > >>>>>>>>> terms > >>>>>>>>>>>>> > >>>>>>>>>>>>> If we start now, indeed we can create 'release' from 4.4 > release > >>>>> tag > >>>>>>>>>>>>> (voted and shipped). > >>>>>>>>>>>>> > >>>>>>>>>>>>> That means that to create 4.5 we will need to merge features > >>> back > >>>>> into > >>>>>>>>>>>>> 'release'. it might be messy because some of those features > are > >>>>>>>>> already in > >>>>>>>>>>>>> our current master. > >>>>>>>>>>>>> > >>>>>>>>>>>>> But all of this will keep 'release' clean (we can keep track > of > >>>>> bugs > >>>>>>>>> and > >>>>>>>>>>>>> features that are in it in CHANGES file etc..) > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>>> There is a question of control. Do we allow all committers > to > >>>>> manage > >>>>>>>>>>>>>> the release? I am for that but can imagine not everybody is. > >>>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>>> At first I would say that only the RM can commit to > 'release'. > >>> As > >>>>> we > >>>>>>>>> get > >>>>>>>>>>>>> the CI in place we could relax this and allow commits that > pass > >>>>> the > >>>>>>>>> CI to > >>>>>>>>>>>>> get into 'release', but right now I would vote for a tighter > >>>>> control > >>>>>>>>> of > >>>>>>>>>>>>> 'release'. > >>>>>>>>>>>>> > >>>>>>>>>>>>>> rule number 1 will be: you are going to do something to the > >>>>> code, you > >>>>>>>>>>>>>> start by creating a branch. > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> right? > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> On Wed, Jul 23, 2014 at 5:28 PM, Sebastien Goasguen < > >>>>>>>>> run...@gmail.com> > >>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> On Jul 23, 2014, at 11:19 AM, Sam Schmit < > >>>>> sam.sch...@appcore.com> > >>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Hey everyone, > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> I've been a developer for a handful of years and have had > my > >>>>> share > >>>>>>>>> of > >>>>>>>>>>>>>>>> experience with different version control systems. I've > used > >>>>> (for > >>>>>>>>>>>>> better > >>>>>>>>>>>>>>>> or worse) Git, Perforce, Rational ClearCast, and SVN. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Each of these solutions offers their own unique set of > >>>>> features, > >>>>>>>>>>>>> strengths > >>>>>>>>>>>>>>>> and weaknesses. As there are so many systems that are > good > >>> at > >>>>>>>>> specific > >>>>>>>>>>>>>>>> things, it seems best to use the features that the chosen > >>>>> system is > >>>>>>>>>>>>> best at. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Git is great at branching, merging and using that > structure > >>> to > >>>>>>>>>>>>> maintain and > >>>>>>>>>>>>>>>> control how changes get into the primary branches. Git > tools > >>>>> even > >>>>>>>>> make > >>>>>>>>>>>>>>>> this easy by integrating directly into the "Gitflow" to > make > >>>>>>>>> branching > >>>>>>>>>>>>> and > >>>>>>>>>>>>>>>> merging that much easier. It would seem > counter-intuitive to > >>>>> NOT > >>>>>>>>> make > >>>>>>>>>>>>> use > >>>>>>>>>>>>>>>> of these built-in capabilities. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> In addition to that, I know that the current method of > change > >>>>>>>>>>>>> management is > >>>>>>>>>>>>>>>> incredibly frustrating to work with, and works directly > >>>>> against the > >>>>>>>>>>>>> way a > >>>>>>>>>>>>>>>> typical Git user would expect it to be structured. I > should > >>>>> NEVER > >>>>>>>>> have > >>>>>>>>>>>>>>>> problem compiling and running something on master. I > should > >>>>> not > >>>>>>>>> have > >>>>>>>>>>>>>>>> problems building anything on a release branch. A > >>>>> feature/bugfix > >>>>>>>>>>>>> branch is > >>>>>>>>>>>>>>>> where things can be, and often are, broken or unstable. > >>> There > >>>>> have > >>>>>>>>>>>>> been > >>>>>>>>>>>>>>>> many times working in Cloudstack where I've had to search > >>> for a > >>>>>>>>> stable > >>>>>>>>>>>>>>>> revision on master, and that's just plain wrong. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> I do realize that having this many developers working on > so > >>>>> many > >>>>>>>>>>>>> features > >>>>>>>>>>>>>>>> and bugfixes will result in a large number of branches. I > >>>>> don't > >>>>>>>>>>>>> believe > >>>>>>>>>>>>>>>> this is a good argument against using a branching method, > >>>>> though - > >>>>>>>>> I > >>>>>>>>>>>>>>>> believe that the current system is even more confusing and > >>>>>>>>> difficult > >>>>>>>>>>>>> to use. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> I could pontificate on change management quite a bit more, > >>> but > >>>>> my > >>>>>>>>>>>>> opinion > >>>>>>>>>>>>>>>> in summary would basically be: use Git the way it was > meant > >>>>> to be > >>>>>>>>>>>>> used, > >>>>>>>>>>>>>>>> and things will be better. Just my two cents. > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> Sam > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Sam, I think we are in agreement (at least with folks who > >>>>> responded > >>>>>>>>> to > >>>>>>>>>>>>> this thread). > >>>>>>>>>>>>>>> Or maybe I am not reading your mail right and you don't > agree > >>>>> with > >>>>>>>>> Leo ? > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> My own take and reason for calling for a change we are > >>> currently > >>>>>>>>> doing > >>>>>>>>>>>>> things is mostly due to the way we release. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> I would like to see a stable master (and I think we are in > >>>>> agreement > >>>>>>>>>>>>> with that). > >>>>>>>>>>>>>>> That means that development should not happen on master and > >>> that > >>>>>>>>> every > >>>>>>>>>>>>> commit that lands on master should be shippable. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> I personally have no issues with cherry-picking. So I > would be > >>>>> fine > >>>>>>>>>>>>> cherry picking from a hot-fix branch into master, to fix a > bug. > >>>>>>>>>>>>>>> The end result is that the next commit on master would > still > >>>>> mean > >>>>>>>>>>>>> master is shippable/releasable. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> If we agree with this basic concept. The question becomes > how > >>>>> do we > >>>>>>>>> get > >>>>>>>>>>>>> there, considering that master is now full of dev work and > >>>>> potential > >>>>>>>>> bug. > >>>>>>>>>>>>>>> The only releasable product we have are on the 4.3, 4.4 and > >>>>> previous > >>>>>>>>>>>>> release branches. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Ideally, I would like to see master becomes 4.4. And work > our > >>>>> way > >>>>>>>>> back, > >>>>>>>>>>>>> merging the new features that are already in master into the > new > >>>>>>>>> master > >>>>>>>>>>>>> (based on 4.4). > >>>>>>>>>>>>>>> This could be quite complicated but we need to do it (or > >>>>> something > >>>>>>>>> like > >>>>>>>>>>>>> it). > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> To move forward, we should make a proposal to the list and > >>> call > >>>>> for > >>>>>>>>> a > >>>>>>>>>>>>> vote. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Any takers to start a wiki page proposing a new git process > >>> and > >>>>> how > >>>>>>>>> we > >>>>>>>>>>>>> could move to it (transition path) ? > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> -Sebastien > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>> On Wed, Jul 23, 2014 at 5:16 AM, Leo Simons < > >>>>>>>>>>>>> lsim...@schubergphilis.com> > >>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> Hey folks, > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> With 4.4.0 tagged, is now an opportune time to go and > >>>>> implement > >>>>>>>>> this? > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> I would enthousiastically +1 and get crackin', but I’m > not a > >>>>>>>>>>>>> committer so > >>>>>>>>>>>>>>>>> its not that practical for me to volunteer! > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> I wanted to point out atlassian’s description of gitflow > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> > https://www.atlassian.com/git/workflows#!workflow-gitflow > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> which might be easier to read. > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> Similarly, the git-flow scripts that help out with > >>>>> implementing > >>>>>>>>> this > >>>>>>>>>>>>> stuff > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> https://github.com/nvie/gitflow > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> they also describe the relationship between gitflow and > >>>>> dealing > >>>>>>>>> with > >>>>>>>>>>>>>>>>> multiple remotes > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> https://www.atlassian.com/git/workflows#!pull-request > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> Finally note atlassian’s free sourcetree GUI has built-in > >>>>> support > >>>>>>>>> for > >>>>>>>>>>>>>>>>> git-flow > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> http://www.sourcetreeapp.com/ > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> Because cloudstack currently is full of rebasing and > >>>>> squashing and > >>>>>>>>>>>>>>>>> cherry-picking, you get very little benefit from a tree > >>>>>>>>> visualization > >>>>>>>>>>>>> tool > >>>>>>>>>>>>>>>>> (like this or gitk or ...) right now, but it would be > >>> *great* > >>>>> to > >>>>>>>>> have > >>>>>>>>>>>>> going > >>>>>>>>>>>>>>>>> forward. > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> cheers, > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> Leo > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> On Jul 1, 2014, at 12:09 AM, Sebastien Goasguen < > >>>>> run...@gmail.com > >>>>>>>>>> > >>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> I would like to re-start this discussion. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Rajani made some good points and someone mentioned > Gitflow: > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> http://nvie.com/posts/a-successful-git-branching-model/ > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Thinking about our release procedure, we clearly need > more > >>>>> tests > >>>>>>>>> and > >>>>>>>>>>>>> a > >>>>>>>>>>>>>>>>> CI. However it looks like this is going to take some > time. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> In the meantime I think there is nothing preventing us > from > >>>>>>>>> agreeing > >>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>> 'git practices', we don't need tests or new infra, we > just > >>>>> need to > >>>>>>>>>>>>> agree on > >>>>>>>>>>>>>>>>> the git workflow. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Right now Master is really a development branch, we > should > >>>>> make > >>>>>>>>> it a > >>>>>>>>>>>>>>>>> stable branch for production with very few commits. > >>>>>>>>>>>>>>>>>> This does not mean that we would release less, in > contrary > >>>>> this > >>>>>>>>> would > >>>>>>>>>>>>>>>>> ensure that a commit to master means it's a production > >>>>> release. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> In addition gitflow [1] does not do cherry-picks (gets > back > >>>>> to > >>>>>>>>>>>>> Rajani's > >>>>>>>>>>>>>>>>> point) everything is based on merges. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> I am of the opinion that git flow provides a nice > process. > >>> It > >>>>>>>>>>>>> basically > >>>>>>>>>>>>>>>>> freezes master. Development happens in a 'develop' > branch, > >>>>>>>>> releases > >>>>>>>>>>>>>>>>> branches are branched off of that and merged into master > and > >>>>> back > >>>>>>>>> into > >>>>>>>>>>>>>>>>> develop….etc > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> Please read [1] it's a good read. > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> And let's discuss, > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> [1] > >>> http://nvie.com/posts/a-successful-git-branching-model/ > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> -Sebastien > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> On Jun 2, 2014, at 11:58 PM, Rajani Karuturi < > >>>>>>>>>>>>> rajani.karut...@citrix.com> > >>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> There is also the problem of cherry-picking. > >>>>>>>>>>>>>>>>>>> As a contributor, I always endup creating multiple > patches > >>>>> for > >>>>>>>>> each > >>>>>>>>>>>>>>>>> branch as they don’t cleanly apply on the upward > branches. > >>>>> which > >>>>>>>>> means > >>>>>>>>>>>>>>>>> distinct commits for each branch and I don’t easily know > >>>>> which all > >>>>>>>>>>>>> branches > >>>>>>>>>>>>>>>>> my commit exists unless I do grep. > >>>>>>>>>>>>>>>>>>> if we follow merging strategy properly, apart from the > >>> first > >>>>>>>>> merge > >>>>>>>>>>>>> of > >>>>>>>>>>>>>>>>> the branch, everything else on top of it should be a > >>> painless > >>>>>>>>> merge. > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> ~Rajani > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> On 02-Jun-2014, at 10:51 pm, Marcus < > shadow...@gmail.com> > >>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> I think many of the bullet points are what we are > >>> currently > >>>>>>>>> doing > >>>>>>>>>>>>>>>>>>>> (guidelines for commit comments, feature branches > need to > >>>>> stay > >>>>>>>>> in > >>>>>>>>>>>>> sync > >>>>>>>>>>>>>>>>> with > >>>>>>>>>>>>>>>>>>>> master, no back-merging). I also think that much of > what > >>>>> we do > >>>>>>>>> now > >>>>>>>>>>>>> is > >>>>>>>>>>>>>>>>> done > >>>>>>>>>>>>>>>>>>>> the way it is simply because there *are* vast changes > >>>>> between > >>>>>>>>>>>>> versions. > >>>>>>>>>>>>>>>>>>>> Classes are getting shuffled around and changed all > the > >>>>> time. > >>>>>>>>> If > >>>>>>>>>>>>> its > >>>>>>>>>>>>>>>>>>>> feasible to merge branch fixes to master, that's fine, > >>> but > >>>>> some > >>>>>>>>>>>>> quick > >>>>>>>>>>>>>>>>> tests > >>>>>>>>>>>>>>>>>>>> seem to indicate that this will be messy getting > started. > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> That leaves us with how we do releases. I'm fine with > >>>>> having > >>>>>>>>> single > >>>>>>>>>>>>>>>>>>>> branches for major releases(4.3) and tagging the > commits > >>>>> where > >>>>>>>>> each > >>>>>>>>>>>>>>>>>>>> incremental release (4.3.x) is done. I'm trying to > >>> remember > >>>>>>>>> why we > >>>>>>>>>>>>> went > >>>>>>>>>>>>>>>>>>>> with the -forward, I'm sure it's in the mailing list > >>>>>>>>> somewhere, but > >>>>>>>>>>>>>>>>> one of > >>>>>>>>>>>>>>>>>>>> the nice things it provides is the ability for the > >>> release > >>>>>>>>> manager > >>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>>>> control what changes are made during code freeze while > >>>>> giving > >>>>>>>>>>>>> people a > >>>>>>>>>>>>>>>>>>>> place to stage fixes (though admittedly this is not > >>> always > >>>>>>>>>>>>> followed). > >>>>>>>>>>>>>>>>>>>> Without -forward, would the flow be for each dev to > have > >>>>> their > >>>>>>>>> own > >>>>>>>>>>>>>>>>> repo and > >>>>>>>>>>>>>>>>>>>> issue pull requests for bugfixes? > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>> On Mon, Jun 2, 2014 at 3:17 AM, Rajani Karuturi < > >>>>>>>>>>>>>>>>> rajani.karut...@citrix.com> > >>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> Any other suggestions/objections/comments?? > >>>>>>>>>>>>>>>>>>>>> Can we discuss this in detail and agree to a > process?? > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> ~Rajani > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> On 02-Jun-2014, at 9:32 am, Rajani Karuturi < > >>>>>>>>>>>>>>>>> rajani.karut...@citrix.com> > >>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> Yes as mike said, if its a one-off case we can do a > >>> empty > >>>>>>>>>>>>>>>>> merge(merge -s > >>>>>>>>>>>>>>>>>>>>> ours) for it and git will assume its merged but will > not > >>>>>>>>> bring in > >>>>>>>>>>>>> any > >>>>>>>>>>>>>>>>>>>>> changes. > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> If the branches diverged a lot, for example after a > >>> major > >>>>>>>>>>>>> rewrite, we > >>>>>>>>>>>>>>>>>>>>> could stop merging to that branch and above and make > the > >>>>> fix > >>>>>>>>>>>>> manually. > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> ~Rajani > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>> On 30-May-2014, at 11:26 pm, Mike Tutkowski < > >>>>>>>>>>>>>>>>>>>>> mike.tutkow...@solidfire.com> wrote: > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> Yep, that's what I was referring to in that a > >>>>> particular fix > >>>>>>>>>>>>> for an > >>>>>>>>>>>>>>>>> old > >>>>>>>>>>>>>>>>>>>>>>> release may not apply to newer versions. That does > >>>>> happen. > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> We used to mark those as "don't need to merge to > >>> branch > >>>>> x" > >>>>>>>>> in > >>>>>>>>>>>>> SVN > >>>>>>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>>>>>> then > >>>>>>>>>>>>>>>>>>>>>>> you handed it however made sense on the applicable > >>>>>>>>> branch(es). > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> On Fri, May 30, 2014 at 11:53 AM, Stephen Turner < > >>>>>>>>>>>>>>>>>>>>> stephen.tur...@citrix.com> > >>>>>>>>>>>>>>>>>>>>>>> wrote: > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> What happens if a fix isn't relevant for newer > >>>>> versions, or > >>>>>>>>>>>>> has to > >>>>>>>>>>>>>>>>> be > >>>>>>>>>>>>>>>>>>>>>>>> rewritten for newer versions because the code has > >>>>> changed? > >>>>>>>>>>>>> Don't > >>>>>>>>>>>>>>>>> the > >>>>>>>>>>>>>>>>>>>>>>>> branches diverge and you end up cherry-picking > after > >>>>> that? > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>>> Stephen Turner > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> -----Original Message----- > >>>>>>>>>>>>>>>>>>>>>>>> From: Mike Tutkowski [mailto: > >>>>> mike.tutkow...@solidfire.com] > >>>>>>>>>>>>>>>>>>>>>>>> Sent: 30 May 2014 18:48 > >>>>>>>>>>>>>>>>>>>>>>>> To: dev@cloudstack.apache.org > >>>>>>>>>>>>>>>>>>>>>>>> Subject: Re: [PROPOSAL] git workflow > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> I think this flow is something we should seriously > >>>>>>>>> consider. > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> I find cherry picking from branch to branch to be > >>> error > >>>>>>>>> prone > >>>>>>>>>>>>> in > >>>>>>>>>>>>>>>>> that > >>>>>>>>>>>>>>>>>>>>> it's > >>>>>>>>>>>>>>>>>>>>>>>> easy for someone to forget to cherry pick to all > >>>>> applicable > >>>>>>>>>>>>>>>>> branches > >>>>>>>>>>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>>>>>>>>> you don't have any easy way to see the cherry > picks > >>> are > >>>>>>>>>>>>> related. > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> When I worked at HP, we had automated tools check > to > >>>>> see > >>>>>>>>> if you > >>>>>>>>>>>>>>>>>>>>> checked a > >>>>>>>>>>>>>>>>>>>>>>>> fix into a prior release, but not later releases. > In > >>>>> such a > >>>>>>>>>>>>>>>>> situation, > >>>>>>>>>>>>>>>>>>>>> you > >>>>>>>>>>>>>>>>>>>>>>>> either 1) forgot to perform the check-in or 2) the > >>>>> check-in > >>>>>>>>>>>>> was no > >>>>>>>>>>>>>>>>>>>>> longer > >>>>>>>>>>>>>>>>>>>>>>>> applicable in the later release(s), so you needed > to > >>>>> mark > >>>>>>>>> it as > >>>>>>>>>>>>>>>>>>>>>>>> un-necessary (SVN supported this ability...not > sure > >>>>> about > >>>>>>>>> Git). > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> On Fri, May 30, 2014 at 10:49 AM, Rajani Karuturi > < > >>>>>>>>>>>>>>>>>>>>>>>> rajani.karut...@citrix.com> wrote: > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> Hi all, > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> Our current git workflow is confusing with the > >>>>> *forward > >>>>>>>>>>>>> branches > >>>>>>>>>>>>>>>>> and > >>>>>>>>>>>>>>>>>>>>>>>>> cherry-picking. Its hard to track on what all > >>>>> releases the > >>>>>>>>>>>>> commit > >>>>>>>>>>>>>>>>> has > >>>>>>>>>>>>>>>>>>>>>>>>> gone into unless I do some git log greping. Also, > >>> as a > >>>>>>>>>>>>>>>>> contributor, I > >>>>>>>>>>>>>>>>>>>>>>>>> endup creating patches for each branch as it > doesn’t > >>>>>>>>> cleanly > >>>>>>>>>>>>>>>>> apply on > >>>>>>>>>>>>>>>>>>>>>>>>> different branches. > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> I think we should have some guidelines. Here is > >>> what I > >>>>>>>>>>>>> propose. > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> 1. There should be branch for every major > >>> release(ex: > >>>>>>>>> 4.3.x, > >>>>>>>>>>>>>>>>> 4.4.x, > >>>>>>>>>>>>>>>>>>>>>>>>> 5.0.x,5.1.x) and the minor releases should be > tagged > >>>>>>>>>>>>> accordingly > >>>>>>>>>>>>>>>>> on > >>>>>>>>>>>>>>>>>>>>>>>>> the respective branches. > >>>>>>>>>>>>>>>>>>>>>>>>> 2. The branch naming convention is to be > followed. > >>>>> Many > >>>>>>>>>>>>> branches > >>>>>>>>>>>>>>>>>>>>>>>>> with 4.3, 4.3.0, 4.3.1 etc. is confusing > >>>>>>>>>>>>>>>>>>>>>>>>> 3. Cherry-picking should be avoided. In git, > when > >>> we > >>>>>>>>>>>>> cherry-pick, > >>>>>>>>>>>>>>>>>>>>>>>>> we have two physically distinct commits for the > same > >>>>>>>>> change or > >>>>>>>>>>>>>>>>> fix and > >>>>>>>>>>>>>>>>>>>>>>>>> is difficult to track unless you do cherry-pick > -x > >>>>>>>>>>>>>>>>>>>>>>>>> 4. There should always be a continous flow from > >>>>> release > >>>>>>>>>>>>> branches > >>>>>>>>>>>>>>>>> to > >>>>>>>>>>>>>>>>>>>>>>>>> master. This doesn’t mean cherry-picking. They > >>> should > >>>>> be > >>>>>>>>>>>>>>>>> merged(either > >>>>>>>>>>>>>>>>>>>>>>>>> ff or no-ff) which retains the commit ids and > easily > >>>>>>>>> trackable > >>>>>>>>>>>>>>>>> with > >>>>>>>>>>>>>>>>>>>>>>>>> git branch --contains > >>>>>>>>>>>>>>>>>>>>>>>>> * Every bug fix should always flow from minimal > >>>>> release > >>>>>>>>>>>>> uptill > >>>>>>>>>>>>>>>>>>>>>>>>> master. A bug isnt fixed until the fix reaches > >>> master. > >>>>>>>>>>>>>>>>>>>>>>>>> * For ex. A bug 4.2.1 should be committed to > >>>>>>>>>>>>>>>>>>>>>>>>> 4.2.x->4.3.x->4.4.x->master > >>>>>>>>>>>>>>>>>>>>>>>>> * If someone forgets to do the merge, the next > >>> time > >>>>> a > >>>>>>>>> new > >>>>>>>>>>>>> commit > >>>>>>>>>>>>>>>>>>>>>>>> is > >>>>>>>>>>>>>>>>>>>>>>>>> done this will also get merged. > >>>>>>>>>>>>>>>>>>>>>>>>> 5. There should always be a continuous flow from > >>>>> master > >>>>>>>>> to > >>>>>>>>>>>>>>>>> feature > >>>>>>>>>>>>>>>>>>>>>>>>> branches. Meaning all feature branch owners > should > >>>>>>>>> proactively > >>>>>>>>>>>>>>>>> take > >>>>>>>>>>>>>>>>>>>>>>>>> any new commits from master by doing a merge from > >>>>> master > >>>>>>>>>>>>>>>>>>>>>>>>> 6. The commits from feature branch will make to > >>>>> master on > >>>>>>>>>>>>> code > >>>>>>>>>>>>>>>>>>>>>>>>> complete through a merge. > >>>>>>>>>>>>>>>>>>>>>>>>> 7. There should never be a merge from master to > >>>>> release > >>>>>>>>>>>>> branches > >>>>>>>>>>>>>>>>>>>>>>>>> 8. Every commit in LTS branch(targetted to any > >>> minor > >>>>>>>>> release) > >>>>>>>>>>>>>>>>>>>>>>>>> should have atleast bug id and correct author > >>>>> information > >>>>>>>>>>>>>>>>>>>>>>>>> * Cassandra's template: patch by <author>; > >>> reviewed > >>>>> by > >>>>>>>>>>>>>>>>>>>>> <committer> > >>>>>>>>>>>>>>>>>>>>>>>>> for CASSANDRA-<ticket> > >>>>>>>>>>>>>>>>>>>>>>>>> 9. Once the release branch is created(after code > >>>>> freeze), > >>>>>>>>>>>>> any bug > >>>>>>>>>>>>>>>>>>>>>>>>> in jira can be marked with fix version current > >>>>>>>>> release(4.4) > >>>>>>>>>>>>> only > >>>>>>>>>>>>>>>>> on > >>>>>>>>>>>>>>>>>>>>>>>>> RM's approval and only they can go to the release > >>>>> branch. > >>>>>>>>>>>>> This > >>>>>>>>>>>>>>>>> can be > >>>>>>>>>>>>>>>>>>>>>>>>> done through jira and with certain rules.(may be > >>> using > >>>>>>>>> jira > >>>>>>>>>>>>> vote?) > >>>>>>>>>>>>>>>>>>>>>>>>> this would save the cherry-picking time and > another > >>>>> branch > >>>>>>>>>>>>>>>>>>>>> maintenance. > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> Please add your thoughts/suggestions/comments. > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> Ref: > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> > >>>>>>>>> > http://www.draconianoverlord.com/2013/09/07/no-cherry-picking.html > >>>>>>>>>>>>>>>>>>>>>>>>> https://www.youtube.com/watch?v=AJ-CpGsCpM0 > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> ~Rajani > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>>> *Mike Tutkowski* > >>>>>>>>>>>>>>>>>>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* > >>>>>>>>>>>>>>>>>>>>>>>> e: mike.tutkow...@solidfire.com > >>>>>>>>>>>>>>>>>>>>>>>> o: 303.746.7302 > >>>>>>>>>>>>>>>>>>>>>>>> Advancing the way the world uses the cloud > >>>>>>>>>>>>>>>>>>>>>>>> < > http://solidfire.com/solution/overview/?video=play > >>>>>> *™* > >>>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>>>> -- > >>>>>>>>>>>>>>>>>>>>>>> *Mike Tutkowski* > >>>>>>>>>>>>>>>>>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* > >>>>>>>>>>>>>>>>>>>>>>> e: mike.tutkow...@solidfire.com > >>>>>>>>>>>>>>>>>>>>>>> o: 303.746.7302 > >>>>>>>>>>>>>>>>>>>>>>> Advancing the way the world uses the cloud > >>>>>>>>>>>>>>>>>>>>>>> < > http://solidfire.com/solution/overview/?video=play > >>>> *™* > >>>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> > >>>>>>>>>>>>>> -- > >>>>>>>>>>>>>> Daan > >>>>>>>>>>>>> > >>>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> -- > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> *Nate Gordon*Director of Technology | Appcore - the business > of > >>>>> cloud > >>>>>>>>>>>> computing® > >>>>>>>>>>>> > >>>>>>>>>>>> Office +1.800.735.7104 | Direct +1.515.612.7787 > >>>>>>>>>>>> nate.gor...@appcore.com | www.appcore.com > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>> > ---------------------------------------------------------------------- > >>>>>>>>>>>> > >>>>>>>>>>>> The information in this message is intended for the named > >>>>> recipients > >>>>>>>>> only. > >>>>>>>>>>>> It may contain information that is privileged, confidential or > >>>>>>>>> otherwise > >>>>>>>>>>>> protected from disclosure. If you are not the intended > recipient, > >>>>> you > >>>>>>>>> are > >>>>>>>>>>>> hereby notified that any disclosure, copying, distribution, or > >>> the > >>>>>>>>> taking > >>>>>>>>>>>> of any action in reliance on the contents of this message is > >>>>> strictly > >>>>>>>>>>>> prohibited. If you have received this e-mail in error, do not > >>>>> print it > >>>>>>>>> or > >>>>>>>>>>>> disseminate it or its contents. In such event, please notify > the > >>>>>>>>> sender by > >>>>>>>>>>>> return e-mail and delete the e-mail file immediately > thereafter. > >>>>> Thank > >>>>>>>>> you. > >>>>>>>>>>> > >>>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> -- > >>>>>>>>> Daan > >>>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>> -- > >>>>>>>> *Mike Tutkowski* > >>>>>>>> *Senior CloudStack Developer, SolidFire Inc.* > >>>>>>>> e: mike.tutkow...@solidfire.com > >>>>>>>> o: 303.746.7302 > >>>>>>>> Advancing the way the world uses the cloud > >>>>>>>> <http://solidfire.com/solution/overview/?video=play>*™* > >>>>>>> > >>>>>> > >>>>>> > >>>>>> > >>>>>> -- > >>>>>> Daan > >>>>> > >>>>> > >>>> > >>>> > >>>> -- > >>>> *Mike Tutkowski* > >>>> *Senior CloudStack Developer, SolidFire Inc.* > >>>> e: mike.tutkow...@solidfire.com > >>>> o: 303.746.7302 > >>>> Advancing the way the world uses the cloud > >>>> <http://solidfire.com/solution/overview/?video=play>*™* > >>> > >>> > > > > > > > > -- > > Daan > >