• <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.10,Trac程序

            §    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 安裝Pythonmod_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。

             

            色婷婷噜噜久久国产精品12p| 久久久精品国产| 日韩va亚洲va欧美va久久| 国产福利电影一区二区三区久久久久成人精品综合 | 午夜不卡888久久| 麻豆av久久av盛宴av| 99热热久久这里只有精品68| 久久精品无码一区二区三区免费| 久久夜色精品国产噜噜麻豆| 少妇久久久久久被弄到高潮| 久久久久久久精品妇女99| 欧美日韩中文字幕久久久不卡 | 国产L精品国产亚洲区久久| 无码任你躁久久久久久| 久久国产精品久久| 久久香蕉超碰97国产精品| 国产免费久久精品99久久| 久久精品国产2020| 久久精品成人影院| 久久久精品免费国产四虎| 91视频国产91久久久| A狠狠久久蜜臀婷色中文网| 久久亚洲日韩精品一区二区三区| 国产精品久久久久一区二区三区 | 色综合久久中文字幕综合网| 国内精品久久久久影院优| 亚洲精品99久久久久中文字幕| 人妻丰满?V无码久久不卡| 国产成人精品久久一区二区三区| 久久这里有精品| 久久国产亚洲精品| 日本加勒比久久精品| 久久久99精品成人片中文字幕| 久久国产高清字幕中文| 久久久精品人妻一区二区三区四 | 婷婷综合久久中文字幕蜜桃三电影| 久久精品中文字幕大胸| 久久久精品久久久久特色影视| 久久电影网2021| 18岁日韩内射颜射午夜久久成人| 国产成人久久精品区一区二区|