簡體   English   中英

如何使用新分支上的文件

[英]How to work with files on a new branch

我今天剛開始使用visualstudio.com和VS2013(第一次使用源代碼控制),並且正在運行一個網站項目。 我的結構如下:

MyCompany.VisualStudio.com\DefaultCollection
 - My Site (project)
    - BuildProcessTemplates
    - Site (folder)
       - My Site (folder)
          - Site (branch)
              - subfolders
          - Site Branch 1 (branch - created just now from "Site")
              - subfolders

在解決方案資源管理器中,我只看到“站點”及其各自的文件。 如何切換到“Site Branch 1”的工作? 我假設我可以“打開現有網站”並在文件系統上找到它,但這是正確的方法嗎? 我曾希望可以選擇使用Source Control Explorer中的文件。

目前(分支前),Solution Explorer反映了我在Control Explorer中看到的內容: 在此輸入圖像描述

分支(創建“開發”分支)后,如果我單擊“開發”分支中的文件,它將在當前項目下的“雜項文件”文件夾下打開,然后導致編譯錯誤: 在此輸入圖像描述

因此,要忘記處理“主要”並轉而使用“開發”,我是否必須從VS中“打開網站”,或者我可以將“開發”網站添加到當前解決方案(聽起來不正確) ?

解決方案資源管理器將顯示解決方案中的文件; Source Control Explorer將顯示源代碼管理中的所有文件,您應該能夠直接打開它們(假設該源代碼控制路徑存在工作區映射)。 例如,從這開始(其中-是一個文件夾而*是一個文件,請注意我已經修改了一些東西):

MyCompany.VisualStudio.com\DefaultCollection
 - My Site (team project)
    - BuildProcessTemplates
    - Main (branch)
        * MyGreatProject.sln
        - MyGreatProject (folder)
            * MyGreatProject.csproj
            * MyGreatPage.html
            * web.config

如果你打開解決方案,它會顯示Main \\ MyGreatProject \\的內容....現在讓我們分支:

MyCompany.VisualStudio.com\DefaultCollection
 - My Site (team project, source path = $/MyGreatProject)
    - BuildProcessTemplates
    - Main (branch)
        * MyGreatProject.sln
        - MyGreatProject (folder)
            * MyGreatProject.csproj
            * MyGreatPage.html
            * web.config
    - development (branch)
        * MyGreatProject.sln
        - MyGreatProject (folder)
            * MyGreatProject.csproj
            * MyGreatPage.html
            * web.config

如果打開$ / MyGreatProject / Main / MyGreatProject.sln,它仍然只顯示那些文件(以及那1個項目)。 Source Control Explorer將顯示所有文件,您可以直接打開它們。 如果您進行了更改(例如編輯$ / MyGreatProject / development / MyGreatProject / web.config),它將是您工作區中的待處理編輯。 如果從Source Control Explorer打開$ / MyGreatProject / development / MyGreatProject.sln,它現在將打開並在$ / MyGreatProject / development下顯示這些文件。

基於您的更新(也修復了我的TFS路徑):

解決方案文件應作為源文件之一簽入分支。 如果在一個分支中添加項目(例如,在開發中創建控件庫),則需要在解決方案中進行,但只能在正在完成工作的分支中進行。

這是我如何構建它。 您可以看到$ / MyGreatProject / Main /如何包含解決方案文件,並且該網站位於其下的文件夾中(這很重要,因為VS無法處理解決方案在網站文件夾中的網站項目):

主要主要網站

發展看起來一樣。

如果我在VS中打開$ / MyGreatProject / Main / MyGreatProject.sln,並從Source Control Explorer打開,我打開$ / MyGreatProject / Development / MyGreatWebsite / Default.aspx,它打開正常; 我沒有看到任何編譯問題,並且它沒有被添加為misc文件。 這是我的工作區映射:

工作區映射

您可以看到工作空間映射位於我的項目的根目錄,因此它知道任何分支中的所有文件。 當我分支時,我已將所有文件同步到磁盤本地,因此它不會在%temp%文件夾中打開。

當我將工作區映射更改為僅包含Main,然后從Developer打開文件時,它確實下載到%temp%,我確實看到代碼隱藏文件丟失的編譯問題,這是有意義的,因為它只會下載文件你剛開的(我想)。 我沒有看到它作為misc文件打開...但不確定為什么它們在我們兩個人之間表現不同。

無論如何,如果你有包含兩個文件夾的工作區映射,團隊資源管理器會獲得一些方便的功能。 首先,它將為您提供主頁上工作區中可用的所有解決方案,因此您無需瀏覽Source Control Explorer或Windows資源管理器即可找到它們:

解決方案清單

如果解決方案列表太長(最多顯示20個),則Open ...鏈接將顯示工作區根目錄中的文件選擇器對話框。

它還會顯示工作區中所有文件的掛起更改,因此如果您在多個分支中進行更改,您可以一起檢查它們,也可以從當前簽入中排除一個分支中的文件並單獨提交(這view也不會單獨調出分支,但是你可以看到文件的路徑):

等待更改

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM