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

Reply via email to