Is committing/checking code everyday a good practice?
- by ArtB
I've been reading Martin Fowler's note on Continuous Integration and he lists as a must "Everyone Commits To the Mainline Every Day".
I do not like to commit code unless the section I'm working on is complete and that in practice I commit my code every three days: one day to investigate/reproduce the task and make some preliminary changes, a second day to complete the changes, and a third day to write the tests and clean it up^ for submission. I would not feel comfortable submitting the code sooner.
Now, I pull changes from the repository and integrate them locally usually twice a day, but I do not commit that often unless I can carve out a smaller piece of work.
Question: is committing everyday such a good practice that I should change my workflow to accomodate it, or it is not that advisable?
^ The order is more arbitrary and depends on the task, my point was to illustrate the time span and activities, not the exact sequence.