Tuesday, August 19, 2008

安裝 Apache/Subversion/Trac on Windows

安裝 Apache/Subversion/Trac on Windows

主要參考:


軟體持續在更新,所以所需的版本及套件依需求會有不同。以下為此次安裝過程中的軟體

  • apache_2.0.63-win32-x86-no_ssl.msi Ref
  • python-2.5.2.msi Ref
  • svn-win32-1.5.1.zip Ref
  • Trac-0.11.1.win32.exe Ref
  • svn-python-1.5.1.win32-py2.5.exe Ref
  • setuptools-0.6c7.win32-py2.5.exe Ref
  • Genshi-0.5.win32-py2.5.exe Ref

目錄架構,參考 Ref

S:
|
|- AppServ (伺服器相關程式)
| |
| |- Apache2 ( Apache 的主要程式檔)
| |
| |- python ( Python 的主要程式檔)
| |
| |- svn ( Subversion 的主要程式檔)
|
|- Repository (檔案庫)
| |
| |- svn
| |
| |- trac

安裝/設定

  • apache_2.0.63-win32-x86-no_ssl.msi
    • Install to 改到 D:\AppServ ,這樣下方 Apache Runtime 的 Install to 會自動變成 S:\AppServ\Apache2 。
    • 我使用預設的 port:80
    • 測試是否可看見網頁 http://localhost
  • svn-win32-1.5.1.zip
    • decompress the file to AppServ and rename to svn
    • copy mod_authz_svn.so and mod_dav_svn.so from svn/bin to AppServ\Apache2\modules
    • 將 S:\AppServ\svn\bin 加到 PATH 系統環境變數裡。
  • python-2.5.2.msi
    • Install to S:\AppServ\python
    • 安裝好後,將 S:\AppServ\python 加入 PATH 系統環境變數裡
  • 以下這幾個執行檔會自動在 Python 的安裝目錄中註冊該模組
    • Install svn-python-1.5.1.win32-py2.5.exe
    • Install Trac-0.11.1.win32.exe
    • setuptools-0.6c7.win32-py2.5.exe
    • Genshi-0.5.win32-py2.5.exe
    • mod_python-3.3.1.win32-py2.5-Apache2.0.exe
      • 需要指定 Apache2的安裝位址 S:\AppServ\Apache2,這時安裝程式會把 mod_python.so 複製到 S:\AppServ\Apache2\modules 底下。
  • Svn/Trac project 設定,請參照 http://blog.roodo.com/jaceju/archives/2703935.html
    • 我目前並未使用任何 plugin
    • 建立 svn 檔案庫
      S:\>cd Repository\svn
      S:\Repository\svn>svnadmin create projectname
    • 建立 trac 檔案庫
      • S:\Appserv\python\Scripts>trac-admin.exe S:\
        Repository\trac\projectname initenv
    • 設定預設使用者
      • S:\Appserv\python\Scripts>trac-admin.exe S:\
        Repository\trac\projectname permission add admin
        TRAC_ADMIN

使用

  • Svn, Ref
    • 取出專案 (此專案必需在 Serv 已建置好了)
      svn co http://10.2.7.65/svn/test
    • 新增單個 檔案/資料夾
      cd test
      mkdir tmpDir
      svn add tmpDir
      svn ci -m 'message' tmpDir
    • 新增一整個資料夾的內容
      mkdir -pv a/aa/{a1,a2}
      mkdir -pv a/bb/{b1,b2}
      svn import a http://10.2.7.65/svn/test/a
    • svn 做壞了,不想要,重建一個時,需要 resync trac with svn
      • s:\>cd Repository\svn
      • s:\Repository\svn>rm -rf projectname
      • s:\Repository\svn>svnadmin create projectname
      • # 若 svn project name 不同了,需要修改 S:\Repository\trac\zeppelin\conf\trac.ini -> [trac] -> repository_dir = s:\Repository\svn\projectname
      • S:\AppServ\python\Scripts>trac-admin.exe S:\Repository\trac\projectname resync

其它

  • 圖片(header_logo)無法正常顯示: please configure the [header_logo] section in trac.ini
    • assigning 一張預設的圖給 header_logo: source
    • S:\Repository\trac\zeppelin\conf\trac.ini -> [header_logo] -> src = trac_banner.png
    • trac_banner.png in S:\AppServ\python\Lib\site-packages\trac\htdocs

No comments: