一:概述
源碼控制管理器,也叫“版本控制”軟件,用于存儲、追蹤目錄(文件夾)和文件的修改歷史,是軟件開發者的必備工具,是專業軟件公司的基礎工具。它主要是協助在多人團隊中控制代碼,防止代碼管理混亂、代碼沖突,對代碼擁有者進行權限控制等。最課程(www.zuikc.com)的.NET培訓為了最大程度的對學員負責,從您剛入班就教會您怎么使用源碼控制,并且我們的教師還會通過源碼控制來修改您的代碼。
源碼控制主要存在如下的操作:
此操作將工作目錄作為新版本復制回存儲庫。
此操作從存儲庫中將文件的最新修訂版本復制到工作空間。簽出目錄時,將簽出該目錄下的所有文件和子目錄。
此操作與簽入文件或目錄相同。版本控制用戶會經常說他們“已提交更改”;這表示他們對各自文件的工作副本做了更改,并將這些更改提交到存儲庫。
當兩名開發人員對同一文件的工作副本進行更改,并將這些更改提交到存儲庫時,他們的工作可能會發生沖突。在這種情況下,源碼管理軟件將檢測沖突,并要求某個人先解決該沖突,然后再提交他們的更改。
將對相同文件的不同工作副本進行的多個更改合并到源存儲庫中。合并是一種管理沖突的策略,它允許多名開發人員同時工作(不必對文件進行鎖定),然后將他們的工作并入一個組合版本中。當對同一文件的不同行進行兩組更改時,合并這兩組更改很容易,而合并操作也可正常進行。但對文件的同一行或幾行進行更改時,將發生沖突,這就要求有人手動編輯該文件,然后才能將這些更改成功提交到源存儲庫。
二:最課程源碼控制(TFS)
最課程(www.zuikc.com)的源碼控制,最開始使用微軟提供的 TFS(team foundation server)。注意,由于各種各樣的問題,Party現在越來越不待見外企,即便包括微軟這樣的公司,某些服務也時不時的被墻或者不穩定一下。微軟提供的TFS服務在過去的兩年中,時不時會出現一下無法連接或者速度超慢,故,當前最課程(www.zuikc.com)的源碼服務已經遷移到 淘寶Code 上。但,TFS作為自主源碼服務器,仍舊被很大一部分的公司使用,所以,我們仍舊需要掌握下這個工具。
TFS它分為服務器端部分和客戶端部分:
其服務器端部分,是一個單獨的軟件,需要配置在服務器上,在我們的課程中,我們使用微軟免費提供給我們的 TFS 服務器端。
而客戶端,就是我們使用的編碼工具 Visual Studio 2013(以下簡稱 VS),我們可以通過 VS,簽入和簽出代碼。
為什么最課程要使用源碼控制工具
基于兩個原因:
1:最為學員的你完成 最課程(www.zuikc.com)中的代碼,最課程(www.zuikc.com) 的老師需要 Check 你的代碼,這能保證你在 最課程(www.zuikc.com) 學習中編寫的每一行代碼都逃不過我們的審核;
2:專業的軟件公司,在軟件開發過程中,都有一個流程,叫做 同行評審(Peer Review),這類似于我們的教師 評審 你的代碼,如果你在 最課程(www.zuikc.com) 中已經熟悉了這個過程,那么踏上工作之路,對此就不會覺得陌生。
三:添加打老鼠游戲解決方案到服務器
我們再接再厲,在本節中直接把打老鼠這個游戲的解決方案先建立完畢。和“Hello World”一樣,我們新建工程:
打老鼠游戲,不再是一個簡簡單單的控制臺程序了,而是有界面的一個應用程序,所以我們這次選擇的項目類型為“Windows Forms application”,注意Loction我們選擇了剛才的TFS中MAP到的路徑。輸入工程名:MouseHit,解決方案名:MouseHitSlu,點擊OK,出現如下界面:
緊接著,在解決方案名上點右鍵,在右鍵菜單中,我們選擇“Add solution to Source Control”,我們會發現VS中的文件前面多了幾個“+”號:
這說明TFS標識為這幾個文件是新增的,這個時候,我們再點擊解決方案名的右鍵,選擇“Check in”:
會出現如下界面:
把注釋寫入,然后點擊“Chech in”,說明我們完成一次簽入過程,我們的代碼就已經傳送到了服務器了。這個時候,我們在回到“Solution Explorer”的頁簽,見下圖下方的紅色處,然后檢查剛才為“+”號的文件前方,已經變成了一把鎖的圖標。這表明:是的,我們的文件已經被服務器所控制了。
再進一步的,回到VS的Source Control Explorer,我們會發現,剛才簽入的代碼已經存在于服務器了,見下圖:
好了,到了這一步,我將會在TFS上看到你提交的代碼,不妨等待我的回復,看我在你的代碼中修改了什么,以及加入了什么注釋。
四:連接TFS源碼服務器
最課程(www.zuikc.com) 的學員,都會由 最課程(www.zuikc.com) 分配一個 TFS 帳號,比如:zuikc@Outlook.com(這是我們的演示帳號,實際上,你收的帳號,可能是 zhangsan@outlook.com)。
其次,我們還會告訴你一個 TFS 的源碼地址,比如:zuikc.visualstudio.com,然后,我們需要經過如下的步驟連接到源碼服務器:
1:打開 VS -> Team -> Connect to Team Foundation Server;
2:Select Team PRojects,選擇 Server -> Add ,輸入:zhangsan.visualstudio.com(示例),確定,輸入用戶名和密碼;
3:點擊 Connect,就可以看到 VS 中展開了源碼管理的頁面;
在這個頁面中,最課程(zuikc.com)已經給你創建了一個最基本的控制臺應用程序,你的最開始的作業,就可以在這個控制臺程序中完成。下一節,你可以通過視頻來看到上面的操作。
4:在 源碼管理 頁面,我們還在把在 TFS 上的路徑和本地硬盤上的文件關聯起來,這就是 Map 的過程,MAP 成功,就會把服務器上的代碼下載到本地;
五:Map 服務器地址到本地
現在我們要做的,就是讓TFS的空間地址和你硬盤上的地址綁定起來。這個時候,我們需要點擊2處的“Source Control Explorer”,然后我們會看到如下界面:
在這個界面中,顯示的是我為你創建的TFS文件夾(它相當于服務器上硬盤上的一個文件夾)。
我們會注意到,這個界面中,1處顯示的是Not mapped,這說明我們還沒有將TFS的地址和本地硬盤上的地址綁定起來。這個時候我們點擊它,打開如下界面,然后選一個本地地址:
然后點擊Map,然后出現如下界面,然后確定,就可以了。
經過上面這些步驟的操作,我們就在TFS的網站創建了一個自己的TFS空間,然后我們就可以把自己的代碼簽入到這個空間里,別人也就可以獲取和修改你的代碼了。當前的VS界面如下。注意紅線部分已經變成了我們選擇的路徑,路徑后面自帶了我們的TFS空間名:
六:TFS視頻
非公開部分,請聯系 www.zuikc.com 獲??;
七:最課程源碼控制(淘寶Code)
鑒于上文說到的原因,微軟提供的TFS我們已經不建議使用,那么,現在我們使用的是淘寶Code(http://code.taobao.org/)。也確實,現在國內的軟件公司無論從技術上還是硬件上,都已經可以和國際頂尖公司抗衡,尤其在國內的環境下,甚至更好。
淘寶Code,使用的是 SVN 來進行源碼控制。SVN是一款非常著名的版本控制軟件,應用非常廣泛,從市場占有率上來說,應該排在第一。使用SVN來進行源碼控制,對于VisualStuio來說,還需要裝兩個軟件,一個是:TortoiseSVN(http://tortoisesvn.net/),一個是:VisualSVN(https://www.visualsvn.com/),這里不再指定版本,我們可以到官網下載然后進行安裝。
安裝完畢后,我們還需要到http://code.taobao.org/去注冊一個帳號,注冊的過程非常簡單,一切完畢后,登錄淘寶Code,然后看到的界面類似于:
八:連接淘寶Code源碼服務器
首先,我們需要在淘寶Code上面創建自己的項目,如下:
注意哦,最好不要選擇公開項目,因為我們目前的編碼能力還很弱,你只需要對最課程(www.zuikc.com)的老師可見就可以了,所以,公開項目這里我們選擇了否。
創建完畢,界面大概是這樣的:
這個時候,我們打開 VisualStuio,在 Tools-Option 中選擇 Source Control,選擇 VisualSVN 作為我們的源碼控制器,如下:
現在,打開我們的解決方案(或者新建解決方案),在解決方案名上面點右鍵,選擇 Add Solution To Subversion:
然后,下一步,選擇:
下一步,輸入自己的項目名,最好在后面加入 trunk:
下一步:
點擊 Import ,稍候,我們的解決方案就注冊到了淘寶Code上了??吹竭@個界面,就說明這一步成功了:
下一步,我們還需要把代碼簽入進去。在解決方案上,點右鍵,找到 Commit,點擊:
出現這個界面:
然后,點擊 OK,就簽入成功了。注意,查看,此時解決方案中的黃點變成了綠點。
到TaobaoCode上去刷新下界面,看到了如下的界面:
好的,這就說明我們的代碼簽入成功了。
備注:TFS和SVN的簽入和獲取最新有不同,其對應關系為,
Check In -》 Commit
Get Latest Version -》 Update
新聞熱點
疑難解答