I would keep the story, even if it requires a little extra time. There is great value in reading commit logs and understanding why function X is written in a weird way, or that it really is a mistake at a time, because it was written by Oliver, who always makes mistakes.
An argument against saving history can be made for the following users:
- Your code can have embarrassing things, such as profanity and the struggle between developers.
- you don’t need a history of fixing your code, because it will not change or will not be saved in the future
I did some directory refactoring, like last year, on our code base. If your code is reasonably structured at the beginning, you can do about 75-90% of the work using scripts written in your chosen language (I used Perl). In my case, we moved from a set of files to one large directory, to a number of subdirectories, depending on the namespaces. So, the file that declared the class protocols :: serialization :: SerializerBase was located in src / protocols / serialization / SerializerBase. Mapping from the old name to the new name was trivial, so doing a search and replacing with #includes in every source file in the tree was trivial, although that was a big change. There were some strange edge cases that we had to fix manually, but it was much better than either doing everything manually or writing our own C ++ parser.
James thompson
source share