On Thu, Aug 20, 2009 at 8:00 PM, Marcelo de Moraes Serpa<celose...@gmail.com> wrote: > > However, a co-worker of mine came to me and said that partial commits > are needed to share code. I don't agree with that, I think we can use > patches or branches to do that (like a development branch) but at > least one branch should have only stabe/deliverable code.
First: you keep using that word. I do not think it means what you think it means. You can't really have a "partial commit." Commits are an atomic unit of version control; you've changed the state of the repository or you haven't. The *size* of a commit may vary, but a commit that's just part of everything you're working on is still a commit. And a commit to a development branch is a commit, too. It sounds to me like you're using "commit" not to mean "any update that alters the history of the repository," but an update to the official master branch (or trunk, if you're using Subversion). That's a bit more specialized, and I personally would advise a better word or phrase for it. "Push to master" works for me. It may be that some of your confusion with your team may just be a matter of unclear terminology. > For patches, however, he mentioned that we might have conflicts/code > duplication, where the guy who shares the patches will have problems > later on when pulling from the server (he already had part of the code > that was committed). Second: have you tried Git? With all this talk of patch conflicts, and "the server," and spotlighting development branches like they're a big deal, I'm guessing you're using Subversion or something else where branching and merging is a pain. Once I learned to appreciate how easy branches were in Git, and to use them properly and frequently, a lot of these sorts of problems just evaporated. (I've heard the same is true in Mercurial too, FWIW.) Get a proper tool that encourages branching and experimentation -- and then encourage people to branch and experiment. Your policy of having an "all green" master branch is truly a good one, but if it discourages people from _using_ the source control on a constant basis then something needs to be made easier. I personally can't imagine using Git but refusing to commit my changes to my personal repository until everything worked. I commit _constantly._ Mostly for the sake of being able to easily undo stuff. -- Have Fun, Steve Eley (sfe...@gmail.com) ESCAPE POD - The Science Fiction Podcast Magazine http://www.escapepod.org _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users