# Tortoise SVN
### SVN功能
您可以把SVN當作備份伺服器,它可以幫您記住每次上傳到這個伺服器的檔案內容,並且自動地賦予每次的變更一個版本。
---
[](https://)
---
## **安裝 Tortoise**
### 安裝
請複製安裝檔案至桌面,並且安裝完成。檔案於公司網芳路徑:
<font color = #4F4FFF>**`\\nas\公用空間\SoftWare\TortoiseSVN-1.14.0.28885-x64-svn-1.14.0.msi`**
</font>
### 建立使用環境
> #### -步驟01
圖片 <font color = #FF0000>**A**</font> = 新增專案用的資料夾,譬如 IN專案
圖片 <font color = #FF0000>**B**</font> = 滑鼠右鍵點擊。建立SVN位置, "SVN Checkout" <font color = #FF2D00>***↓↓↓↓↓***</font>

> #### -步驟02
圖片 <font color = #FF0000>**A**</font> = 共用sever位置 請參考以下專案
**[NW]:**
**[IN]:**
圖片 <font color = #FF0000>**B**</font> = 自己設置的路徑位置
設定完成之後按下 **'OK'** 將會建立出資料結構<font color = #FF2D00>***↓↓↓↓↓***</font>

---
## 開放權限(server端)
* 開啟 VisualSVN Server

* 增加使用者 **Everyone**

* 權限設定 Read/Write

---
## **操作 Tortoise**
### 滑鼠右鍵
在設置的資料夾按下滑鼠右鍵,將會顯示Tortoise的功能清單(功能如下圖)
圖片 <font color = #FF0000>**A**</font> = **更新版本** <font color = #818181>(獲取版本最新資料 並且不會更新修改過的檔案)</font>
圖片 <font color = #FF0000>**B**</font> = **上傳版本資料** <font color = #818181>(若是新增從來未有的檔案,需要配合Add 功能)</font>
圖片 <font color = #FF0000>**C**</font> = **查看歷史更新** <font color = #818181>(可以查看更新版本,並且恢復到某個版本)</font>
圖片 <font color = #FF0000>**D**</font> = **查看版本前後資料夾對照** <font color = #818181>(可以查看更新版本,並且恢復到某個版本)</font>
圖片 <font color = #FF0000>**E**</font> = **恢復到當前版本** <font color = #818181>(將原本修改的內容都取代)</font>
圖片 <font color = #FF0000>**F**</font> = **新增檔案** <font color = #818181>(新增沒有被記錄在SVN的檔案,再藉由SVN Commit上傳)</font>
圖片 <font color = #FF0000>**G**</font> = **複製SVN網址**
圖片 <font color = #FF0000>**H**</font> = **設置** <font color = #FF2D00>***↓↓↓↓↓***</font>

---
### SVN 資料狀態
圖片 <font color = #FF0000>**A**</font> = **符合SVN目前版本** <font color = #818181>(SVN在當前版本有被記錄)</font>
圖片 <font color = #FF0000>**B**</font> = **SVN未識別檔案** <font color = #818181>(未被SVN辨識,在SVN操作commim將不會被控制)</font>
圖片 <font color = #FF0000>**C**</font> = **Add新增檔案** <font color = #818181>(SVN未登入名稱,在SVN操作commim將被新增至SVN資料庫)</font>
圖片 <font color = #FF0000>**D**</font> = **與當前版本內容不符** <font color = #818181>(若檔案名稱有被SVN登記,但內容有所差異,將會顯示此符號。commim可以上傳最新修改需求)</font> <font color = #FF2D00>***↓↓↓↓↓***</font>

---
### 使用 Commit 上傳版本資料
圖片 <font color = #FF0000>**A**</font> = **版本修改說明** <font color = #818181>(盡量填寫更新目的,讓其他人好辨識控制需求)</font>
圖片 <font color = #FF0000>**B**</font> = **上傳-刪除的檔案** <font color = #818181>(目標被修改名稱,或是真的刪除檔案,將會被判斷刪除需求上傳更新SVN)</font>
圖片 <font color = #FF0000>**C**</font> = **上傳-使用Add 新增檔案** <font color = #818181>(SVN沒有被登入該檔案名稱,將被新增到SVN位置上)</font>
圖片 <font color = #FF0000>**D**</font> = **上傳-修改檔案** <font color = #818181>(SVN有被登入該檔案名稱,將通知SVN更換檔案)</font>
圖片 <font color = #FF0000>**E**</font> = **不上傳-未使用Add 新檔案** <font color = #818181>(SVN沒有被登入該檔案名稱,也沒有Add新增需求,將不會上傳)</font>
圖片 <font color = #FF0000>**F**</font> = **確認上傳檔案** <font color = #818181>(打勾將會是上傳需求。*某些需求的預設會取修勾選)</font>
圖片 <font color = #FF0000>**G**</font> = **執行上傳** <font color = #FF2D00>***↓↓↓↓↓***</font>

---
### 使用 Show log 查看過往版本
圖片 <font color = #FF0000>**A**</font> = **查看過往版本** <font color = #818181>(可以使用右鍵,叫出選項,並且恢復到指定版本)</font>
圖片 <font color = #FF0000>**B**</font> = **查看更新者留言**
圖片 <font color = #FF0000>**C**</font> = **查看更新內容** <font color = #818181>(點擊滑鼠至指定檔案,將會秀出當時檔案修改差異)</font>
圖片 <font color = #FF0000>**D**</font> = **版本操作選單** <font color = #818181>(可以在 "圖片A" 使用右鍵,叫出選項)</font>
圖片 <font color = #FF0000>**E**</font> = **恢復指定版本** <font color = #818181>(恢復至選擇的當前版本 所有修改的檔案將會被恢復)</font>
圖片 <font color = #FF0000>**F**</font> = **查看檔案** <font color = #818181>(查看檔案,將會秀出當時檔案修改差異)</font><font color = #FF2D00>***↓↓↓↓↓***</font>

###### tags: `教學`