[轉]新人常識普及:咱們爲何必須會git和maven

轉自貼吧:http://tieba.baidu.com/p/3458400116java

鑑於本吧多新人,新人又須要多交流才能進步,今天就給新人們講講git和maven的必要性,由於,他們的重要性,遠遠超過不少沒用過的人的想象。


不少人應該用過svn cvs之類的代碼版本管理工具,git也是其中之一。
svn和git最大的幾個區別要點,svn必需要有服務端,網絡能連上服務端才能提交和更新,git不須要,每一臺裝了git的電腦都是服務端,各臺電腦之間能夠相互同步和推送,而提交不須要網絡就能夠提交到本地的git庫裏。
對於吧友們來講,這樣的好處就是,若是要分享代碼,不須要打個壓縮包傳來傳去,也不須要找個服務器搭個svn來共享,如今oschina,csdn等網站都提供了免費的git服務器,你們註冊個賬號,提交下去,把地址發給別人就能夠了,而免費的svn服務器,幾乎是不存在的。
並且svn由於服務端是單一的,一旦服務器壞了,整個版本庫的歷史記錄就沒有了,也無法再回滾,git每臺電腦都是服務端,只要兩臺電腦作過同步,任何一臺壞了,另外一臺還保有着全部的歷史記錄,仍然能夠提交更新回滾,不怕代碼歷史丟失。
此外,git還有許多強大之處,好比git的分支就比svn的強太多,這些就留給你們摸索吧。


再說說maven,咱們每作一個項目,都要往lib目錄扔不少jar包,spring的啊hibernate的啊apache的啊等等,這樣就會致使不少包不知從哪一個角落下載回來的,名稱千奇百怪,版本也不明,項目多了之後還得本身複製來複制去,容易有多種不一樣版本的包混雜。maven最基本最重要的功能就是管理這些項目間的依賴關係,用一個xml來維護。若是你的工程要用spring,你就在maven的pom.xml裏配一下spring的項目名稱和版本號,要用其餘的也同樣。
得益於maven已經成爲java世界的主流工具,絕大部分知名的項目都在maven中央倉庫有標準名稱,有各類不一樣的版本存在,你只要配下名稱,配下版本號,maven就會自動從網上爲你下載jar包並讓你的工程依賴上,你的本地硬盤的倉庫目錄能看到層次分明的你用過的全部第三方項目的jar包和源代碼,不再用去下載那些來路不明的jar包再扔到工程裏了,也不用擔憂寫同一個項目的兩我的一個用了3.0版的spring,一個用了2.5版的spring,以致搞出莫名其妙的問題。


有了maven,咱們再也不須要往git或svn提交jar包,項目庫的體積大大減少,下載項目變得快多了。並且只要提交一個pom.xml文件和你的代碼,其餘人天然也能下載到和你本地如出一轍的第三方jar包,下過一次某個jar包之後,其餘項目再用同一個jar包時,maven天然會使用本地倉庫文件夾裏存在的jar包,不須要再次下載,也不會出現不少個拷貝。
另外一個好處是maven的pom.xml任何一個主流ide工具都認識,均可以導入項目,你不用再操心你提交的.project和.settings文件由於別人的eclipse版本和你不一樣而導不進去,也不用再擔憂有人用的是別的ide認不得你的eclipse項目元文件,你不須要提交這些和開發工具備關的文件到服務器上了。


若是咱們身處異地,要共同開發或者分享點什麼項目,毋庸置疑,maven和git必然是極大提高效率的兩大基礎利器,但願你們能早日投入精力學會這兩個工具,掃除技術溝通的阻礙,不要再停留在史前時代了。git

相關文章
相關標籤/搜索