安装与使用 Trac 来管理项目
1?概要
以 Windows 平臺為例,講述一下有關 Trac 的基本配置與使用,同時分享一下有關 Trac 的項目管理經驗。
2?安裝 Trac 前的準備工作
2.1?準備工作
安裝時,注意版本的問題。如setuptools-0.6c11.win32-py2.7就是用于windows 32位,python2.7的。
3?安裝 Trac
用 easy_install 來安裝 Trac,詳細的說明可以看官方文檔,或者在這一步,直接下載 Windows 的 Trac 安裝文件來進行安裝,直接下載來安裝很方便,不過注意版本。
4?配置Trac環境
完成上述的安裝后,就可以創建一個 TracEnvironment,它是 Trac 存儲信息的地方,如 wiki pages, tickets, reports, settings 等。
4.1?通過 trac-admin 創建一個 Trac Environment
我的做法是先在d盤新建一個trac目錄,然后執行:
$ trac-admin d:/trac/mytest initenv配置環境之前,注意此外trac-admin能用是因為加到了PATH環境變量里了。python里的script文件里有trac-admin.exe文件。將script文件目錄加到PATH變量里。
然后根據提示輸入項目的名字(myproject),數據庫連接字符串(默認),你的源代碼資源庫路徑,根據相應的提示,輸入相關信息即可。
如果提示如下錯誤:
C:\Python27\Scripts>tracd -p 8080 e:/trac/MyTest Traceback (most recent call last):File "C:\Python27\Scripts\tracd-script.py", line 5, in <module>from pkg_resources import load_entry_pointFile "C:\Python27\lib\site-packages\pkg_resources.py", line 2603, in <module>working_set.require(__requires__)File "C:\Python27\lib\site-packages\pkg_resources.py", line 666, in requireneeded = self.resolve(parse_requirements(requirements))File "C:\Python27\lib\site-packages\pkg_resources.py", line 565, in resolveraise DistributionNotFound(req) # XXX put more info here pkg_resources.DistributionNotFound: Genshi>=0.6則表明沒有安裝 Genshi。
4.2?運行成功后,即可以開啟 Trac 服務
可以通過 tracd 命令來開啟 Trac 服務,命令如下:
tracd --port 8000 E:\Trac\MyTest啟動成功后,即可通過網址:
http://localhost:8000/MyTest來訪問相關的 Trac 服務,這時即訪問 MyTest 這個工程。
其它機器也可以通過訪問這臺機器的 IP 加端口來訪問這個服務。最基本、最簡單的使用,可以不用 Apache 來搭建 Web 服務器。
4.3?添加用戶(在用戶管理和身份驗證里有詳細說明)
剛安裝好的 Trac,并沒有提供一個用戶注冊面板,也沒有設置管理員權限,這個時候,我們需要自己來添加用戶。
這一點經常讓我這種習慣了用其它管理系統的人摸不著頭腦,系統怎么沒有讓我設置相關的管理員用戶名和密碼呢?
最簡單的方法是這樣的:
直接用?Generating Passwords Without Apache?里提到的方法:
$ python trac-digest.py -u username -p password >> c:\digest.txt $ tracd --port 8000 --auth=proj_name,c:\digest.txt,trac c:\path\to\proj_name直接就可以把 username 添加到某個工程里,并可以登陸了。
4.4?Trac 管理員密碼的設置
單純把某個用戶添加到了工程里,并不能讓這個用戶有管理工程的權限,所以,需要單獨分配權限給這個用戶:
比如說,我要分本給 admn 這個用戶管理員權限,可以用下面的語句:
$ trac-admin /path/to/projenv permission add admin TRAC_ADMIN現在重啟一下 Trac 服務器,你再用 admin 登陸,就可以看到右邊有一個 Admin 的控制面板了。
最好的辦法,你給不同的 projects,添加不同的用戶名,為不同的 project,開啟不同的端口,這樣就不會相互影響了。
4.5?有了管理員密碼,就可以進行一些基礎配置
- 不讓匿名用戶看到任何內容
出于對工作及公司的安全性考慮,我們完全有理由不讓匿名用戶看到 Trac 里的任何內容。
只需要在管理面板 Admin ==> General ==> Permissions 里,把 Subject 為 anonymous 的相應權限全部去掉即可。
CANNOT INCLUDE FILE ../addon/ads-bar.org
5?更加高級的功能
5.1?用 Apache 服務器來提供網頁版服務
用第4種方法開啟的服務,只能在本機使用,如果需要讓一個團隊都能訪問的話,需要開啟一個 Apache 服務器。
http://trac.edgewall.org/wiki/TracInstall#RunningTraconaWebServer
5.2?提供網頁注冊用戶名等功能
可以直接用 easy_install 來安裝
注意一定要像圖中一樣,開啟那個右上角的 1 字符。
realm 的用處是區分這個用戶名屬于哪里的,現在這樣,很容易地區分出來。和之前 tracd 命令啟動時帶的參數一樣。
還可以針對不同的工程,設定不同的密碼文件,這樣可以有效地隔離不相干人群。
使用這個還有一個需要注意的,就是,公司內部使用的話,可以把煩人的?Email Verification?關掉。
5.3?提供郵件發送 ticket 提醒等功能
用 Gmail 的話,可查看這篇日志,有關如何設置用 Gmail 來發提醒郵件的功能。
5.4?提供用戶名補全等功能
默認情況下,Trac 需要你在分 Ticket 時,自己填空。在項目人員過多的情況下,這顯示是不現實的辦法。
還好,可以使用?AutocompleteUsersPlugin?這個來自動補全與提示,使用后感覺不錯。
5.5?導出為 Excel 或 Word
可以導出數據為 CSV 或 Text 格式:
Trac also exports reports and custom queries to CSV, which will open in Excel directly. Click the "Comma-delimited Text" link near the bottom.
5.6?Trac 的備份
對于 Trac 這種團隊用的東西,備份是非常重要的。成一數據丟了,項目也就完蛋了。
Trac 支持熱備份,可以很方便地用下面的命令來對某個工程進行備份:
$ trac-admin /path/to/projenv hotcopy /path/to/backupdir注意,這個只能是對工程一個一個的進行備份,其實就是把 Trac 工程的所有文件都打了一個包。
所以,為了備份簡單,應該要把密碼文件也放到 projenv 的目錄里,這樣備份起來,會一起把用戶名和密碼文件打包的。
只要備份完全,你完全可以在別外一臺機器上,在另一臺機器上配置好 Python 環境,再安裝好 Trac ,再把這些備份的文件,扔到一個運行目錄里,再用同樣的命令就可以直接把該 project 跑起來了。
非常便利!
5.7?Trac 換主題
默認的 Trac 主題并不算十分好看,這里有大把主題可以換:
http://trac-hacks.org/wiki/theme
5.8?Trac 上搭建一個博客系統
可以通過這個博客系統及時通知團隊有什么新的更新內容之類的。
安裝插件:Self-contained Blog plugin
5.9?Trac 作為服務程序開機啟動
對于 Linux 系統來說,需要添加一個開機啟動程序,還是很簡單的。可以使用 /etc/init.d 目錄下的腳本來完成這個任務。
詳細的腳本可以參考這個文章:Start Trac on Startup – Init.d Script for tracd
注意修改里面的 IP、端口以及目錄參數。我這里好像把IP設置成 127.0.0.1 好像并不能讓別人訪問,所以還是設成你電腦的正式 IP 比較好。或是有一個技巧,在這里直接把 IP 設為 0.0.0.0。
有了這個腳本,你只需要用如下命令重啟 tracd 服務器即可:
$ sudo /etc/init.d/trac start $ sudo /etc/init.d/trac stop如果是在 Windows 下,則有三種選擇來讓它開機啟動。我喜歡用 cygwin 的 cygrunsrv.exe 來安裝該服務。例如,如果我 Windows 本地的 Trac 啟動命令是:
tracd --port 8999 --auth=All-in-Trac,E:\water\Basket\Trac\All-in-Trac\conf\password.digest,trac E:\water\Basket\Trac\All-in-Trac則在 Cygwin 里可用如下命令來把 tracd 注冊成 Windows 系統服務:
cygrunsrv --install tracd --path /cygdrive/c/Python27/Scripts/tracd.exe --args '--port 8999 --auth=All-in-Trac,E:\water\Basket\Trac\All-in-Trac\conf\password.digest,trac E:\water\Basket\Trac\All-in-Trac'6?Trac 的缺陷
針對 Trac 0.12 來說的缺陷,
- 沒有辦法來定制 component 和 sub-component 這樣的層級關系;
- 各種功能都齊全,可是各種功能都不強大,樣樣都不精;
- 沒有辦法控制用戶可以看到哪個 component 這樣的權限,從而不方便對大型項目進行管理;
- 好像沒有語言包這種機制,不太好弄。
- 沒有辦法用郵箱作為用戶名。
- 流程定制能力太差,好像沒辦法定制 driver 和 rider 之類的東西。
- ower 這種東西,沒有辦法用下拉列表的方式來表示。
[fn:author] 臺灣著名計算機技術作家。
轉載于:https://www.cnblogs.com/ada-zheng/p/3311676.html
總結
以上是生活随笔為你收集整理的安装与使用 Trac 来管理项目的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Centos 7 安装 Haproxy
- 下一篇: CSS 基本样式