第五百九十三章 代碼倉庫
超腦黑客 by 瘋狂小強
2021-11-8 21:47
LINX通用版本的發布和開源,吸引了壹部分技術愛好者投入到了LINX的開發陣營當中來。
他們開始活躍在社區之中,為LINX的開發和完善出謀劃策,同時也貢獻系統代碼,編寫並分享這個平臺上的軟件。
官方的開源社區,也不再像以前那麽冷清,逐漸變得熱鬧起來。
LINX的優點在於小巧、模塊化和高度適應性,只要符合壹定的架構,無論硬件多麽老舊,無論配置多麽低,它都能夠順利地在上面運行起來。
LINX通用版本發布之後的幾天時間內,便有不少人宣布他們在自己的老爺機、遊戲機、以及各種千奇百怪的類計算機設備上成功安裝了LINX。
LINX的這個特點,吸引了壹大批的電子發燒友投入它的陣營,甚至引起了很多人自己DIY計算機的狂熱興趣,他們自己尋找或者制作各種各樣奇怪的配件,然後將它們非常粗糙地手工焊接在壹起,最終形成壹臺造型醜陋奇特,但的確可以運行的計算機。
從壹開始,LINX開源社區,便逐漸形成了壹種獨特的計算機DIY文化,壹大批立誌於想要制作自己的計算機的硬件黑客們駐紮在這裏,探討分享計算機DIY方面的知識,這些人很多都是各大巨頭公司中的技術骨幹,他們為LINX初期的發展和推廣做出了非常大的貢獻。
林鴻在LINX開源之後,便開始投入時間編寫壹整套有關源代碼提交和版本控制方面的軟件。
現在的源代碼管理還比較原始,很多開源軟件,都是自己架設FTP或者其他文件共享軟件,然後幾個核心成員使用FTP進行上傳覆蓋。
這樣會導致經常出現版本沖突,或者劣質代碼覆蓋了優秀代碼的情況,給項目造成了很大的損失和麻煩。
林鴻根據自己的經驗和大家提供的意見反饋,花了壹周時間便編寫了壹個名為“代碼倉庫”的分布式版本控制軟件,英文名稱為“CodeHub”,並將其開源。
傳統的版本控制軟件,都是集中式進行管理,所有的代碼都存在服務器上,大家想要代碼,就從服務器中下載,而要貢獻代碼,就直接從本地上傳到服務器上,進行覆蓋。
而“代碼倉庫”則使用了分布式的版本控制,每壹個開發者的電腦上都有壹個服務器的數據庫拷貝,他們可以在本地創建分支版本,並且在本地提交上去,和服務器上的版本進行同步。
而主要的開發者可以根據他們的分支,對這些代碼進行對比和審核,最終確定是否將這個分支和主版本進行合並覆蓋。
當然,如果其他開發者發現了主版本中的代碼BUG,則可以在本地制作補丁,然後將補丁發送給主開發者,讓其決定是否將其應用到公共服務器上。
這樣,利用這種方式,很好地解決了之前集中式版本控制的各種弊端,極大地提高了不在同壹個地方的開發者相互進行協同開發的效率。
除此之外,代碼倉庫還具備即時溝通功能和日誌備忘溝通功能,團隊合作者可以在自己的團隊聊天室中進行即時溝通,也可以直接提交團隊日誌進行延遲溝通,項目負責人還可以將任務直接指派給團隊中的成員,讓其專門負責某壹個功能的開發。
總之,“代碼倉庫”的編寫初衷,就是為了讓全世界各地的開發者,能夠更好地為LINX貢獻代碼,更方便更有效率進行比較分散的團隊協作開發。
代碼倉庫開源之後,立刻引起了開源業界的關註。
這個軟件,相比起現在主流的那些版本控制軟件來,簡直就是壹個神器,幾乎解決所有已經存在的各種令人頭疼的難題,讓開發人員可以將精力全部放到開發上,而不是為了解決這些問題而傷透腦筋。
“代碼倉庫”剛開始還只是在LINX的開發者群體中流傳,可是它實在是太優秀太實用了,這些開發者們在習慣了代碼倉庫的便利性自後,實在無法忍受自己公司或者其他開源項目所使用的那些版本控制軟件,強烈要求這些項目負責人進行軟件升級,將版本控制軟件更換成“代碼倉庫”。
在互聯網上,信息的傳播速度比任何傳統媒體都要迅速,在網絡興起之後,有人就說過,互聯網將整個地球變成了壹個村子。
代碼倉庫對外發布並且開源之後,立刻在業內引起了轟動,甚至遠遠超過了LINX系統本身開源這壹事件。
LINUX創始人LINUS首先做出反應,他在LINX的開源版本的基礎上,進行了壹些細節方面的修改,然後退出了針對LINUX系統開發的版本控制軟件,名為GIT。
因為代碼倉庫的開源協議開放得非常徹底,只要不要用於商業牟利,任何人都可以隨意使用和修改其中的代碼。
因為“代碼倉庫”軟件,LINX在開源業界的地位直線上升,LINUS在壹次媒體參訪中,親口稱贊“代碼倉庫”非常好用,解決了長期以來嚴重困擾著他的頭疼問題,並且說希望有機會能夠和LINX的創始人見面。
LINUS根本不知道,LINX的創始人,正是當年他的好友STONE。
……
時間匆匆而過,轉眼間時間已經不知不覺買入98年的門檻,再過壹個多月,農歷新年就要到來。
林鴻這段日子來,壹直紮根在公司,兩耳不聞窗外事,壹心只搞技術研發。
他回歸之後,LINX的開發進展迅速推進,版本更新頻率明顯加快,並且每壹次更新,都有非常大的改進。
能夠做到這壹點,壹方面是得益於LINX的開源,吸引了越來越多的優秀開發者加入LINX的開發陣營,將自己的業余時間全部花費在上面。
而另壹方面,這也和林鴻的積極推動和貢獻代碼離不開。
他雖然並沒有全程參與開發,可是每壹次到了關鍵時刻,都少不了他的身影,壹些在別人眼中看起來可能幾個月都完成不了的難題,在他手中卻仿若編寫“妳好,世界”這樣的入門程序壹般,往往是幾天之內就可以提出解決方案,並且分配任務,然後大家花費不到壹兩周的時間便可以將這個難題攻克完畢。
林鴻除了花心思在公司的事情上面,另壹方面,時間主要花在了“超腦構造儀”的研制上。
沒辦法,舒小嫻天天在他耳邊念叨著她也要超腦系統,私底下壹直問,什麽時候給她裝上。
這些天來,司倩大腦中的超腦系統運行良好,給她的生活和工作都帶來了極大的便利性,用她的話來說,感覺現在成為了壹個機器人,壹些涉及到計算方面的東西,根本難不倒她。
並且,司倩還喜歡上了攝影,當然,是用自己的眼睛攝影。
每當她看到美景或者有意義的畫面的時候,她便會將這個場景給拍下來,然後慢慢欣賞。
數碼相機目前才剛剛興起,國內還很少能夠買到這樣的產品,不過她現在卻已經在使用了,並且是功能非常強大的數碼相機。
至少,司倩知道,無論是傳統的相機還是數碼相機,其拍攝出來的照片,都是平面的,集中在某個焦點上面。
用林鴻的話來說,就是缺少了兩個用來表示光線方向的參數。
是的,光線也有方向,而傳統照相機拍攝出來的照片,將這兩個參數直接忽略了,最終拍攝出來的照片,完全是平面的,這和我們用眼睛看到的畫面是不同的。
而和用相機拍攝的照片不同,使用眼睛拍攝的照片有壹個明顯的特點就是沒有焦距。也就是說,並不存在某個地方清晰而其他地方模糊的現象,每壹個地方都是清晰的,並且具備立體感。
用林鴻的話說,就是實現了達芬奇曾經構想的設備,可以捕捉每壹個光學場景。
司倩所使用的照相軟件的版本,是林鴻經過了多次改進之後的。
眼睛之所以有焦點,是因為投射在視網膜上的光線位置有不同,從而對感光細胞有不同的效果,可是光線本身是沒有清晰和模糊之分的,林鴻後來在編寫升級版本的時候,就專門對這點進行了特別的處理,除了三維空間的三個函數,另外還引入了兩個表示光線方向的函數,組成了五位全光場函數。
當然,這方面的理論,林鴻也並不是他發現的,而是從《自然》科學雜誌上所看到的,已經有科學家在方面研究了很長時間,並且提出了“廣場攝影”理論,並稱這壹理論,將帶來新壹輪的成像革命。
很多人預計,這個理論要想變為現實,至少需要十年的時間,而林鴻卻在這個理論發布之後不久,就將其在超腦系統中實現了出來。