idea 提交git常见操作
一、關聯本地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 :刪除所選分支
六、本地分支同步遠程倉庫
七、本地分支拉去遠程倉庫數據
八、本地分支推送到遠程倉庫
九、變基操作
選擇分支執行變基操作。這里需要注意當前分支為補丁分支,選中的分支為基底分支。也就是說當前分支提交會添加在選中分支提交之后。
十、合并提交(交互式變基)
在代碼沒有pull前我們可以在本地分支進行提交的合并。這樣會使得遠程分支不去關心本地開發過程日志,而使得遠程日志干凈整潔。
變基前log
?
找到要合并的第一條log,然后右鍵選擇Interactively Rebase from Here...進行交互式變基
(此選項低版本IDEA可能沒有請更新到2018版以上)
?
除題一條外其他全部選擇squash隨前面的提交一并提交
pick:保留該commit(縮寫:p)
reword:保留該commit,但我需要修改該commit的注釋(縮寫:r)
edit:保留該commit, 但我要停下來修改該提交(不僅僅修改注釋)(縮寫:e)
squash:將該commit和前一個commit合并(縮寫:s)
fixup:將該commit和前一個commit合并,但我不要保留該提交的注釋信息(縮寫:f)
exec:執行shell命令(縮寫:x)
drop:我要丟棄該commit(縮寫:d)
編輯交互式變基提交說明。默認顯示合并的所有提交的內容,我們也可以添加和修改內容。
變基后日志
?
十一、提交回退
我們如果想要放棄最近一次提交的內容可以使用提交回退
項目右鍵?--> Git --> Repository --> Reset HEAD...
執行回退(HEAD后面加幾個^就回退幾次提交)
版本回退詳細說明地址
(1)、Mixed是默認方式。只保留源碼,會回退 commit 和 index 的信息;
(2)、Soft 回退到某個版本。只回退了 commit 的信息,之前寫的代碼還是保留的,不會恢復到 index file 一級。如果還要提交,直接 commit;
(3)、Hard 徹底回退,本地源碼也會變成上一個版本內容,不保留之前 commit 的代碼。
是回滾到哪個版本,例如,HEAD 為當前版本,HEAD^ 為上一個版本;
注: 使用 git reset 回滾,一般使用默認的 mixed 或者粗暴的 hard 方式。
1. working tree, index, commit的理解
這三個名字可以簡單理解為文件在本地倉庫存在的三種不同的位置。
如下,是做commit提交兩段提交過程,工作區(working tree),暫存區(index)和 branch(commit)。
十二、提交應用(挑櫻桃)
我們可以使用提交應用的方式,將一次提交應用在其他分支上。
首先我們要切換至需要應用提交的分支上。
然后在log界面找到那次提交,右鍵 --> Cherry-Pick
?
“摘櫻桃”
功能: 該功能是通過拉取其他分支的部分提交內容到某一分支
十三、強制版本回退
?
?
總結
以上是生活随笔為你收集整理的idea 提交git常见操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue3.0(包含中文官方文档)
- 下一篇: Jenkins安装和持续集成环境配置