1. 程式人生 > >myeclipse git常用操作

myeclipse git常用操作

  1. git首次建立倉庫提交
  2. git新建本地分支提交到遠端
  3. git 衝突解決
  4. git回退

1 git首次建立倉庫提交

  1. 在gitHub上建立倉庫
    在這裡插入圖片描述

  2. 專案名稱-Team-Share Project…
    右擊專案,選擇Team,選擇Share Project
    在這裡插入圖片描述

  3. 在Configure Git Repository視窗,點選“User or create repository in parent folder of project”,然後點選“Create Repository”,新建一個本地倉庫,點選Finish。
    在這裡插入圖片描述
    此時,專案中可以看到很多問號,表示有檔案需要提交:
    在這裡插入圖片描述
    注意:這裡一定要選擇"create the Repository in the parent folder of the project……",否則,git會把整個Test目錄放在gitHub的MyUtils目錄下,就是一個Test目錄又巢狀另一個Test目錄加粗樣式

  4. 專案右鍵,Team。Commit
    將專案增加到暫存區,增加註釋,Commit and Push,具體操作如下圖所示:
    在這裡插入圖片描述

  5. 這時候會彈出一個Destination Git Repository視窗,如下圖所示,填寫資訊,其中URI為步驟1中在gitHub上建立倉庫的地址,然後點選Next,然後點選Finish

在這裡插入圖片描述

  1. 自動選擇了master,點選Finish

在這裡插入圖片描述

2 git新建本地分支提交到遠端

2.1 場景

假設我們本地倉庫分支為origin,遠端倉庫只有master分支,我們需要一個dev分支,我們需要在本地先建立dev分支,之後同步到遠端倉庫,具體步驟如下。

2.2 步驟

  1. 點選Team,然後選擇Swtich To,然後選擇New Branch,會彈出Create a new branch對話方塊,在對話中填入我們的分支名稱,此處我們起名為dev分支,如下圖所示:
    在這裡插入圖片描述


    在這裡插入圖片描述

  2. 點選完成,建立完新分支,會自動切換到分支上dev,此時遠端倉庫還沒有我們新建的dev分支,只有本地倉庫有
    在這裡插入圖片描述

  3. 將本地建立的dev分支,推送到遠端倉庫,點選Team,然後選擇Push Branch ‘dev’…,會彈出Push to branch in remote對話方塊,填寫遠端分支名稱,點選Next,然後點選Finish即可
    在這裡插入圖片描述
    在這裡插入圖片描述

  4. 檢視遠端分支,會多一個dev分支

3 git 衝突解決

3.1 場景

  1. 假設我們專案組同時有A、B個人在同一分支上修改同一個檔案,當A提交過檔案,B在去拉去會失敗,產生衝突。
  2. 假設我們專案組同時有多個分支dev、master,並且在這兩個分支上有同一檔案被修改,並且dev已經提交。當我們需要把dev合併到master,怎麼操作

3.2 步驟

場景3.1 中的1
一下都是基於dev分支

  1. 模擬A:直接在gitHub上修改檔案,
    我們在程式碼Test.java中增加註釋“修改1”,如下圖所示,並且提交該檔案
    在這裡插入圖片描述

  2. 模擬B:我們在本地Myeclipse中修改檔案
    我們在程式碼Test.java中增加註釋“修改2”,如下圖所示
    在這裡插入圖片描述

  3. 然後我們在myeclipse中Team->Pull專案,這是會彈出如下對話方塊,標示為衝突
    在這裡插入圖片描述
    在這裡插入圖片描述

  4. 將本地修改的程式碼放在快取區,選擇Team-> Stashs -> Stash Changes…,會彈出對話方塊,填寫暫存名稱
    在這裡插入圖片描述
    在這裡插入圖片描述

  5. 然後在才在專案向Team-> Pull,從遠端倉庫拉取最新程式碼,拉取成功後

  6. 從快取區將修改的程式碼取出,點選暫存出棧並移除,
    在這裡插入圖片描述
    在這裡插入圖片描述

  7. 這樣最新程式碼跟本地修改的程式碼就會混雜在一起, 手工解決衝突後, 提交解決衝突後的程式碼。

在這裡插入圖片描述
在這裡插入圖片描述

場景3.1 中的2
切換到master分支,修該Test檔案,提交檔案,然後點選Team->Merge選擇dev分支合併

4 git回退

我們先了解一些概念:
git reset
git reset (–mixed) HEAD~1
回退一個版本,且會將暫存區的內容和本地已提交的內容全部恢復到未暫存的狀態,不影響原來本地檔案(未提交的也
不受影響)
git reset –soft HEAD~1
回退一個版本,不清空暫存區,將已提交的內容恢復到暫存區,不影響原來本地的檔案(未提交的也不受影響)
git reset –hard HEAD~1
回退一個版本,清空暫存區,將已提交的內容的版本恢復到本地,本地的檔案也將被恢復的版本替換

4.1 步驟

  1. 點選Team-> Reset
    在這裡插入圖片描述

  2. 選擇需要回退到那個遠端分支
    在這裡插入圖片描述