關聯本地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: 合并分支(将目前分支與所選分支進行合并)
檢出要推送的分支,然後項目右鍵 --> 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