Git目前越來越受關注,它有哪些優點呢?

樂聖傑


git是一種分佈式的版本控制系統,被廣大程序愛好者推崇和使用。而git的使用方法對剛接觸git的朋友來說,往往一頭霧水,看上去很高端很厲害的樣子,所以會用git的程序員都自帶一種高端大佬的氣質!

接下來我舉個例子,解釋一下什麼是所謂的版本控制系統?

有過項目開發經驗的同學一定有這樣的經歷,你的第一版代碼一般是比較粗糙的完成了項目的開發需求,後續要不斷地對代碼進行增增減減,一般在刪掉就的代碼之前,我們會做一個備份,怕後續還想用這部分代碼找不到,導致一個項目開發的過程中,有好多的備份和版本,改來改去,都記不清之前保存的代碼都有什麼功能了。

更不方便的事,如果你和同學、朋友共同開發一個項目,當你們各自的代碼進行合併的時候又是問題重重,因為可能你這邊僅僅修改了一個變量的名字,都會給對方的工作造成不便。

而git的誕生就是為了解決這個不便的,git的優勢真是多到數不勝數,在眾多分佈式版本管理系統中可謂是一枝獨秀,首先,他免費,使用過程不聯網,同時還有強大的分支管理功能,系統運行穩定,相對來說使用簡單,傳輸快速,通吃各個平臺(Linux、Unix、Mac和Windows)。總而言之,如果你是一名編程愛好者,學會git以及它的常用命令,絕對如虎添翼,能讓你的開發過程方便很多。


ICMLL實驗室


版本管理現在主流使用svn和Git,而maven主要是解決模塊依賴的問題,這裡不做討論。


相較於svn,git是分佈式的。svn基於revisions,要提交到中心服務器上。而git是分佈式的,每一臺有代碼權限的機器都是一個服務器。檢出代碼後,所有的記錄都在本地,本地提交和分支管理都可以直接提交到本地,並不需要網絡支持,只有在與遠程服務器同步時才需要網絡。

另外,使用Git代碼安全性更高,即便遠程服務器損壞,任何一個帶有代碼的機器都帶有所有的記錄,並不會造成歷史記錄的丟失。

Git來做commit和branch非常方便,任何開發人員都可以在本地創建分支和提交到本地,同時代碼合併非常快速方便,而svn要通過複雜的算法將公共祖先前的所有revisions重演才能完成合並的操作。

包括Github、osChina等代碼管理網站都使用Git來做代碼管理,平常開發者學習和參與開源都非常方便。

Git使用命令行非常方便,正常大頻率使用的也六十多個命令,而且操作快速靈活。

當然,任何事物各有優缺,而svn和Git學習非常簡單即可應對工作中的代碼管理。所以用到什麼就瞭解下才能在不同公司和團隊很快適應。

希望對你有幫助,也歡迎大家留言討論。


分享到:


相關文章: