Re: [Warzone-dev] How not to use a version control system

2008-11-16 Thread Per Inge Mathisen
On Sun, Nov 16, 2008 at 12:05 PM, Per Inge Mathisen
[EMAIL PROTECTED] wrote:
 The commit flood: Having been bitten by the superhuman commit, you
 split your work instead into dozens if not hundreds of separate
 commits. Guaranteed to make anyone who tries to follow the commit log
 give up in despair, and makes the whole work impossible commit when
 done.

Ah, yes. That should really end impossible to revert when done.

Next up: How not to post rants on an email list...

  - Per

___
Warzone-dev mailing list
Warzone-dev@gna.org
https://mail.gna.org/listinfo/warzone-dev


Re: [Warzone-dev] How not to use a version control system

2008-11-16 Thread Gerard Krol
The untested commit: after a careful reading of the code you conclude 
that there possibly can't be any bugs left. Unfortunately a trivial bug 
renders the entire program unusable. Better stay available to do 
emergency fix-ups.

(coloured cursors anyone?)

Nice list. Now how to make sure people read it

- Gerard

Per Inge Mathisen wrote:
 There are various ways you should not commit things into a version
 control system. Let's go through some of them:

 The commit  run: I have to go now or I'll be late for..., then you
 commit today's work and bolt out the door. A sure way to see to that
 your colleagues sit late or go home early, depending on how close to
 deadline they are.

 The blind commit: I committed *what*? Always check what changes are
 lurking in your working copy before doing a commit.

 The sweet relief commit: After painstakingly long hours of debugging,
 it finally works, and you wrap it up with a commit. It feels good to
 be done. Except you also committed tons of debug code, snarky comments
 and commented out parts, making sure that the next session will be
 even more painstaking. Always read over the whole diff again before
 committing.

 The superhuman commit: A truly massive amount of improvements and
 fixes in a single commit, usually signed with a suitably heroic
 one-liner commit message for punch-line. Since it contains so much
 good stuff, nobody has the heart to revert it when they find
 regressions, and due to its massive size, nobody else can bisect it to
 find errors.

 The commit flood: Having been bitten by the superhuman commit, you
 split your work instead into dozens if not hundreds of separate
 commits. Guaranteed to make anyone who tries to follow the commit log
 give up in despair, and makes the whole work impossible commit when
 done.

 The stroke of genius commit: Why didn't anyone think of this before?
 There is usually a good reason. Always sleep on a good idea. It may
 not seem so bright the next morning.

 The late night commit: Having *finally* fixed all the bugs and cleaned
 up the code, you write a long and informative commit message, squint
 at the rising sun, and go to bed. Except that your brain is so full of
 diet coke that you have no idea what you were doing, and committed
 from the wrong working copy. Just never commit anything after
 midnight.

 The search  replace commit: You find an annoying but unimportant
 frequent mistake in the source code, and fix it by search and replace
 on all occurrances then committing the improvement. As a result, every
 other working copy get conflicts and nothing can be reverted or merged
 past this point.

   - Per

 ___
 Warzone-dev mailing list
 Warzone-dev@gna.org
 https://mail.gna.org/listinfo/warzone-dev

   


___
Warzone-dev mailing list
Warzone-dev@gna.org
https://mail.gna.org/listinfo/warzone-dev