學習當然重要,但總結/鞏固更加劇要;否則學得再多,丟得也越多。
衆所周知,如今大多數公司的代碼,爲了安全起見都是放在公司內網的SVN服務器,它做爲一個基礎的代碼存儲倉庫已經足夠用了。但除了工做上的代碼以外,每一個人都須要不停學習整理新的知識,這些知識對於咱們來講很寶貴,必然須要一個穩定的地方來存放,而github是一個很好的選擇。由於它的好處不少,因此在這些年已經逐漸積累了龐大的用戶羣體。咱們能夠在上面開放本身的代碼,也能夠看見別人開源的代碼,與世界上不一樣的人進行溝通交流,以此來提高本身的能力。git
git有如下優勢:
1.git是分佈式的系統,倉庫鏡像存放於多個指向相同倉庫的不一樣節點上(有一個本地倉庫的概念,即便個別節點上代碼遺失,在另外的節點上也會有備份),不一樣於咱們熟悉的svn是將全部的代碼放在一個地方。
2.git分支更加簡單,只是一個目錄而已。
3.速度快,靈活。
4.能夠離線提交。
我發現不少人都喜歡拿git和svn相比較,其實二者間沒有多少可比性,只是適用的場景不一樣。一個針對於開源社區,另外一個負責於公司的平常使用,互不衝突。
今天要說的是git在intellij idea工具上的一些基本操做,使用idea來幫助咱們完成代碼的提交、更新、回滾等。涉及到三個工具:git、github、idea,下面從建立帳號到配置一步一步來說:github
github中能夠從多個地方操控本身的倉庫,分別是:spring
1.github網頁,經過網頁自身提供的功能進行操做;安全
2.git命令行客戶端,經過命令來控制;服務器
git下載地址:https://git-scm.com/download/winintellij-idea
3.githubDesktop,是一個桌面應用,一個圖形化界面,可在這個界面上執行相關操做。後臺固然也是經過git命令來操做了,只不過githubDesktop使操做變得更加快捷了。(svn也有svn命令,相信你們在svn中極少使用命令去操做吧?有了這玩意兒後,我幾乎不多去用命令,這也是全部的可視化客戶端工具存在的意義)。分佈式
githubDesktop下載地址:https://desktop.github.comide
爲了讓intellij-idea支持git,因此git工具必定要先下載,由於要配置到intellij idea中;至於githubDesktop,就至關因而svn tortoise,我通常都是安裝了的,看你本身吧。svn
其實就能夠簡單的理解爲存放代碼的目錄,根據我的須要去建立。工具
1.建立倉庫:
1.1.在帳號建立完成後,會進入到歡迎頁面。在該頁面點擊右上角的「New repository」按鈕以建立;
1.2.在這裏能夠看到我建立的帳號爲coder-chengxp,指定的倉庫名字爲my-idea-workspace-test。根據你的須要,設置倉庫的可見性:公開/私有;
1.3.建立倉庫成功後,再點擊左上角的頭像,回到歡迎頁。此時,頁面左側的倉庫列表中,已經顯示了剛纔建立的倉庫;
2.刪除倉庫:
2.1.點擊倉庫列表中的指定倉庫進入;
2.2.再點擊「Settings」選項卡;
2.3.將網頁滾動到最下方,你會發現「Delete this repository」按鈕,點擊該按鈕決定刪除當前倉庫;
2.4.緊接着,出現了確認刪除對話框。刪除倉庫被github視爲一種很危險的操做,一旦刪除,沒法撤銷,因此須要鍵入當前倉庫名稱以確認刪除。(直接點擊刪除,後面會在inllij-idea中建立一個同名的,不刪除會建立失敗);
1.配置git
要在intellij-idea中使用github,先得配置git,File→Settings→Version Control→Git,而後在Path to Git executable中設置git的執行文件(上面已經給了git下載地址,下一步一步,安裝完後找到這個文件就是了),再點擊"Test"按鈕測試是否配置成功。若是顯示出了版本號,就表示配置成功了。
2.配置github
點擊「git」下的"github"選項卡打開以下頁面,在這個頁面中添加一個你剛建立的github帳號。添加成功後,你以後全部對於倉庫的操做,都在這個帳號下;
上面已經演示瞭如何在網頁上建立倉庫。可是有些狀況下,咱們會把本地的任何一個文件夾提交到gitHub做爲一個倉庫,好比咱們本地的某個workspace/project下已經有了多個springBoot項目,要將它提交到gitHub。直接提交這個目錄做爲倉庫,該目錄下的全部文件也就一併提交到倉庫下了。
1.打開目錄:
在本地文件夾下建立一個目錄,來做爲GitHub倉庫的名稱。先在idea中做爲project打開:
2.將目錄提交爲倉庫:
3.選擇是否私有,確認提交,再點擊finish:
這個倉庫建立成功後,咱們就能夠直接在這個倉庫目錄下來完成咱們的基本操做了。O(∩_∩)O
1.如今新建一個項目,在這個倉庫目錄下
2.右鍵要提交的目錄(和svn同樣,先add,後提交)
3.輸入提交信息,點擊ok,完成提交
commit!
千萬不要覺得這樣就提交完成了哦!!!這裏只是把代碼提交到了本地倉庫,並無提交到github。
4.提交到github服務器(push)
到這裏,才完成了一次真正意義上的提交。
再回到gitHub的網頁上,進入到當前倉庫,提交的代碼已經存在了,大功告成。
還有,在某些時候咱們已經提交到本地了,可是未push到服務器以前。想要撤銷本次提交,也是能夠的,能夠這樣:
1.回退到上一個版本:
2.執行回退:在下面的彈出框中輸入"HEAD^","^"表明回到上一次的版本狀態,即清理本地本次提交的版本;
1.咱們先在網頁上(你也能夠在其餘地方修改,或是拷貝了這個git倉庫鏡像的任何地方,均可以操做)找到一個文件修改,就這個主配置文件吧:
2.點擊編輯按鈕進行修改,隨便加入一個配置吧。
3.提交本次修改。
4.回到idea,右鍵這個同名文件,點擊「fetch」,fetch會把當前點擊目錄下的全部操做(如提交記錄)獲取到本地,以後由你選擇要更新的內容。
5.點擊對應的提交記錄,再雙擊對應提交文件,來比對與服務器代碼差別:
6.將修改更新到本地,而後直接確認就ok:
在提交記錄列表中,找到要回退的文件/目錄,直接回滾到提交時的狀態。
(可是這裏我還沒明白Revert Selected changes和Apply Selected changes真正意義上的區別,二者貌似均可以實現回退,並均可以比對回退文件內容,但願有好心人來解惑)
1.建立分支
1.1如今就把這個新建立的項目打一個分支;
1.2鍵入分支名稱,顯示已經建立成功;
1.3隨便在項目中修改一個文件,而後提交,就會發現提交的時候,是重新的分支開始的。成功以後,右下角會出現以下提示:
1.4.此時,你擁有了兩個分支: