係統粉 > IT資訊 > 微軟資訊

微軟使用開源軟件Git來創建Windows

發布時間:2017-05-25    瀏覽數:
微軟不僅僅是已經成為了開放源代碼的熱心用戶,而且正在使用Git版本控製係統來構建Windows。專有軟件開發的一個典型的例子就是依靠開放源代碼創建其Windows操作係統。

微軟使用開源軟件Git來創建Windows(1)

微軟使用開源軟件Git來創建Windows(2)

幾乎所有的微軟Windows工程師現在都在使用開源程序Git來構建Windows

其實,早在2013年,微軟就已經宣布了其向Visual Studio開發工具套件和Team Foundation應用程序生命周期管理技術添加Git支持的路徑圖。同年晚些時候,微軟技術研究員和TFS領導者Brian Harry宣布,微軟將支持Git作為其分布式源代碼控製平台。

但如同Harry在當時的博客文章中所說的,“我們越多地注視它,它看起來就越像是正確的事情。”

隨著歲月的流逝,微軟甚至對Git作出了重要的開放源代碼貢獻。在2017年,微軟根據MIT License開放了Git Virtual File System(Git虛擬文件係統)。 GVFS使微軟的產品團隊能夠擴展Git客戶端來處理其龐大的源代碼回收。

從那時起,微軟開始移植所有的Windows代碼到Git和GVFS。這項工作現在已經基本完成了,而微軟正在享受其開放源代碼創造的這個星球上最大的Git repo成果。

Harry寫道:“在過去的3個月中,我們已經基本上完成了向微軟的Windows團隊推出Git / GVFS。”這可不是一件小事。“Windows代碼庫大約是3.5M的文件,當進入Git repo時,結果就變成了約300GB的備份。”

並且寫道,“Windows團隊約有4000名工程師,440個分支機構每天在工程係統中平均產生1760‘實驗室’,還有成千上萬個拖拽請求認證。所有三個維度(文件數、repo大小和活動)獨立來看,都麵臨著令人生畏的規模方麵的挑戰,這些因素結合在一起讓創造一個偉大體驗變成令人難以置信的挑戰。”

Harry承認這是一個可怕的經曆。“第一次也是最大的一次跳躍發生在3月22日,當時我們麵向約2000名工程師的Windows OneCore團隊推出,這個2000名工程師星期五在Source Depot上工作,周末回到了家,周一早上回來上班的時候就要麵對基於Git的新體驗了。我的團隊中的員工整個周末都在提心吊膽,祈禱這些工程師不會到星期一發現自己無法完成任何工作,因而將一腔怒火發泄到我們頭上。坦率地說,令我吃驚的是,工作進展非常順利,工程師們從第一天開始就卓有成效。”

事情並不是一帆風順的。“我們發現第一周我們的UI提取請求和合並衝突解決方案根本沒有擴展到這麼大的變化,我們不得不爭奪虛擬化列表並逐步獲取數據,所以UI不會掛起。我們在幾天內解決了這個問題,整體而言,這一周的情緒好於我們預期。”

今天,幾乎所有的Windows開發人員都在使用Git。在接下來的幾個月中,最後的500位程序員將遷至Git。Harry表示,“係統運行的規模真的很棒,讓我們來看一些數字吧。”

Ÿ 在過去4個月中,該repo的曆史上有超過25萬次可達成的Git承諾。Ÿ 每天8421次(平均)推送Ÿ 每個工作日(平均)有2500份拖拽請求,有6600名評論者Ÿ 4352個活躍主題分支Ÿ 每天有1760個官方構建

微軟繼續調整GVFS供遠程使用。Harry解釋說:“Windows Team Services帳戶位於美國西海岸的Azure數據中心……80%的Windows工程師克隆時間為127秒。由於Windows的工程師有很大比例來自雷德蒙德,所以這個數字是由他們主宰的。”

“我們從北卡羅萊納州的辦公室(這個地點更遠而且網絡的帶寬要低得多)進行了測試。從北卡羅萊納州不使用代理服務器進行了一次克隆差不多用了25分鍾。配置了一個代理的情況下,用了70秒(比在雷德蒙德快,因為雷德蒙德的團隊不使用代理,而且他們必須通過互聯網去到數百英裏外的Azure數據中心)。70秒和幾乎25分鍾對比改善了95%。”

畢竟,GVFS是一個開放源代碼項目,歡迎你的試用。您所需要做的隻是下載並安裝它,創建一個具有Git repo的Visual Studio Team Services帳戶,這對你是件好事。其他Git程序包含了Atlassian SourceTree和Git Tower。

具有諷刺意味的是,目前還沒有支持GVFS的Linux Git客戶端,但是內部微軟支持Linux和Mac支持。微軟程序員經理Saeed Noursalehi在GVFS錯誤列表中寫道:“是的,我們絕對希望支持Mac和Linux,而且我們正在尋找具有這些平台上的文件係統專業技能的人。”

Linux和Git的創造者Linus Torvalds曾經說過:“如果微軟曾經為Linux提供應用程序,那就意味著我贏了”。我認為微軟使用Git創建Windows可以被視作是一種勝利。

上一篇:微軟:不放棄WP,愛iOS和安卓所有設備 下一篇:很多網友反映, win10係統無法進入BIOS怎麼辦?

相關資訊

最新熱門應用

電腦問答