[iThome第8屆鐵人賽 03]CI - VS是如何建制(Build) .Net專案
在上篇了解到說什麼是DevOps之後,我們就開始探討第一個部分,也就是Continous Integration (CI)。
CI最基本的核心就是build專案 - 所以我們需要了解一下到底VS是如何build專案的,只有了解之後我們才能夠把它腳本化,也才有可能自動化。
因此,這篇將會介紹:
- VS到底如何建制專案
- 什麼是build tool
- 為什麼接下來系列會選擇使用psake作為build tool
在上篇了解到說什麼是DevOps之後,我們就開始探討第一個部分,也就是Continous Integration (CI)。
CI最基本的核心就是build專案 - 所以我們需要了解一下到底VS是如何build專案的,只有了解之後我們才能夠把它腳本化,也才有可能自動化。
因此,這篇將會介紹:
又到了新的一屆鐵人賽,針對這次是否要參賽其實非常的糾結:一方面因為工作的關係,額外的時間越來越少,但是一方面又想把寫日誌的習慣找回來,在這種糾結的心情中,最後,還是想寫戰勝了不想寫。
這已經是第三次參加鐵人賽了,對我來說,每一年的主題都比上一年的更加困難,今年選擇的主題更是我這兩年想做但是一直沒有做的部分,也就是如何在日常生活中把DevOps引進來,並且提升日常工作效率。
同去年一樣,今年很多東西會是邊執行並且邊研究和邊記錄,希望大家能夠在這個系列學習到東西。
在上一篇建立自己的Library - 使用Nuget Package Explorer (GUI) 建立nuget package (上篇) 介紹package結構介紹了package的結構之後,在這篇我們將來用上篇所了解的結構,來建立一個簡單的package。
首先會建立一個簡單的library project,這個project會建立出等一下建立的package內容。
建立出package之後,接下來會介紹如何在本地測試這個package。
最後,當正式要把package發佈出去,讓外面的人使用,有什麼地方有提供host這些package。
在上一篇 (何為nuget,該如何使用,和2.7版本之後建議的回覆nuget package(套件)的方式) 介紹如何使用nuget後,應該會發現要在專案裡面使用某個Library實在是很方便,同個Library在不同專案使用只要透過nuget安裝就搞定。
作為開發者,相信大家都有一些小工具或者一些方法是常常被使用到的,而每次不同專案要使用,都需要copy整個程式碼實在很不方便,更別說如果哪天發現有bug ,要更新所有有用到的專案就更加困難和浪費時間。
如果可以把自己的小工具包成一個nuget就超級方便了,而且要更新程式碼也很容易,更棒的是要把nuget放到微軟的nuget.org網站上面是完全免費,不好好利用就太浪費這個服務了。
在這篇,將會介紹如何使用nuget package explorer來先了解package的結構,並且之後在用這些知識來建立自己package。
第一次接觸.Net開發的人常常會聽到一個名詞,那就是nuget。而習慣nuget的開發者通常也會常說,“你就用nuget去裝xxx套件就好了”。
可是,常常會忽略掉非.Net開發者其實聽不太懂這個術語。在這篇,我希望能夠可以給新進的.net開發者,能夠瞭解什麽是nuget,爲什麽要用nuget,nuget產生的什麽東西應該進入版控,和最重要的建議回覆nuget package的方式(網路上面很多教學都是舊版本的做法)
在上一篇(何謂ssh,在Windows下如何使用ssh,如何在Windows透過ssh下載和上傳程式到github)介紹完了如何用ssh來和github做push和pull,接下來的問題會是:那如果我有多個站台ssh要連到怎麼辦?舉例來說,假設我的bitbucket也要用ssh聯繫,要怎麼做?
另外一個問題是,每一次用ssh連線都要輸入pass phrase,上篇有介紹了ssh-agent來設定。在這篇將會在延伸ssh-agent的介紹,包括如何新增和刪除key的pass phrase,方便管理多個ssh key的pass phrase。
這篇會假設已經有用上篇的方式建立了一個ssh key給github用,而這篇將會在建立一個ssh key給bitbucket用。