很早就安裝了VS Code,當時只是從一篇技術文章中看到的,說是體積小功能強,支持多種編程語言,各類語法高亮,總之就是很好的意思,因此就下載下來了,不過一直沒用過。工做主要是C# ,因此開發都是用的VS,從03版本一直用到如今的17版本. 最近項目過了迫不及待的階段,打算學習點東西,正好用用VS Code,這個行業不學是真的很快被淘汰,亞歷山大~~~html
VS Code 是一款程序編輯器。除了支持多種開發語言編輯外,Source Control 功能是很重要的一部分。目前比較火熱的版本控制工具就是Git了,我以前用的一直都是TFS,也是最近一年纔開始使用git,用了TFS再轉換爲git的開發人員,能更深入的體會到分佈式版本控制系統的好處。幸運的是VS Code也把支援Git的使用,做爲重要功能之一。Source control在VS Code面板左側功能列表種種,由此看出其重要地位。git
在使用Git功能以前,須要對Git有必定的瞭解。好在我已經用過了,雖然不是很深刻,可是最基本的使用仍是木有問題滴。推薦一個學習Git的好資源 寶哥的 30天精通Git版本管控
瞭解到Git是 分散式版本控制系統,Git專案有三個主要區域:Git目錄、工做目錄(working directory)、暫存區域(Stage area) 等基本知識後,就可使用VS Code的Git功能了。github
VS Code的Git功能,是基於本機電腦安裝的Git套件。若是要使用的須要先確認Git條件是否已經安裝。若沒有安裝,請到Git官網下載安裝檔案並安裝到本地。編程
你們比較熟知的工具是GitHub,而咱們公司用的是GitLab,功能幾乎差很少,平時在外面本身的項目有時候會掛到GitHub上,在公司裏面就所有用GitLab了。下面就以GitLab爲例,建立倉庫。Git能夠再本地建立倉庫,可是一個項目一般是由各個團隊成員一塊兒開發,這時候就須要建立遠端倉庫了。
bash
在建立好的目錄中右鍵 選擇Git bash here .輸入編程語言
git clone [URL]
分佈式
url就是上一部中拷貝的遠端倉庫的URL。工具
以上工做準備完畢後,打開VS Code,File-Open Folder 選擇上面建立的目錄。就能夠看到,VS Code 會有個圖標顯示正在存取該目錄的git資訊。gitlab
經過上面的步驟,咱們開啓的目錄就已經歸入了Git管控,若是咱們在VS中作一些變動,對git來講都是狀態的變動。就能夠在VS的左測的Git 頁籤中看到
學習
在左側的Git頁籤中,選擇該文件右鍵選擇Stage Changes 或者直接點擊當前文件後方的【+】號,就會將當前檔案由 工做目錄(working directory) 放到暫存區域(staging arae). 此時檔案會出如今STAGED CHANGES 中並被標註爲A,表明git add 的指令被加入到暫存區域。
新建立一個文件,保存爲Untitle-1.txt,放入暫存區後,再次編輯文件保存,會發現該文件同時出如今STAGED CHANGES 和CHANGES 中。前者狀態是A,後者狀態爲M.表明該檔案已經修改,等待再次被加入到暫存區域。
在文檔目錄中對建立的文件作刪除動做,此時該文檔就會出如今CHANGES中並被標記爲D。 StageChanges 以後就會在STAGED CHANGES中顯示該文檔一樣標記爲D。輸入描述執行Commit以後將會刪除此文檔。
若是要將暫存區域中的變動所有Commit到Git目錄中,能夠在下圖區域輸入要Commit的信息,而後按下Ctrl+Enter快捷鍵,就會進行git commit 的動做。
關於分支我目前所用到的操做主要以下:
VSCode中對Branch的支持確定也是必不可少的,在VSCode中能夠在最下方看見Git的當前分支,點擊分支名稱,能夠在最上方彈出一個對話框,在裏面能夠Checkout已經存在的分支以及建立新的分支。
如上圖在彈出的內容中選擇 【+Create new branch】 這時候會彈出以下內容,讓填寫Branch 的名稱,而後按Enter鍵完成建立或者按Esc鍵取消建立。
這裏輸入develop 並 Enter,建立成功後會自動切換到develop分支。在最下方的成色條框內最左側就會顯示develop。
此時develop 默認是從master分支建立的。且是建立在本地倉庫的分支。
前面的操做與上面相同,不一樣的是在按下Enter以後會彈出選擇從哪一個分支建立。以下圖所示,這個分之是一個feature分支,用來修改主頁面,因此選擇從develop分支建立。建立完成後,會自動簽出當前建立的分支。
這裏面由於沒有用gitflow,隨意就是在分支命名上有所區分。後面會研究一下VS中是否能夠用gitflow 仍是隻能結合git 命令來用。
在Git頁籤的 More Action中選擇Push 就能夠將本地倉庫develop推送到遠端。從gitlab中就能夠看到develop分支了.
在Git頁籤的 More Action中選擇Push 就能夠將本地倉庫develop推送到遠端。從gitlab中就能夠看到develop分支了
當前分支是在最後建立的feature-ChangeHomePage中,想要切換到其餘分支。這個地方忽然想要測試一下分支的簽出與VS中的簽出差別。先說一下我在VS中的操做:若是在一個分支下修改的代碼,要想切換到另外一個分支,必須簽入或者復原此分支的修改,才能簽出另一個分支。
在VSCode 中我在當前分支feature-ChangeHomePage分支中修改了Views下Home中的index.cshtml文件。修改後我直接簽出develop分支,將代碼在develop分支上作了Stage以及Commit的動做,此時發現這個Commit就真的在develop分支生效了。而並不向VS中同樣會禁止這種操做。
提交代碼成功後,我再次簽出feature-ChangeHomePage分支,發現這裏代碼是沒有變動的。
我感受這塊的處理仍是有點問題的,雖然此次是刻意爲之,但這樣並徹底沒有規避這種問題,若是向VS中一旦修改了代碼,哪怕是Untracked狀態,不Commit或者undo以前都不容許切換到其餘分支,會更好一點。
提取分支 pull
目前master分支的代碼和develop分支是不一致的,爲了測試這個功能從遠端將develop分支合併到master分支,而後在本地對master分支進行pull操做。
是上面操做中先Push再Pull 和合並。
以上的這些操做都會轉換爲對應的git command ,出如今VSCode的output窗口中。
感恩每個寫文檔將知識分享給你們的人,耗時還耗力,還可能收到一些人的惡意評論。其實我也喜歡寫不過不是寫在博客上。後面有時間能夠將本身總結的一些東西也都慢慢放上來,能幫助別人最好,能收到指正和指導也很棒,像無私分享的小夥伴學習。
這是我第一篇從草稿裏面發佈出來的隨筆,若是有錯誤的內容還但願各位瀏覽我文章的夥伴兒們能不吝指出哦!