<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>某人的栖息地 &#187; trac</title>
	<atom:link href="http://www.ooso.net/tag/trac/feed" rel="self" type="application/rss+xml" />
	<link>http://www.ooso.net</link>
	<description>Linux + Apache + Mysql + Php + Flash</description>
	<lastBuildDate>Thu, 19 Jan 2012 01:21:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>trac使用经验两则</title>
		<link>http://www.ooso.net/archives/443</link>
		<comments>http://www.ooso.net/archives/443#comments</comments>
		<pubDate>Fri, 28 Nov 2008 10:01:36 +0000</pubDate>
		<dc:creator>Volcano</dc:creator>
				<category><![CDATA[common]]></category>
		<category><![CDATA[trac]]></category>

		<guid isPermaLink="false">http://www.ooso.net/?p=443</guid>
		<description><![CDATA[最近开始使用trac进行项目管理，和svn同步。使用过程中解决了两个并不常见的问题，贴出来和大家分享。

如何修改trac的assign to下拉列表
让trac的ticket和bugzilla有同样的状态

				<span class="readmore"><a href="http://www.ooso.net/archives/443" title="trac使用经验两则">阅读全文（1527字）</a></span>]]></description>
			<content:encoded><![CDATA[<p>最近开始使用<a href="http://www.edgewall.org">trac</a>进行项目管理，和svn同步。使用过程中解决了两个并不常见的问题，贴出来和大家分享。</p>
<ul>
<li><a href="#droplist">如何修改trac的assign to下拉列表</a></li>
<li><a href="#bugzilla">让trac的ticket和bugzilla有同样的状态</a></li>
</ul>
<h2 id="droplist">如何修改trac的assign to下拉列表</h2>
<p>trac ticket的assign to下拉列表中的名单，没有保存在配置文件里头。读一下TracFaq有下面发现：</p>
<blockquote><p>This will change the Assign To ticket filed into a select box that only contains existing users. However as it says on the TracTickets page, the user must have logged, in at least once, and set their email address.</p>
<p>If you run multiple Trac sites, and have a set of common users across all Trac sites, it gets annoying to have to log into each one and set the email.</p>
<p>So, what is one to do? Well, there are two things that need to be entered into the database: a session record, and an email record.
</p></blockquote>
<p>所以我们只需要对trac的session表做操作就可以修改assign to的下拉菜单列表。session的表结构如下:</p>
<pre>
Table \"session\"
Column         | Type    | Modifiers
---------------+---------+-----------
sid            | text    | not null
authenticated  | integer | not null
last_visit     | integer |
</pre>
<h2 id=\"bugzilla\">让trac的ticket和bugzilla有同样的状态</h2>
<p>缺省配置下，trac ticket的状态和bugzilla的bug状态不一样，只有new,fixed,invalid,wontfix,duplicate,worksforme这几种。在trac 0.11之后，可以自己定义workflow，只需要将trac.ini的[ticket-workflow]章节修改一下，就可以支持verify状态：</p>
<pre><code>accept = new -&gt; assigned
accept.operations = set_owner_to_self
accept.permissions = TICKET_MODIFY
leave = * -&gt; *
leave.default = 1
leave.operations = leave_status
reassign = new,assigned,reopened -&gt; new
reassign.operations = set_owner
reassign.permissions = TICKET_MODIFY
reopen = resolved,verified,closed -&gt; reopened
reopen.operations = del_resolution
reopen.permissions = TICKET_CREATE
resolve = new,assigned,reopened -&gt; resolved
resolve.operations = set_resolution
resolve.permissions = TICKET_MODIFY
verify = resolved -&gt; verified
verify.permissions = TICKET_MODIFY
close = verified -&gt; closed
close.permissions = TICKET_MODIFY</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.ooso.net/archives/443/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

