On Sun, Jul 30, 2017 at 5:27 PM, Peter Humphrey <pe...@prh.myzen.co.uk> wrote: > On Sunday 30 Jul 2017 11:02:41 Rich Freeman wrote: > >> The general sense is that Changelogs represent the old way of doing >> things. Most projects have gone away from having them, or they just >> auto-generate them from git. I don't think most projects routinely >> distribute them either - they just stick them on a webpage and only >> people who care about them look at them. The linux kernel only >> includes the changes in the last release in their change logs as well >> (which is nothing more than a dump of git log). > > This has me a bit bothered, wearing my ISO9000 hat. Change logs seem to me > to be the most important traceability tool we can have. Is it not essential > to be able to demonstrate clearly how we got to where we are today? > Preferably without having to jump through a load of abstruse hoops.
Git tells you everything that Changelogs did, and more. It isn't all that obscure either, considering that just about everybody is using it. Aside from the fact that nobody has gotten around to fixing the hash function it also can provide gpg-signed histories that are pretty-much impossible to tamper with. In the case of Gentoo they can also track correlated changes across the entire repository and not just per-package histories. If somebody changes 3 packages at the same time, git will show that they changed 3 packages at the same time. With the old changelogs you'd have to hunt through all of them to find out that 3 things were changed with the timestamp, but it wasn't actually atomic. The one thing I will say about git is that you'll never appreciate it until you understand how it works. In many ways git is a data model masquerading as a version control system. The data model is very elegant, but also very different to what came before, and until you understand it you'll be copy/pasting commands off of webpages that don't seem very intuitive. -- Rich