關聯本地Git客戶端
首先要根據系統環境安裝Git客戶端
然後使用File --> Settings --> Version Control --> Git配置客戶端安裝目錄
創建本地倉庫
根據項目要求創建自己的項目
然後使用VCS --> Import into Version Control --> Create Git Repository...在項目上創建Git倉庫
創建成功後會在項目文件夾內出現.git 目錄
克隆遠程倉庫
我們可以通過兩種方式克隆Git項目。
第一種,通過其他工具(如:Git Bash)將Git項目克隆到本地,然後使用IDEA直接打開項目。File --> Open...
第二種,使用IDEA從版本庫直接導入項目。File --> New --> Project from version control --> Git
我們需要填寫Git版本庫URL、存儲目錄
提交代碼
我們如果希望文件被Git管理那我們就要將文件進行add操作。
在IDEA中我們只要對某個文件設置一次add,之後就不用在手動進行add了。
文件右鍵 --> Git --> Add
提交代碼時我們使用 文件右鍵 --> Git --> Commit Directory...進行提交
分支管理
分支管理主要集中在IDEA的右下角操作區。
主菜單功能
New Branch : 從當前分支新建分支。上圖就是從master分支創建新的分支。
Checkout Tag or Revision : 使用分支、標籤或提交編碼,檢出一個臨時分支。
Local Branches : 本地分支列表。同時顯示對應了那個遠程分支。
Remote Branches : 遠程分支列表。
本地分支菜單
Checkout : 檢出這個分支。
Checkout As... : 使用這個分支創建新的分支並檢出到新分支。
Compare With... : 使用當前分支與所選分支做代碼提交比較。
Rebase Current onto Selected: 在當前分支做變基。(將所選分支提交加入到當前分支)
Checkout with Rebase : 檢出所選分支並做變基。(將當前分支提交加入到所選分支)
Merge into Current: 合併到當前分支(將所選分支合併到當前分支)
Rname:修改所選分支名稱
Delete :刪除所選分支
遠程分支菜單
Checkout As... : 使用遠程分支創建一個新的本地分支,並檢出這個分支。
Compare With : 使用當前分支與所選分支做代碼提交比較。
Rebase Current onto Selected : 在當前分支做變基。(將所選分支提交加入到當前分支)
Merge into Current: 合併分支(將當前分支與所選分支進行合併)
Delete :刪除所選分支
本地分支推送到遠程倉庫
檢出要推送的分支,然後項目右鍵 --> Git --> Repository --> push
push的時候會有new標籤提示會在遠程新建分支
標籤管理
檢出要打標籤的分支,然後Git --> Repository --> Tag...
本地標籤推送到遠程倉庫
項目右鍵 --> Git --> Repository --> push
然後選中底部的Push Tags。我們可以選擇推送所有標籤還是當前分支標籤。
代碼拉取、推送
代碼拉取項目右鍵 --> Git --> Repository --> pull
代碼推送項目右鍵 --> Git --> Repository --> push
變基操作
普通變基
選擇分支執行變基操作。這裏需要注意當前分支爲補丁分支,選中的分支爲基底分支。也就是說當前分支提交會添加在選中分支提交之後。
合併提交(交互式變基)
在代碼沒有pull前我們可以在本地分支進行提交的合併。這樣會使得遠程分支不去關心本地開發過程日誌,而使得遠程日誌乾淨整潔。
變基前log
找到要合併的第一條log,然後右鍵選擇Interactively Rebase from Here...進行交互式變基
(此選項低版本IDEA可能沒有請更新到2018版以上)
除題一條外其他全部選擇squash隨前面的提交一併提交
編輯交互式變基提交說明。默認顯示合併的所有提交的內容,我們也可以添加和修改內容。
變基後日志
查看提交日誌
log頁籤
查看控制檯
console頁籤。在控制檯中我們可以看到實際執行的git命令,可以幫助我們查找問題。
儲藏工作區
有時我們需要經正在編寫的代碼臨時儲藏,然後去修改一些bug,完成bug修改後進行恢復。這時我們可以使用代碼儲藏。
項目右鍵 --> Git --> Repository --> Stash Changes
填寫儲藏名稱
這是我們會發現修改的代碼不見了。
之後我們要恢復儲藏區的內容
項目右鍵 --> Git --> Repository --> UnStash Changes
選擇要恢復的暫存名稱並恢復暫存
這時我們發現修改的代碼又回來了
提交回退
我們如果想要放棄最近一次提交的內容可以使用提交回退
回退前log
項目右鍵 --> Git --> Repository --> Reset HEAD...
執行回退(HEAD後面加幾個^就回退幾次提交)
執行後日志
管理遠程倉庫地址
項目右鍵 --> Git --> Repository --> Reotes...
提交應用(挑櫻桃)
我們可以使用提交應用的方式,將一次提交應用在其他分支上。
首先我們要切換至需要應用提交的分支上。
然後在log界面找到那次提交,右鍵 --> Cherry-Pick