[[PageOutline(2-5,Contents,pullout)]] = Show ticket relative changelogs = == Description == This plugin add a changelog list in ticket. You do not need to switch from your coding environment to browser and comment ticket for this changeset anymore. Just compose you log message following the pattern, then all done. The default pattern is add #ticketid before the log messages. {{{ #ticketid any messages }}} This is done by scanning commit logs for ticket number which match a configurable regular expression. Subversion, mercurial, git are tested. === mercurial === For mercurial backend, since [http://trac.edgewall.org/ticket/8417 TracMecurial did not support repository cache] yet, you should install [http://github.com/maraujop/TracMercurialChangesetPlugin TracMercurialChangesetPlugin] to generate repository cache. === git === For git backend, according to #7746, you should add following config to git section: {{{ [git] cached_repository = true persistent_cache = true }}} You might need to run `trac-admin repository resync` after the change. == Example == For example, when you commit for ticket #10, the commit log like: {{{ #10 fixed blog }}} And you got a revision [1234]. After that, when open ticket #10, you can see a change log list as below. [[Image(ticketlog.png)]] == Bugs/Feature Requests == Existing bugs and feature requests for TracTicketChangelogPlugin are [report:9?COMPONENT=TracTicketChangelogPlugin here]. If you have any issues, create a [http://trac-hacks.org/newticket?component=TracTicketChangelogPlugin&owner=richard new ticket]. == Download == Download the zipped source from [download:tracticketchangelogplugin here]. == Source == You can check out TracTicketChangelogPlugin from [http://trac-hacks.org/svn/tracticketchangelogplugin here] using Subversion, or [source:tracticketchangelogplugin browse the source] with Trac. == Install == You can install this software as normal Trac plugin. 1. Uninstall TracTicketChangelogPlugin if you have installed before. 2. Change to the directory containning setup.py. * (Optional): If you are using Trac 0.12 with i18n, you should compile language files here: {{{ python setup.py compile_catalog -f }}} 3. If you want to install this plugin globally, that will install this plugin to the python path: * python setup.py install 4. If you want to install this plugin to trac instance only: * python setup.py bdist_egg * copy the generated egg file to the trac instance's plugin directory {{{ cp dist/*.egg /srv/trac/env/plugins }}} 5. Config trac.ini: {{{ [components] ticketlog.* = enabled [ticketlog] ; optional: custom your log message pattern log_pattern = \s*#%s\s+.* ; optional: set log message's max length, default is no limit log_message_maxlength = 100 }}} == Prerequisite == * simplejson === Usage === * make sure you add TICKETLOG_VIEW permission to users * you can config log_pattern to define your pattern.[[br]] `%s` in the pattern will be replaced with the referenced ticket number (e.g. 12345), so `\s*#%s+\s+.*` will be evaluated as `\s*#12345+\s+.*`. == Recent Changes == [[ChangeLog(tracticketchangelogplugin, 3)]] == Author/Contributors == '''Author:''' [wiki:richard] [[BR]] '''Maintainer:''' [wiki:richard] [[BR]] '''Contributors:'''