Visual Studio Online 版控

影片可參考保哥的教學:

Visual Studio Online 與 Git 版本控管實戰

一、使用Visual Studio Online

首先連上http://www.visualstudio.com,點選「產品/Visual Studio Online/Visual Studio Online Basic」:

點選「立即取得Visual Studio Online Basic」:

建立自訂帳號:

二、建立儲存庫

先連上自己的Visual Studio Online專案:

https://[你的id].visualstudio.com

點選「new」:

輸入專案名稱,版本控制記得選取「Git」,再按「Create Project」,這樣遠端專案就建立完成了:

接下來要建立本機的專案!

點選「Open with Visual Studio to Connect」就會自動開啟本機的Microsoft Visual Studio 2013 程式:

輸入您Microsoft帳號:

接著請您自行新增一個空白專案,假設此方案名稱是「WebApplication1」:

由於Visual Studio 預設有兩種版控,我們要選GIT,請點選「工具/選項/Source Control」,並選取「Microsoft Git 提供者」:

接下來我們就能開始使用GIT版控囉!在剛才新增的WebApplication1方案按右鍵選
「將方案加入至原始檔控制」:

你可以開啟WebApplication1專案所在目錄,就能看到出現.git資料夾,
表示專案已加入Git控制:

「將方案加入至原始檔控制」就是執行git init

記得版控要選「GIT」啊:

PS.處理斷行字元問題

新專案

接下來有一個很重要的問題要解決,就是Visual Studio Tools for Git 處理斷行字元 (CRLF) 的問題,會導致
你在使用不同版控軟體,如Git for Windows 或 TortoiseGit 會造成檔案狀態不一致性,詳細請
參考這裡
這裡
解決方式如下:

  1. 檢查是否有 .gitattributes 檔
  2. 刪除.git\ms-persist.xml
  3. 執行指令,設定自動轉換斷行符號:
git config --global core.autocrlf true
git config --global core.safecrlf true

舊專案

如果你的專案已經做git版控一段時間了,你一直因為斷行問題,造成不同版控軟體無法讓檔案狀態有一致性時,怎麼辦呢?
通常會遇到這個問題,就是你目前工作區的檔案斷行字元可能有LF也有CRLF,此時要怎麼解決呢?
請參考5.5解決斷行問題

三、將專案加入GIT版控

剛才建好的專案並沒有加入控制,怎麼加入呢?首先開啟「檢視/Team Explorer」:

出現「Team Explorer」功能頁籤,這個頁籤很重要喔!接下來的版控操作全部在此功能頁籤處理:

在使用版控前,先做GIT設定。點選「設定/Git設定」,輸入您的使用者名稱、電子郵件、儲存位置後,按「更新」:

設定完成後,就可以做版本提交(Commit)了,點選「變更」,接著輸入提交訊息後按「認可」:

這樣就完成版本提交了。

Visual Studio的「認可」,就是我們常說的提交(Commit)

所以按下「認可」其實就是git commit指令

四、連接遠端專案

剛才做的版控都在本地進行,如果要上傳至Visual Studio Online怎麼做呢?
接下來這個步驟是重點!如何將本地WebApplication1與遠端test儲存庫建立連結呢?

首先上Visual Studio Online網站,點選test專案的code後,將此專案的git路徑複製下來:

接著至「Team Explorer」頁籤點選「未同步處理的認可」,將網址貼上,並按「發行」,這樣就能和遠端專案建立連結了:

此動作就是 git remote add origin [遠端git路徑]

同時也一併成功將檔案上傳至Visual Studio Online了:

此動作就是 git push origin master

五、提交(Commit)新的版本

再來就要開始修改程式碼了...coding...coding...

假設我在專案裡新增一個WebForm1.aspx檔案:

接著準備提交一個新的版本,點選「變更」,輸入提交訊息後,按「認可」:

如此就完成本地版本提交。

再來要將此版本上傳至遠端,點選「未同步處理的認可」,按下「同步處理」就完成了:

此動作Visual Studio會自行判斷,若遠端沒有最新版本則「同步」動作就是 git push

若遠端有更新的版本,則「同步」動作就是先git pull ,後git push

同步完成後,上Visual Studio Online網站,點選「CODE/Commits」就可以看到最新提交了:

六、建立分支

要建立新的分支,可點選「分支/新分支」後,輸入分支名稱再按「建立分支」:

不勾選「簽出分支」就是git branch feature

勾選「簽出分支」就是git checkout -b feature

這樣本地就成功建立feature分支了,但遠端還沒有這個新分支啊!只要在feature分支
按右鍵選「發行分支」,可以建立遠端feature分支了:

觀察一下,目前我們所在的分支是feature分支,請在此分支隨便修改一些程式碼,
接著來做提交動作:

本地完成提交後,接著將feature分支提交的版本上傳至遠端:

七、分支合併

feature分支開發好之後,再來要做的就是合併回master分支。
首先點選「分支」將feature分支改成master,這樣就完成切換分支了:

此動作就是 git checkout master

切換至master後,再來要將feature合併進來。點選「分支/合併」,來源分支選「feature」後,按「合併」:

此動作就是 git merge feature

八、刪除分支

要將分支刪除,首先在發行的分支的feature按右鍵選「取消發行分支」
,讓此分支從遠端卸除:

接著在取消發行的分支選feature按右鍵選「刪除」:

然後同步至遠端即可:

上Visal Studio Online檢查一下,就看不到feature分支了。

九、複製遠端儲存庫

如果你的專案要多人同時作業,那麼其他開發者就必須將專案複製(clone)至個別電腦裡

Visual Studio Online有做權限管理,所以不是隨便一個人都能讀取遠端儲存庫,
因此我們要先在test專案設定權限:

在專案管理者(kingofamani)端設定:

首先在Visual Studio Online進入test專案,點選右邊「Members/Manager...」,
接著選取「Add/Add user...」

輸入第二個工程師(kingofamani2)的Microsoft帳號,這樣就能存取test專案了:

在第二個工程師(kingofamani2)端設定:

現在第二個工程師(kingofamani2)要加進來專案一起開發,首先他先開啟Visual Studio 2013,
接著也是點選「連接到Team專案...」圖示,再點「選取Team專案...」,
選「伺服器」,此時要輸入專案管理者(kingofamani)的online專案:

(記得要輸入專案管理者(kingofamani)的online專案網址)

接著系統會提示您(kingofamani2)登入:

然後選取test專案:

按下「複製這個儲存機制」:

選好儲存位置後,按「複製」即可:

此動作就是 git clone

底下方案名稱連點2下,即可開啟:

如果要限制第二個工程師的權限,怎麼做呢?

在專案管理者(kingofamani)端設定:

點選右上角設定圖示:

點選「Overview」,再選取專案Team名稱:

點選「Security」,選取第二個工程師後,右邊權限就能設定了,
假設我想禁止「刪除專案」的權限,只要將「Delete team project」設成「Deny」,
再按「Save changes」即可:

在第二個工程師(kingofamani2)端設定:

回到第二個工程師的電腦上,此時上網連至專案管理者的Visual Studio Online專案裡,
想要點選刪除專案,結果當然不能囉!

十、刪除遠端專案

如果Visual Studio Online想刪除專案怎麼做?步驟有點麻煩,先點選右上角設定圖示:

點選「DefaultCollection」:

在test專案點右鍵按「刪除」:

results matching ""

    No results matching ""