• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            基于Trac的項目管理系統

            Posted on 2007-04-04 14:55 小蘇 閱讀(2239) 評論(0)  編輯 收藏 引用

            這里我們要構建一個基于Trac的項目管理系統。代碼管理使用subversion,項目管理使用Trac。所需要的軟件包如下:

            §    Trac 0.10Trac程序

            §    Apache 2.0.59,Web服務器

            §    subversion 1.4.3,代碼版本管理工具

            §    Python 2.4.4,Python解釋器

            §    mod_python,PythonApache模塊

            §    ClearSilver 0.9.4,Python的模版工具

            §    mxDateTime 2.0.3Python必須庫文件

            很遺憾subversion現在仍然不支持最新的Apache 2.2系列,因此我們只能使用Apache 2.0系列。而pyPgSQL 2.5.1版和ClearSilver 0.9.4不支持Python 2.5,因此只能用 Python 2.4

            1 安裝Apachesubversion

            Apache官方網站上下載2.0.59版的msi安裝包,執行即可。為方便起見,建議將Apache安裝到根目錄下,例如 D:\Apache。安裝時的一些細節可以參考這篇文章。安裝完畢后用瀏覽器訪問 http://localhost/ ,如能看到Apache的起始頁面即安裝成功。

            subversion上下載zip包解壓縮即可,目前最新版本為svn-win32-1.4.3.zip。假設解壓到 D:\svn下。

            然后將subversionApache集成在一起(也可參考這篇文章)。將 D:\svn\bin 下的以下文件復制到 D:\Apache\Apache2\modules 目錄下:

            §    mod_authz_svn.so

            §    mod_dav_svn.so

            D:\svn\bin 下的以下文件復制到 D:\Apache\Apache2\bin 目錄下:

            §    libdb44.dll

            §    intl3_svn.dll

            然后建立代碼倉庫目錄 D:\repos

            Create Repository

            D:\> svnadmin create d:\repos

             Create skeleton repository structure in d:\temp\project

            Example:

            /project
              /vendor
                /tags
                /trunk
                  files
              /projectname
                /branches
                /tags
                /trunk
                  files

            Build Repository Tree

            D:\> svn import d:\temp\project file:///d:/repos -m "Initial Load"

            Create local sandbox

            D:\> svn checkout file:///d:/repos d:\project

             

            然后修改 D:\Apache\Apache2\conf\httpd.conf,查找下面這一行,去掉前面的 # 號。

             LoadModule dav_module modules/mod_dav.so

            然后在其附近添加以下這一行:

             LoadModule dav_svn_module modules/mod_dav_svn.so

            之后在 httpd.conf 的末尾添加以下內容:

             <Location /repos>

                 DAV svn

                 SVNParentPath D:/repos

             </Location>

            然后重新啟動Apache。

            2 安裝Python、mod_pythonSVN binding

            Python官方網站下載Python 2.4msi安裝包進行安裝,假設安裝到D:\Python24目錄下。

            mod_python的下載頁面 上下載mod_python 3.3.0bWin32(mod_python-3.3.0b.win32-py2.4-Apache2.0.exe)。安裝時它會問你Apache的安裝位置,輸入 D:\Apache\Apache2 即可。

            最后打開 D:\Apache\Apache2\conf\httpd.conf,查找 LoadModule,加入下面這一行:

             LoadModule python_module modules/mod_python.so

            然后重新啟動Apache。

            最后要安裝subversion binding使Python支持subversion。到剛才下載subversion的地方 下載 svn-win32-1.4.3_py2.4.exe 文件并安裝。

            3  Install SQLite

                  http://www.sqlite.org
                   復制SQLite3.exed:\python\sqlite.exe

                  Install PySQLite

                 http://pysqlite.sourceforge.net

                  自動安裝PySQLite

            安裝ClearSilvermxDateTime

            ClearSilver的下載頁面選擇0.9.4py2.4版下載 (win32/clearsilver-0.9.14.win32-py2.4.exe)并安裝。

            Trac官方文檔中雖然沒有說明mxDateTime,但是建立項目時Trac會報錯,要求你安裝mxDateTime庫。從mxDateTime主頁下載并安裝。

            安裝Trac

            最后終于輪到主角Trac出場了。在Trac下載頁面上下載 Trac安裝程序(trac-0.10.3.win32.exe)并安裝。

            然后建立項目目錄 D:\projects

            然后打開 D:\Apache\Apache2\conf\httpd.conf,在最末尾添加以下內容:

             <Location /projects>

                 SetHandler mod_python

                 PythonHandler trac.web.modpython_frontend

                 PythonOption TracEnvParentDir D:/projects

                 PythonOption TracUriRoot /projects

             </Location>

            然后重新啟動Apache,訪問 http://localhost/projects/,你會看到Available Projects字樣,則說明安裝成功。至此安裝全部完畢。

            建立項目

            下面我們要建立一個實際開發中使用的項目。我們為這個項目命名為 hello。

            首先要建立一個代碼倉庫。打開命令行,輸入以下命令:

             D:

             cd D:\repos

             md hello

             cd hello

             D:\svn\bin\svnadmin create .

            然后打開瀏覽器,訪問 http://localhost/repos/hello/ 。如果你上面的設置都正確,你將會看到下面的內容:

             Revision 0: /

             ----------------------------------------------

             Powered by Subversion version 1.4.3 (r23084).

            即說明代碼倉庫建立成功,而 http://localhost/repos/hello/ 就是代碼倉庫的 URL

            然后建立Trac項目。打開命令行,輸入以下命令:

             D:

             cd D:\projects

             D:\Python24\python.exe D:\Python24\Scripts\trac-admin hello initenv

            trac-admin Trac的管理工具,hello為項目名,initenv命令指示Trac新建一個項目。然后按照下面的內容輸入:

             Project Name [My Project]> Hello World

             Database connection string [sqlite:db/trac.db]> sqlite:db/trac.db

             Repository type [svn]> svn

             Path to repository [/path/to/repos]> D:/repos/hello

             Templates directory [D:\Python24\share\trac\templates]>

            如果創建失敗,則需要刪除 D:\projects\hello 之后再重試。

            最后打開瀏覽器,訪問 http://localhost/projects 即可看到Trac的界面了。

            設置HTTP認證

            Trac界面右上方有個Login菜單,通過這個菜單登錄之后,創建bug或者做其他修改時就不用每次都輸入用戶名。不過這個菜單需要單獨配置才能正常工作。

            首先我們要生成密碼文件。打開命令行,輸入以下命令:

             D:

             cd D:\projects

             D:\Apache\Apache2\bin \htpasswd  -cm  d:\ projects \.htaccess  admin

             Automatically using MD5 format.

             New password: *****

             Re-type new password: *****

             Adding password for user admin

            即可生成密碼文件 .htpasswd。以后向該密碼文件里追加用戶只需這樣即可。

             D:\Apache\Apache2\bin\htpasswd -m d:\ projects\.htaccess user

             

            然后編輯 httpd.conf,在最末尾加入以下內容:

             <LocationMatch "/projects/[^/]+/login">

                 AuthType Basic

                 AuthName "Trac"

                 AuthUserFile D:/projects/.htaccess

                 Require valid-user

             </LocationMatch>

            然后重新啟動Apache

             

            一本久久精品一区二区| 99国产欧美久久久精品蜜芽| 国产成人久久久精品二区三区| 精品一区二区久久| 久久久久综合国产欧美一区二区| 久久午夜夜伦鲁鲁片免费无码影视| 亚洲AV无码1区2区久久| 久久综合狠狠综合久久激情 | 久久久精品人妻无码专区不卡| 亚洲国产成人精品女人久久久 | 久久国产精品久久精品国产| 久久成人永久免费播放| 久久久久亚洲av无码专区导航| 久久精品无码一区二区三区免费 | 亚洲女久久久噜噜噜熟女| 国产成人无码精品久久久免费 | 国产成人精品久久| 久久强奷乱码老熟女网站| 狠狠色噜噜狠狠狠狠狠色综合久久| 久久综合久久综合亚洲| 国产 亚洲 欧美 另类 久久| 久久亚洲中文字幕精品有坂深雪| 四虎国产精品免费久久| 亚洲天堂久久精品| 成人久久综合网| 2021久久精品国产99国产精品| 伊人久久大香线蕉av不变影院| 亚洲国产成人精品91久久久 | 国产精品视频久久久| 亚洲国产精品无码久久久蜜芽| 久久综合九色综合久99| 久久久艹| 日韩十八禁一区二区久久| 久久se精品一区二区影院| 久久精品国产一区| 久久99精品久久久久久9蜜桃| 伊人热人久久中文字幕| 久久99精品国产麻豆婷婷| 亚洲?V乱码久久精品蜜桃 | 欧美久久综合性欧美| 久久96国产精品久久久|