版本控制-VisualSVNservice與TortoiseSVN

簡介

版本控制分爲多人協作與個人作業兩種。

多人協作

多人協作版本控制需要有一個服務器建立倉庫repository來保存、管理不同的版本,其作用細分爲建立項目,建立用戶,管理權限,分組控制等。服務器建立的用戶包含用戶名和密鑰,用於遠程用戶登陸。服務器倉庫repository使用VisualSVNservice建立,客戶端文件使用TortoiseSVN建立。

多人協作

服務器搭建

  • 下載VisualSVNservice,安裝
  • 打開VisualSVNserviceManager
    這裏寫圖片描述
    *右擊Repositorise選擇create new repository
    這裏寫圖片描述
    此處有兩個選項
    這裏寫圖片描述

建立服務器倉庫repository - FSFS

  • 選擇FSFS選項,點擊下一步會提示輸入repository name
    這裏寫圖片描述
  • 下一步選擇empty repository即可
    這裏寫圖片描述
  • 下一步保持默認,create即可,可以在建立之後修改權限
    這裏寫圖片描述
  • 建立test後,如下
    這裏寫圖片描述

建立用戶

  • 右擊Users選項
    這裏寫圖片描述
  • 選擇create user
    這裏寫圖片描述
    輸入需要加入此項目的用戶和密鑰
    這裏寫圖片描述

建立組group

  • 右擊Groups,選擇create group
    這裏寫圖片描述
  • 輸入group的名字,點擊add按鈕可以把之前建立的用戶加入到group中
    這裏寫圖片描述

項目人員分配

  • 右擊test選擇properties
    這裏寫圖片描述
  • 點擊add,可以添加group和user,添加之後可以在permissions處修改權限
  • 這裏寫圖片描述

