??? 09/08/08 18:52 Read: times |
#158088 - Only advantages with source-code repository Responding to: ???'s previous message |
The limitation with saving the versions in individual zip files is that you can't easily follow the source progress.
If you get a bug, you can immediately compare the current code with older versions. Either specific released versions or the current state of the code at a specific time point. Or you may annotate the source code with the file version, timestamp and developer for every single source-code line. When something doesn't work, it is quite often the result of recent changes, so by seeing every single source line with a timestamp it is easy to decide on functions that you need to take a closer look at. But another thing - zip files can work reasonably well for a linear progress. But source repositories supports branched development. You can create a branch - basically making a copy of the source code - and then experiment with a new function. If the new function doesn't work well, you can let this new branch of the development tree just die. If it works, but isn't mature enough for release, then you can let such a branch "sleep" for a while and then merge in the changes into the main development branch at a later time. If several people are working with the same code base, they can isolate their work into branches and then wait until they trust their changes until joining the changes with other peoples work. And if you commit on a daily basis, then you have constant backups of different states of the development. Instead of making large rewrites from one release to another, it will be meaningful to instead split the work into many small steps - each step committed and tested individually. You also get the ability to assign text comments with all your source changes. So you can later request a log of all changes to have made to an individual source-code file. You can then quickly browse clear-text messages such as "Fixed incorrect initialization of strobe signal" and then in the source code diff see exactly what source lines you changed (how they looked before and after) to incorporate the change. A source code repository can also be used for other things than pure source code. If you have a GNU/Linux machine: Store all configurations in a repository. Then if you reinstall the Apache webserver, you can compare the clean configuratron files from the new installation with the changes you hade made to the previous installation. And this makes it easy for you to not just reuse the old configuration file, but to mix improvements in the new installation with required changes to personalize the installation. |