跳到主要內容

在 Windows 上安裝 Subversion 獨立伺服器

A.到SVN的官方網站下載svn(.zip)

B.解壓縮到你預設的目錄下 我都是放在C:\Program Files\subversion下


C.設定環境變數

 1.在Path中加上$[Subversion安裝的路徑] 讓之後在執行SVN相關程式比較方便
 2.另外加上以下幾個變數
  SVN_EDITOR=notepad.exe //設定commit message的編輯程式
   LANG = zh_TW.UTF8 //設定SVN的語言語系
  APR_ICONV_PATH = $[Subversion安裝的路徑]\iconv //設定SVN的語言語系


D.建立一個 SVN專案
 svnadmin create $[要建立的專案路徑]    ex: svnadmin create D:\My_Project_SVN
 就會在D:\下建立一個My_Project_SVN的資料夾,並且把相關的檔案複製過去。

E.設定SVN專案的權限
 在D:\My_Project_SVN\conf下有三個檔案
  svnserve.conf 中已經有一些設定了,請參照下面的設定,把 # 註解符號移除:
   [general]
   anon-access = read //匿名者的存取權限 有read , write ,none
   auth-access = write //通過認證者存取權限 有read , write ,none
   password-db = passwd //使用者密碼檔
   authz-db = authz //認證權限設定檔
   realm = CIMS Project


  切換到 authz檔,參考以下的設定:

   [groups] //群組的設定
   CIMS = user1,user2 //群組名稱 = 使用者1, 使用者2

   [/] //[Dir]下的權限設定 r(read),rw(read+write),””(none)
   @CIMS =rw //@群組 = 權限
   User1=rw //使用者名稱 =權限 (*代表所有登入者)
   * = r

  在 gorups 區段中,可以指定哪一些使用者是屬於同一群組 (以逗號分開) 。而設定根目錄及檔案庫權限時,群組名稱前要加上一個 @ 號。

   接著切換到 passwd 檔,以每一行「使用者名稱 = 密碼」的方式來設定使用者的帳號

    [users]
   User1 = pass //使用者=密碼


F.測試SVN Server
  1.打個一個指令模式視窗(cmd)打入
    >svnserve --daemon --root "D:\My_Project_SVN\"
   這樣就會啟動SVN的服務並且是以D:\My_Project_SVN\作為SVN://localhost/的目錄。
  2.在開啟一個指令模式視窗(cmd)打入
   > svn mkdir svn://localhost/myproject

   建立一個資料夾看看
  3.此時如果有設定SVN_EDITOR變數,那麼就會跳出notepad視窗,作為輸入commit message的畫面。
  4.然後會要求你輸入

   Username: User1
   Password for 'sally': *****

   請依照之前在passwd檔中的設定

  5成功的話就會出現
  Committed revision #.
  如果妳有裝TortoiseSVN也可以用TortoiseSVN做測試
  1.打個一個指令模式視窗(cmd)打入

  >svnserve --daemon --root "D:\My_Project_SVN\" //啟動SVN服務
  2.開啟TortoiseSVNRepo_Browser
   URL輸入 SVN://ServerName/
   如果有連線成功就能看到相關的資料

G.將SVNserver設定為windows service
 開啟一個CMD模式視窗,執行

   sc create Subversion binPath= "$[SVN程式的安裝路徑]\bin\svnserve.exe --service --listen-port $[PortNumber] -r $[SVN專案所在路徑]" DisplayName= "$[windows服務名稱]" start= auto depend= TCPIP
 這樣就會把我們這個SVN的專案成為一個windows服務


參考資料
[網站製作學習誌]
[Subversion for Windows 安裝指南]

留言

這個網誌中的熱門文章

[WEB]連線 HTTPS 網站發生驗證失敗導致基礎連接已關閉

某支透過 WebClient 物件去呼叫第三方API的程式,突然有天無法使用 經過測試出現下列的錯誤 基礎連接已關閉: 傳送時發生未預期的錯誤。 InnerException : 驗證失敗,因為遠端群體已經關閉傳輸資料流。 原來是第三方的服務已經不支援 TLS 1.0 我方的程式是用.net Framework 4.0開發了 得強制讓webclient改用 TLS 1.1 或 TLS 1.2 感謝黑大提供解決方法 在程式中加入 ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12  的設定就解決了這個問題 WebClient wc = new WebClient(); ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12; 參考資料:暗黑執行緒

[SQL] SQL依照你的排序條件 找出目前資料的前一筆與下一筆。 Find Pre and Next DataRows of current Datarow by your order condition

有時候需要用SQL找出前一筆跟後一筆資料 用SQL的TOP是沒有辦法做到 這個時候就可以這個語法 select * from ( SELECT TOP 1 * FROM [Article] where Poid<{CurrentPoid} order by CreateDate desc) t union select * from ( SELECT TOP 1 * FROM [[Article] where Poid>{CurrentPoid} order by CreateDate ASC) t2 找出目前PK id前一個與後一個的資料(依照想要排序順序) 那如果指示想要一個資料行呈現的話 可以改用下面的SQL語法 讓這兩筆資料join在同一筆 select Pre.*,Nex.* from (SELECT TOP 1 * ,1 tID FROM [dbo].[Article] where Poid<{CurrentPoid} order by CreateDate desc) Pre left join (SELECT TOP 1 * ,1 tID FROM [dbo].[Article] where Poid>{CurrentPoid} order by CreateDate ASC) Nex on Pre.tID=Nex.tID

[IIS]IIS - ASP.NET 網站基本優化設定 --筆記

運行 ASP.NET 基本上都是掛載在 IIS 上面,但 IIS 預設的設定,並不適合 24 小時不中斷的營運系統。 如果沒有適當的調整,可能會造成使用者的感受不佳,而你又偏偏不會遇到。 本篇將介紹 IIS 運行 ASP.NET 網站的基本優化設定。 應用程式集區 打開 IIS 管理員,到應用程式集區,選擇網站後,開啟進階設定: 1. 一般 (General) 佇列長度 (Queue Length) 預設值是  1000 ,當封包數量在同一時間到達該指定值,之後的 Request 都會變成 HTTP Status 503 Service Unavailable。 例:當有同時間有 1001 個 Request 一起送到 IIS,第 1001 個 Request 會直接回傳 503,不會進到 ASP.NET 處理。 也不是無限大就好,也是要看伺服器等級。 假設調成 10000,也真的有同時 10000 的量,可能會演變成  CUP High  的問題。 因此,這個欄位沒有建議值,網站封包量很大才有需要調整這個欄位。 啟動模式 (Start Mode) 預設值是  OnDemand ,當網站執行回收後,會等到第一個 Request 進來,IIS 才會把網站啟動。 所以第一個連上來的使用者會等到比較久的時間,ASP.NET 初始化完成後,使用者才會得到回應。 建議設定成  AlwaysRunning ,當網站執行回收後,IIS 就會直接啟動 ASP.NET。 2. 回收 (Recycling) 固定時間間隔 (Regular Time Interval) 預設值是  1740 ,也就是每隔 29 小時 IIS 就會把該網站重啟。 很可能重啟當下使用者正在操作,對於要 24 小時不中斷的系統來說,這真的是很不妥當的事情。 如果 ASP.NET 的 Session Mode 是用 InProc,網站重啟使用者就全被登出了。 建議設定成  0 ,也就是關閉定期重啟網站的設定。 如果網站真的需要定期重啟,可以在 特定時間 (Specific Times)  設定,固定每天哪些離峰時間做重啟的動作。 3. 快速失敗保護 (Rapid-Fail Protection) Enabled 預設值是