Azure DevOps Server(TFS) 是微軟公司的軟件協做開發管理平臺產品,爲軟件研發、測試、實施提供全流程的服務。做爲一款應用服務器產品,他的客戶端是什麼,在哪裏下載客戶端?咱們在項目實施過程,常常碰到這樣的問題。本文的目的就是爲了解答這個問題。html
做爲一款企業級的軟件研發管理平臺,Azure DevOps Server 集成了需求管理、項目計劃、人員管理、代碼管理、持續集成、自動發佈等全流程的功能,他涉及到各類不一樣角色的IT技術人員,例如業務人員、需求分析師、設計師、程序員、質量控制人員和運維人員等。不一樣角色的人員使用不一樣的工具,在軟件研發的不一樣階段,同一個角色也會使用不一樣的通具。下面咱們就來詳細說一說,Azure DevOps Server (TFS)到底有哪些客戶端?它如何知足不一樣角色成的個性需求?java
首先咱們要來講開發工具,由於在一個信息技術部門,軟件研發團隊是絕對的主力人員。他們手頭使用的工具的集成功能,是Azure DevOps Server首先須要解決的問題。程序員
Visual Studio
Azure DevOps Server的原名就是Visual Studio Team Foundation Server (簡稱TFS,曾經還叫VSTS),作爲Visual Studio產品家族的成員,Visual Studio固然是DevOps Server的首推客戶端,特別是對於基於微軟技術框架作開發的技術人員,使用Visual Studio中集成的團隊資源管理器(Team Explorer)功能,能夠很是便捷地完成代碼版本管理、工做項查詢、持續集成等工做。幾乎能夠說,DevOps的大部分客戶端工做均可以在Visual Studio中完成。web
Visual Studio Team Explorer(VS團隊資源管理器)
對於使用Visual Studio的建議,Java程序員立刻就會潑冷水:「完整的VS安裝包30GB,對我有什麼用?」 爲了知足非微軟技術框架的開發人員,微軟公司也是操碎了心,專門精簡改造Visual Studio,將30GB的安裝包,精簡到300MB,其中只包含了Azure DevOps Server的所有客戶端功能,例如TFVC版本管理、Git版本管理、工做項等。這個工具,不管是功能的完備性、穩定性、速度等多角度考慮,目前是非微軟開發人員的最好的客戶端工具,也是咱們在推廣DevOps Server過程當中首推的客戶端。瀏覽器
Visual Studio Code
Visual Studio Code,做爲微軟跨平臺開發工具,固然不會缺乏DevOps Server的關聯。使用Visual Studio Code的原生Git功能呢,能夠與DevOps無縫銜接,實現版本管理;藉助與TFVC插件,也能夠實現集中式源代碼的版本管理。
圖:在Visual Studio Code中實現代碼版本管理服務器
Eclipse、MyEclipse、Idea、Android Studio、XCode
好了,如今咱們來和Java開發人員聊一聊。在Java開發開發人員的心目中,應該只有Windows和Office與本身有關,可能從未想到過在開發過程當中還須要微軟的開發工具。那麼先來看一下微軟公司爲Java開發人員準備的大禮包:https://azure.microsoft.com/en-us/services/devops/java/ 在這個鏈接中,你能夠看到主流的Java IDE工具,能夠與DevOps Server實現快速無縫集成。同時,在CI和CD過程當中,微軟還提供與Jenkins同樣的功能,在發佈流程管理方面,甚至遠遠超越了Jenkins。你熟悉的Maven、Ant、Gradle等,在DevOps Server中,包羅萬象。下面咱們來一個一個分析Java開發人員的開發神器:
- Eclise:
對於傳統的TFVC這種集中式的源代碼管理,在Eclipse(基於Eclipse的)開發工具中安裝微軟TFS插件(Team Explorer Everywhere,簡稱TEE),能夠直接在Eclipse中鏈接TFS服務器。這個TEE插件的功能,與Visual Studio中的團隊資源管理器比較,不管在功能仍是用戶界面上,兩者幾乎如出一轍。固然,因爲是做爲第三方插件的方式集成在Ecipse中,在速度和穩定性方面和原生的VS是有差距的。
圖:Eclipse鏈接Azure DevOps Server
- Idea
除開Eclipse,Idea應該是Java開發人員的最愛了。做爲捷克共和國這個東歐國家開發的IDE工具,在Java軟件開發、調試和兼容性方面,與Eclispe相比絕不遜色。更有驚喜的是,Idea原生支持TFS系統,能夠在Idea中直接鏈接TFS實現版本管理,無需任何第三方插件。
圖:Eclipse鏈接Azure DevOps Server (TFS)框架
安卓、蘋果移動開發
因爲DevOps Server中集成的Git服務器的功能,相似Android Studio、XCode等原生就支持Git的開發工具,如今被微軟的DevOps Server收爲一統。移動開發人員,不再用擔憂在MAC機器上如何上傳代碼的問題了。運維
Sublime等非主流開發
前面說了主流的開發工具,實際上,對於非主流的開發工具、文本編輯器等,Azure DevOps Server提供了豐富的插件支持,你能夠微軟的擴展市場(https://marketplace.visualstudio.com/)中,找到幾千種插件,但凡是有必定數據量用戶的開發工具,基本均可以經過插件的方式鏈接到DevOps Server。比較就曾經在一個項目中,爲PL/SQL的用戶(數據DBA)找到鏈接DevOps Server的工具,實現數據腳本的版本管理。詳情能夠查看個人博客https://www.cnblogs.com/danzhang/p/6936611.html。編輯器
跨平臺工具TEE(Team Explorer Everywhere)
開發人員不提跨平臺,總讓人看不起。微軟公司在Team Explorer Everywhere中提供了一個基於命令行的跨平臺工具,終於爲咱們長了臉,在培訓過程當中,對於Linux、Unix的用戶,我能夠信心滿滿的告訴他,你能夠在全部支持Java的平臺上鍊接Azure DevOps Server!工具
在上一節的說明中,應該已經能夠覆蓋絕大部分研發人員使用的工具了。可是,做爲一個服務器系統,若是你不支持基於瀏覽器web服務,那是不能夠思議的。DevOps Server在瀏覽器的兼容性、功能全面方面,比起做爲客戶端的主流開發工具來講,能夠說作到了極致。目前官方公開聲明支持全部主流瀏覽器,包括:Chrome、Firefox、IE、Safari等。
對於國產的瀏覽器,雖然微軟沒有給出官方說明,可是在項目實施過程當中,咱們的客戶使用360、搜狗等,幾乎沒有任何障礙。
使用Web瀏覽器,能夠完成Azure DevOps Server百分之九十的功能,甚至能夠在Web瀏覽器中編寫代碼。
有個同窗立刻就問:「不能作的那百分之十是什麼?」,我只好心虛的說「調試代碼」。可是,我相信,若是人類發明了可使用瀏覽器編寫、調試代碼的框架,微軟很快就會把它集成在Azure DevOps Server中。
經過前面的說明,開發人員應該有所寬心了。
下面咱們和非開發人員(需求、測試、運維)來聊一下。做爲不常常編寫代碼的技術人員,手頭最經常使用的工具莫過於微軟的Office。秉承的微軟其餘應用軟件的系統,Azure DevOps在集成Office系列軟件的過程當中,它具有的功能遠遠超出了咱們的現象。
實際上,Azure DevOps Server與其餘服務器之間的集成,也能夠當作是客戶端的擴展。例如,咱們在SharePoint Server中能夠獲取Azure DevOps Server的工做項數據;能夠將需求推送到Project Server;能夠在SQL Server Reporing Server和PowerBI中,生成漂亮的統計報表;還能夠與及時信息軟件(例如Slack、Teams)集成,自動發送實時通知。
甚至,利用Azure DevOps完善的Rest API,能夠與任何自主研發的第三方服務器集成,實現數據共享、流程互通。例如,在項目實施過程當中,咱們就爲許多客戶作過系統集成,從OA系統自動獲取需求,從測試管理平臺中自動獲取缺陷,自動通知運維平臺升級,等等。。。
做爲企業級的軟件研發管理平臺,Azure DevOps Server在客戶端的集成和兼容性上,幾乎能夠知足大部分研發角色成員的需求。在實際使用過程當中,因爲Azure DevOps Server涉及到軟件研發的全生命週期管理(ALM),可能還有更多筆者未知的工具、技術和技巧,歡迎你們在討論中補充。
------------------------------------------------------------
http://www.cnblogs.com/danzhang/ DevOps MVP 張洪君
------------------------------------------------------------