La voce dettagliata di ChangeLog indica di solito chi, quando e quale funzione è stata modificata e per quale motivo questa modifica è stata eseguita.Perché mantenere il ChangeLog dettagliato tradizionale nel mondo moderno (con SVN, Mercurial, Git)?
E questo per ogni funzione separata nell'albero del codice sorgente!
Come ho capito, ChangeLog viene dal passato quando non c'erano buoni VCS.
ChangeLog così tradizionale non ha bisogno affatto come si può ottenere tutto da:
$ svn log . $ hg log . $ git log . $ bzr log .
solo una possibile necessità di changelog per breve sintesi tra le versioni del prodotto e destinato per l'utente solo (ad esempio, quando nuova versione, lo sviluppatore prepara ChangeLog descrive cambiamenti notevoli/visibili).
O mi sbaglio?
Da http://autotoolset.sourceforge.net/tutorial.html#SEC45:
The ChangeLog file: Use this file to record all the changes that you make to your source code. If your source code is distributed among many subdirectories, and there is reason enough to think of the contents of the subdirectories as different subpackages,then please maintain a separate `ChangeLog' file for each subdirectory.
sguardo arcaica e dogmatica. ChangeLog richiesto dagli autotools e da "GNU coding standards".
GNU Emacs sorgente contiene un sacco di enormi ChangeLog (molti diviso da molte parti):
$ find emacs-22.3 -name "ChangeLog*" | xargs cat | wc -c 13605747
posso ottenere registro di riepilogo da Emacs bzr pronti contro termine per circa 1 min e la ricerca in esso, invece di ricerca per ogni separata ChangeLog e con strumenti moderni come Emacs VC
o Tortoise SVN/HG
ottiene immediatamente la differenza per la modifica.
AGGIORNAMENTO Le motivazioni per l'utilizzo di ChengeLog derivano dall'impotenza del sistema di controllo servoassistito RCS/CVS. Controllare la sezione http://www.red-bean.com/cvs2cl/changelogs.html "ChangeLogs e il registro CVS". Tutti i VCS moderni forniscono/consentono di criticare questo articolo in CVS.
Esistono anche molti sctipts che convertono la cronologia VCS in stile ChangeLog. Quindi rifiuta tutti i tuoi ChangeLog s.
Se si desidera fornire orientato all'utente informazioni di caratteristiche/compatibilità di nuovo/etc tra le versioni utilizzano file NEWS: http://www.gnu.org/prep/standards/html_node/NEWS-File.html
Puoi affermare che monitorare più facilmente le modifiche nel progetto da chagelog piuttosto che VCS? – gavenkoa
Bene, hai aggiunto solo in seguito che intendi il log delle modifiche in stile GNU. Sono d'accordo sul fatto che questo tipo di changelog sia completamente inutile. Quello che intendevo è che il mio post è il tipo di registro delle modifiche che viene normalmente utilizzato nelle note di rilascio. Nella mia esperienza, molti progetti open source mantengono questo tipo di changelog nel loro file ChangeLog/NEWS/CHANGES. –
Grazie per la risposta. Che stavo pensando, ma ho bisogno di un'altra opinione. – gavenkoa