亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎樣在Idea中使用Git

發布時間:2021-11-10 15:54:06 來源:億速云 閱讀:327 作者:柒染 欄目:大數據

怎樣在Idea中使用Git,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

IDEA同步遠程分支信息

在Idea視圖中GIT的分支信息在右下角,如果我們在remote新建了分支,本地默認不顯示,可以在上方導航:VCS-Update project 同步遠程分支信息。
怎樣在Idea中使用Git

IDEA新建、切換本地分支

在IDEA右下角GTI視圖中,我們可以選擇分支進行checkout,即新建/切換分支;
如果我們需要指定從哪個分支新建分支,則在GIT視圖中選擇分支-checkout As進行新建
怎樣在Idea中使用Git
如果我們需要查看某個分支是從哪個分支拉的,我們可以使用命令:git reflog show childBranch 命令查看
怎樣在Idea中使用Git

GIT命令新建/切換分支

--查看當前分支
git branch
--基于某個分支新建分支
git checkout 原分支名
--新建分支并切換
git checkout -b 新分支名稱
--然后使用git branch查看,分支已經新建并切換

GIT命令查看/切換上游分支

我們使用git checkout as分支后,分支默認跟蹤的是checkout的分支,我們可以使用命令來查看當前分支跟蹤的上游分支

--查看當前分支的上游分支
git branch -vv
--切換跟蹤的上游分支
git branch --set-upstream-to=origin/release_1001

GIT命令刪除/恢復分支

刪除

--查看分支列表
git branch -a
--刪除本地分支
git branch -D 分支名稱
--刪除遠程分支
git push origin --delete 分支名稱

恢復

刪除時會顯示被刪除的hash
$ git branch -D dev
Deleted branch dev (was 1a103dd).

--恢復刪除
git branch dev 1a103dd(分支hash即可)

git遠程強制覆蓋本地

比如說本地刪除了一個文件,需要遠程覆蓋回來

git reset --hard origin/所在的分支

IDEA合并分支

例如我們從test分支新建了dev分支,在dev分支上進行了代碼改動后,需要將dev的提交合并到test分支。

  • git視圖選擇test分支checkout切換到test

  • 項目右鍵:git-repository-pull更新test分支

  • 項目右鍵:git-repository-merge changes,選擇dev分支進行合并 怎樣在Idea中使用Git

GIT撤銷merge

假設我們合并了一個分支,但是不想合并了,想撤銷這個合并的動作

git merge --abort

GIT選擇合并某次提交

master拉出分支dev,且都進行了多次提交,此時master需要合并dev某一次的提交(可能是個緊急bug修復)。

--1.切換到master分支
checkout master
--2.git頁面上查看提交記錄(git log -n查看最近n條)
git log -5
--3.選擇合并某個commit
git cherry-pick 0601e177dd

然后就正常pull> push即可

GIT rebase

一般情況下我們如果需要合并代碼,會使用git merge,但是還有一個比較強大的功能是rebase;rebase的意思是指將某個分支按照另一個分支重新設置基準;這樣的好處有:

  • rebase對比merge節點樹會顯示的更加清晰

  • rebase可以減少不必要的commit信息

merge和rebase對比

假設我們有分支master,然后checkout出來一個dev,我們按照以下操作步驟來測試一下。

1.master 修改并commit
2.dev 修改并commit 
3.master 修改并commit
4.dev修改并commit

如果我們的dev分支需要和master保持最新,避免無效修改,我們需要將master代碼合并到dev中。

//切換到dev分支
git checkout dev
//dev分支同步master的提交
git rebase master

下圖是我們對比merge(左)和rebase(右)的節點樹顯示效果。
怎樣在Idea中使用Git
由上圖可以看出,merge后的節點樹會按照提交時間進行排序;而dev重設基準后,dev的提交都是在master后面顯示,由此可以保持提交信息的清晰。

rebase合并提交信息

注意,此情況在本地提交情況下使用
假設存在一種這樣的情況:我在本地修改了一個bug,commit了5次之后才修好,那么如果我吧這些push到remote,會導致gitlog很亂,其實這五個提交可以合并成一個。在這種情況下,我們可以使用rebase合并本地的commit

首先我們在本地進行5次提交,git log如下:
怎樣在Idea中使用Git

然后我們使用git rebase -i 提交ID(注意這個id代表,合并這個id之后的所有提交,但是不包含這個id的,如果需要包含的話要往前找一下

git rebase -i cf8525cd52c4bb87d3f11b4f721e6c1a8a3ac3f4

然后git會進入vim頁面,我們可以按insert進入編輯模式,填寫對應的操作;此處有三個參數:

  • pick : 代表合并后的提交用這個提交的注釋

  • s : squash命令的簡寫,代表合并提交中包含這個提交

  • d : 代表合并提交中排除這個提交

我們按需要更改參數后,esc退出編輯模式,:wq寫入并退出,git會進入下一步:填寫合并的commit message界面:
怎樣在Idea中使用Git

同樣的我們進入vim的編輯模式,注釋掉不需要的信息,并將5次提交的信息修改為bug fix 2,:wq寫入并退出就完成了合并。
怎樣在Idea中使用Git

最后,我們分別在git命令和IDEA視圖中查看,我們的5次提交信息以及合并為bug fix 2。
怎樣在Idea中使用Git

push和remote沖突

本地進行了修改,然后commit了;結果push的時候發現remote已經被修改過,我們使用pull命令后,會失敗,此時會提示: You have not concluded your merge.(MERGE_HEAD exists) 此時我們應該:

  • 備份本地數據

  • 放棄本地修改,遠程reset本地
    git fetch --all
    git reset --hard origin/所在的分支

  • 然后用備份的數據手動合并本地再提交

關于怎樣在Idea中使用Git問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

五华县| 夹江县| 苗栗市| 边坝县| 建阳市| 扶沟县| 招远市| 闸北区| 崇礼县| 苗栗市| 湖南省| 常熟市| 南充市| 繁峙县| 莱阳市| 咸阳市| 新建县| 米易县| 行唐县| 北票市| 平邑县| 华池县| 龙岩市| 新安县| 察隅县| 玉屏| 河东区| 根河市| 固始县| 监利县| 大竹县| 临武县| 德兴市| 柳林县| 彭水| 乃东县| 新安县| 新河县| 玉屏| 浦县| 庆安县|