服務器地址

  • 右擊test選擇copy URL to Clipboard,把這個鏈接發給參與的user即可。
    這裏寫圖片描述
    注意:複製之後格式是 { http://XXX-PC/svn/test/ },當所有成員都在同一個局域網中時,可以通過用戶名直接查找到的,但是若不是同一局域網需要把用戶名改成服務器的IP地址{http://192.168.XXX.XXX/svn/test/}即可。

服務器物理存儲

  • 右擊test選擇properties
    這裏寫圖片描述
  • 選擇details可以查看存儲位置等信息
    這裏寫圖片描述
    如Path: G:\Repositories\test打開此位置可以查看到此文件夾。

到此服務器端倉庫Repositories建立完成


客戶端文件搭建

  • 下載TortoiseSVN,安裝,安裝完成對文件夾右擊會有兩個選項
    這裏寫圖片描述
  • 和服務器連接需要先選擇需要存放和同步文件的位置,需要一個文件夾如下,可根據自己需要選擇合適的文件夾
    這裏寫圖片描述
  • 右擊該文件夾選擇SVN checkout…出現下面對話框
    這裏寫圖片描述
    在URL of repository輸入框中輸入服務器的地址{ http://XXX-PC/svn/test/ }
    checkout directory 輸入框中是當前文件夾位置,其它可以保持默認即可。
    這裏寫圖片描述
    OK即可。
    如果提示輸入用戶的話,輸入服務器建立的用戶名和密鑰。

加入文件

  • 向該文件夾加入文件,若此文件需要上傳到服務器,需要添加上傳,操作爲選中文件右擊選add即可
    這裏寫圖片描述
    add之前文件狀態
    這裏寫圖片描述
    add之後文件狀態
    這裏寫圖片描述
    文件夾之前狀態
    add之後狀態

添加文件上傳服務器


  • 右擊文件夾選擇SVN Commit…
    這裏寫圖片描述
  • 在recent message輸入框中加入修改信息,方便自己和其他用戶查看修改信息,changes mode輸入框中可以選擇要上傳的文件。
    這裏寫圖片描述

showlog可以查看修改歷史
這裏寫圖片描述
OK即可。
文件狀態
這裏寫圖片描述


* 此時的visualSVN server狀態*
這裏寫圖片描述

更新文件,保持與服務器同步

如果其它user上傳了test3.txt文件,需要同步的,通過以下操作:
* 右擊文件選擇SVN update
這裏寫圖片描述
這裏寫圖片描述
OK即可。
此時文件夾更新爲
這裏寫圖片描述
服務器狀態
這裏寫圖片描述

不同的客戶端可以通過以上方法上傳和下載服務器端的文件。showlog功能可以查看修改信息。


更改登陸用戶

tortoiseSVN在一臺電腦上默認只輸入一次用戶登陸信息,系統會自動記錄此次的登陸信息,若再次在本電腦上建立新文件夾,SVN checkout下載文件,是不會要求你重新輸入用戶名和密鑰的,默認使用之前記錄的用戶信息,若需要修改登陸用戶,要執行一下操作
* 同一臺電腦上兩個同一用戶名的文件夾
這裏寫圖片描述
* 修改testSVN2的用戶爲zhou,選擇文件夾右擊->tortoiseSVN->settings
這裏寫圖片描述
* 選擇saved Data ->clear
這裏寫圖片描述
* 在出現的對話框中,勾選要清除的用戶,確定即可
這裏寫圖片描述
* 此時再次對該文件夾執行 右擊->SVN Update,會出現新的用戶登陸信息,輸入新的用戶名和密鑰即可登陸。
這裏寫圖片描述

衝突解決

多人協作,很容易出現衝突,TortoiseSVN提供了對應的解決方式。
衝突出現在,用戶沒用更新到最新文件,就修改了其它用戶已經修改過得文件,此時在上傳時即SVN commit…時會提示因爲衝突而無法上傳,需要打開衝突文件,解決衝突即可。
* 用戶wang首先修改testSVN文件夾下的test1.txt並上傳到服務器,同時用戶zhou修改testSVN2文件夾下的test1.txt並試圖上傳到服務器
這裏寫圖片描述
* 上傳testSVN2文件夾時,檢測到了衝突conflicted
這裏寫圖片描述
* 點擊showlog會出現,wang修改了此文件導致conflicted
這裏寫圖片描述
* 點擊確定之後再次上傳,會出現test1.txt標紅
這裏寫圖片描述
* 雙擊標紅的文件test1.txt,出現Edit界面
這裏寫圖片描述
* 可以選擇文件塊右擊選擇放置位置,當然也可以手動編輯解決衝突
這裏寫圖片描述
* 修改之後的文件,保存即可
這裏寫圖片描述
* 此時上傳界面紅色文件標記已經消失,可以上傳了
這裏寫圖片描述

常出現的標誌
無文件更新
這裏寫圖片描述
文件被修改等待上傳
這裏寫圖片描述
文件衝突
這裏寫圖片描述


個人作業

只需要安裝有TortoiseSVN客戶端即可實現。這種模式下repository在自己電腦上建立
這裏寫圖片描述

建立本地倉庫repository

*新建文件夾,執行一下操作
這裏寫圖片描述
* 複製倉庫地址,建立文件上傳文件時使用,OK即可
這裏寫圖片描述

建立本地上傳文件夾


  • 建立同步上傳文件夾localUser,右擊->SVN Checkout…
    這裏寫圖片描述
    *在出現的對話框中輸入之前建立倉庫的地址即可
    這裏寫圖片描述

若之前未複製倉庫地址可以通過,右擊倉庫文件夾->TortoiseSVN->Repo-browser,查看
這裏寫圖片描述
這裏寫圖片描述

對本地上傳文件夾的使用方法同服務器中的本地文件夾使用方法一致


說明:
1. 倉庫repository建立之後,不需要修改,通過客戶上傳和同步自動修改。
2. 服務器和客戶端可以在同一臺機器上,但是客戶端和服務器是獨立的,客戶端需要用戶名和密鑰登陸。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章