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