skeet70 / pascal-compiler

A project Pascal compiler written in Haskell.
5 stars 1 forks source link

Git-style development #6

Closed iduhetonas closed 11 years ago

iduhetonas commented 11 years ago

I'm sure we've seen this before, but I want to be sure that we're all familiar with the "git-style" workflow for development.

Git-Style Development

I can't think of others. Add anything else you feel should be considered.

iduhetonas commented 11 years ago

This seems like a good place to look for a git development workflow.

skeet70 commented 11 years ago

Yep yep! Another good thing to note is that when making a commit, you can reference Github issue number in it and it will close it with your commit message. eg: closes #6 anywhere in the commit will close the issue.

iduhetonas commented 11 years ago

Sweet, I've added it to the section up top.

skeet70 commented 11 years ago

This is the one we've modeled off at work. It has many more pictures, which I'm always a fan of. As a side note, we almost went with Braintree payments for our marketplace :+1:

iduhetonas commented 11 years ago

I quite like their project flow!

The only disagreement I would have is that I don't like that all three of us working in the "develop" branch at once. I realize that Git is very good about merging; my only complaint would be that if we created a huge bug that wasn't apparent in the main branch by trying to fix another bug, or implement a feature, it'd be difficult to "reset" back to the point where that wasn't apparent. So rather than have a "hotfix" set on a tree, we would instead just have a list of separate branches that we use to work on bugs and issues.

Other than that, I like the style. In all, I'm extremely flexible on how we do this project, mostly because I'm not sure how any of our plans will work out between the three of us.

skeet70 commented 11 years ago

...? We don't all work on develop at once. The pink on the left is features/bugfixes, a new branch for each one. You always do a pull before a push, so when you're merging back into develop, Hotfix was a branch where you do a where you basically do a commit that fixes an entire bug, which it would be pointless to make a branch for. It's extremely easy to rebase/reverse commits with this model, there's no ambiguity about where bugs are introduced or anything.

iduhetonas commented 11 years ago

I had a different idea of what features were from the diagram, and didn't think of them as bugfixes. Reading more thoroughly, and I like the way that they handle the "release" branches being "local only" bugfixes/features (of which I misspoke and was referring to, not the "develop" branch).

Another source of confusion is that I thought we had only used one branch for all bugs, rather than for our own, but this model addresses that.

I'd like to see this model placed somewhere else than in an issue, so once everyone understands how we'll be developing, I believe we should move that link to somewhere in the Wiki. Then we can close this bug.

How does that sound?

skeet70 commented 11 years ago

Sounds good to me! Could make a development practices page and add stuff we sort on these to that.