編者按: CSDN “開源技術(shù)大會?2014” (OSTC?2014 )將于2014年3月30日在北京麗亭華苑酒店召開。我們將陸續(xù)發(fā)布參會講師的系列采訪,談談他們將在本次活動分享的內(nèi)容。
本期,我們采訪的是豆瓣技術(shù)總監(jiān)嚴旭(清風)。
嚴旭(清風)
2012年起,清風開始在豆瓣主導CODE平臺的開發(fā)。CODE是豆瓣內(nèi)部一個基于Git版本控制系統(tǒng)的協(xié)作平臺,最初是豆瓣為了解決自身的開發(fā)流程、代碼管理、上線等問題開發(fā)的。這不是一個公司項目,但仍然聚集了眾多的豆瓣工程師參與其中。截止目前,CODE已經(jīng)托管了豆瓣內(nèi)部幾乎所有項目的代碼。
在豆瓣內(nèi)部,CODE的主要用途包括:存儲代碼倉庫; 代碼審查,工程師日常溝通;持續(xù)集成,上線系統(tǒng)的聯(lián)動。
隨著CODE系統(tǒng)的逐步完善,豆瓣希望可以有更多的人可以使用這套系統(tǒng),并且參與這套系統(tǒng)的開發(fā)。因此,從2013年初開始,他們就陸續(xù)把使用中的一些基礎(chǔ)庫開源了。2014年2月14日,在豆瓣CODE項目成立兩周年之際,豆瓣宣布將CODE的整個項目框架開源。同時開源的還有該項目使用的Git封裝器,以及一些其他基礎(chǔ)設(shè)施,如 Mikoto、 Linguist 、 P、 CodeLive等。
豆瓣CODE項目主頁: http://douban-code.github.io/
下面是采訪記錄(摘要)。
CSDN: 請簡單介紹一下您目前的工作和關(guān)注的領(lǐng)域。
清風:目前的工作的大部分精力就是放在CODE這個平臺上。最近比較關(guān)注的領(lǐng)域是遠程辦公、知識管理、移動辦公等領(lǐng)域。
CSDN: 豆瓣最初也曾考慮Github企業(yè)方案,但后來還是選擇開發(fā)自己的代碼管理平臺CODE,出于哪些考慮做此決定?自身搭建代碼管理平臺,對企業(yè)自身有 何特殊要求?
清風:Github成本較高:20$/人月+維護+無法定制開發(fā)。 自主開發(fā)從長期成本來看是低的,而且可以形成一種工程師文化。自主開發(fā)對企業(yè)的要求就是,需要每一個人都很關(guān)注開發(fā)過程這個事情,不認為這是某一個人的事情,而是所有工程師的事情。
CSDN: 從開發(fā)到現(xiàn)在的兩年間,CODE項目的定位、設(shè)計思路和實現(xiàn)方式有什么變化?
清風:CODE的定位是解決豆瓣的開發(fā)過程問題,始終未變。(實現(xiàn)方式上)隨著倉庫規(guī)模的變多,現(xiàn)在在做分布式Git的服務。
CSDN: 部分團隊從SVN遷移到Git過程中面臨較多困難,您有什么建議嗎?
清風:這是一個艱苦的過程,需要做好打持久戰(zhàn)的準備,豆瓣基本上花了1年時間才完成全部遷移,這個過程涉及到代碼庫的拆分,以及上線工具、部署工 具等等以前所有圍繞SVN構(gòu)建的工具的修改。
另外一點就是Git+PR流程的培訓。這個部分,幸運的是豆瓣的工程師本身就都參與了很多開源項目,所以幾乎沒怎么培訓。
從歷史經(jīng)驗看,這件事首先必須從上往下推,必須有專人來盯著進行,并且要提供配套的工具。
CSDN: 豆瓣工程師團隊中的開源文化是怎樣的?
清風:豆瓣的開源文化是:開放、共享、創(chuàng)造。
CSDN: 您能分享下在團隊內(nèi)部推廣開源的經(jīng)驗嗎?
清風:無需特別的推廣,更多的是大家相互分享和學習。
CSDN: 簡單介紹下您在“開源技術(shù)大會*2014”(OSTC*2014)上要分享什么話題?
清風:會介紹CODE的功能、開發(fā)的心路歷程,以及開源的目標和計劃。
2014年3月30日,由CSDN主辦的“開源技術(shù)大會?2014”將在北京麗亭華苑酒店召開。多位開源界資深人士將出席大會并發(fā)表演講,歡迎大家親臨現(xiàn)場與大牛零距離交流。
>>>大會官網(wǎng): http://ostc.csdn.net/