IDEA版
環(huán)境準(zhǔn)備
1.Git官網(wǎng)下載安裝git https://git-scm.com/download/win

2.idea中配置git路徑
setting→version control → git

3.在git倉庫(github、碼云、gitlab等)上創(chuàng)建一個(gè)項(xiàng)目,我這里以gitlab為例

4.idea從gitlab上檢出項(xiàng)目



輸入gitlab的賬戶進(jìn)行登錄

5.注意選擇no因?yàn)檫€沒上傳初始化項(xiàng)目

6.idea在git_test目錄下創(chuàng)建springboot項(xiàng)目

7.右鍵項(xiàng)目,添加所有修改到暫存區(qū)

8.提交改變到本地倉庫


9.右鍵項(xiàng)目,push到遠(yuǎn)程gitlab倉庫


10.到gitlab上發(fā)現(xiàn)已經(jīng)推送到遠(yuǎn)程倉庫

11.直接在遠(yuǎn)程master做出更改然后拉取更新到本地




12.代碼出現(xiàn)沖突怎么解決?
- 首先同事提交修改README.md文件到遠(yuǎn)程主分支

-
然后我在本地也修改README.md文件
image.png -
提交修改到本地倉庫,注意提交之前應(yīng)先把代碼添加到暫存區(qū),因?yàn)檫@里idea自動(dòng)幫我加入了暫存區(qū),所以就不用添加了,可以項(xiàng)目樹是紅色代表沒添加暫存區(qū),藍(lán)色代表添加暫存區(qū)未提交,白色代表已提交到本地倉庫,黃色是.gitignore規(guī)定不用提交的文件。
image.png -
拉取遠(yuǎn)程倉庫代碼到本地倉庫合并,因?yàn)楸镜匾残薷牟⑻峤涣薘EADME.md文件,所以沖突就產(chǎn)生了。
image.png
image.png
image.png

- 在本地倉庫解決沖突合并之后,就可以推送push到遠(yuǎn)程分支了。
13.在本地創(chuàng)建分支并推送到遠(yuǎn)程gitlab倉庫
-
右鍵項(xiàng)目選擇分支
image.png -
新建分支
image.png -
新分支為開發(fā)分支 dev
image.png -
看右下角,當(dāng)前分支已經(jīng)切換到dev分支了
image.png -
將dev分支 推送到gitlab
image.png
image.png -
gitlab上刷新可以看到推送dev分支成功
image.png
14.如何切換分支?

- 如上圖可以看到Local Branches是本地分支, Remote Branches是遠(yuǎn)程gitlab上的分支。
15.如何合并dev分支代碼到master分支?
-
首先在遠(yuǎn)程dev分支修改代碼
image.png -
在本地倉庫master分支拉取代碼,選擇從dev分支拉取并進(jìn)行合并
image.png
-注意:如果出現(xiàn)沖突,解決后推送到遠(yuǎn)程倉庫即可。
16.如何刪除用不到的分支?
假如dev分支是為了修改某個(gè)bug創(chuàng)建的分支,bug修改完成,合并到主分支之后,dev沒用了,就可以進(jìn)行分支刪除
-
如下,刪除本地和遠(yuǎn)程的dev分支
image.png
image.png
17.如何查看提交歷史?

eclipse版
1.在gitlab上創(chuàng)建一個(gè)新的項(xiàng)目git_test_eclipse

2.在eclipse上git clone代碼




-
因?yàn)槭窃趃itlab創(chuàng)建的空項(xiàng)目,所以先在其他路徑創(chuàng)建一個(gè)springboot項(xiàng)目
image.png -
復(fù)制新創(chuàng)建項(xiàng)目文件夾下的內(nèi)容到git clone下來的目錄里。
image.png -
導(dǎo)入maven項(xiàng)目,即git clone的項(xiàng)目
image.png
3.eclipse上進(jìn)行首次提交,打開git操作頁面


-
添加修改到暫存區(qū)
image.png -
添加到暫存區(qū)后,可提交到本地git倉庫,右鍵→Team→commit
image.png
image.png -
push推送到遠(yuǎn)程倉庫,右鍵→Team→remote→push
image.png -
注意:選擇下一步做如下選擇,提交主分支
image.png -
再下一步 → finish
image.png -
查看遠(yuǎn)程倉庫gitlab發(fā)現(xiàn)已被提交到遠(yuǎn)程
image.png
4.eclipse如何拉取遠(yuǎn)程倉庫的更新到本地?
-
先在gitlab更新一下README.md文件,模擬同事修改提交后,我本地進(jìn)行拉取更新。
image.png -
直接右鍵→Team→Pull拉取并合并
image.png
image.png
5.如何解決沖突?
-
首先在遠(yuǎn)程倉庫修改README.md文件
image.png -
其次在本地修改README.md并提交到本地倉庫
image.png

-
然后進(jìn)行拉取遠(yuǎn)程合并右鍵→Team→Pull之后沖突就產(chǎn)生了
image.png
image.png -
然后右鍵→Team→add to inde添加到暫存區(qū),之后就可以commit提交本地,romote→push推送遠(yuǎn)程。
image.png
image.png
image.png
6.創(chuàng)建新的分支dev并推送到遠(yuǎn)程倉庫



-
push推送dev分支到遠(yuǎn)程倉庫
image.png
image.png
image.png
7.如何切換分支


8.如何把dev分支合并到主分支?
- 首先切換dev分支,把遠(yuǎn)程dev分支的pull到本地
- 切換到主分支
-
然后點(diǎn)擊右鍵→Team→Merge
image.png -
選擇要合并到主分支的分支,這里選擇本地Local的dev分支
image.png
image.png -
解決沖突
image.png
9.如何刪除用不到的分支dev?
- 切換到主分支master
-
按照如下圖中點(diǎn)擊刪除分支
image.png
image.png
10.如何查看提交歷史?



Terminal命令行版
講解Terminal使用Git我還是以上面講idea的git_test工程為例。
1.克隆git_test工程到本地

- 直接在命令行cmd或者powerShell都可以,我更喜歡在idea的Terminal命令行操作
-
打開idea的命令行Terminal,切換到E盤
image.png - 克隆項(xiàng)目到本地
git clone https://git.lug.ustc.edu.cn/kangqing/git_test.git

-
idea打開e:/git_test項(xiàng)目
image.png
2.如何提交代碼?
- 我們新添加一個(gè)文件,yunqing.md
-
選擇記住,以后新建文件都加到git
image.png

- 查看更改的信息
git status
- 添加所有修改文件到暫存區(qū)(注意所有文件是最后的點(diǎn)),也可指定添加具體文件到暫存區(qū)
git add .
- 提交暫存區(qū)中的更改到本地倉庫,并添加提交備注信息
git commit -m '第一次提交'
- 推送到遠(yuǎn)程gitlab倉庫
git push

-
在遠(yuǎn)程gitlab上可以看到推送成功
image.png
3.如何拉取遠(yuǎn)程倉庫的代碼?
-
在遠(yuǎn)程上修改yunqing.md文件,模擬同事提交推送的修改
image.png - 本地直接git pull拉取并合并代碼
git pull

4.如何解決沖突?
-
在本地修改yunqing.md并提交本地倉庫
image.png
注意上圖中并沒有提交暫存區(qū)就提交成功了,因?yàn)樘峤坏臅r(shí)候加了-a,就代表先提交暫存區(qū)
git commit -am '提交本地修改制造沖突1111'
-
在遠(yuǎn)程修改yunqing.md文件
image.png -
git pull拉取合并代碼,出現(xiàn)沖突
image.png -
該刪的刪,該改的改
image.png 解決沖突之后提交本地倉庫,然后推送到遠(yuǎn)程gitlab
git commit -am '沖突解決提交本地倉庫'
git push

5.如何新建分支?
git branch dev
6.查看分支?
git branch -a

7.如何切換分支?
git checkout master

8.如何創(chuàng)建并切換分支?創(chuàng)建并切換到test分支
git checkout -b test
9.如何推送test分支到遠(yuǎn)程gitlab?
- 首先切換到test分支
- 執(zhí)行推送
git push
- 發(fā)現(xiàn)提示推送分支應(yīng)該執(zhí)行的語句,按照提示的執(zhí)行
git push --set-upstream origin test


10.如何刪除分支?例如刪除dev分支
git branch -d dev
11.如何合并分支?例如為了修改一個(gè)緊急bug創(chuàng)建的test分支,修改內(nèi)容后要合并到主分支。
-
切換到test分支修改
image.png - 提交
git commit -am 'test分支上修改一個(gè)bug'
- 切換回主分支
git checkout master
- 合并test分支到主分支
git merge test

12.合并分支的之后遇到?jīng)_突怎么辦?
- 切換到test分支
git checkout test
- 修改yunqing.md文件
- 提交到本地倉庫
git commit -am 'test分支上作了修改,制造沖突1111'
- 切換回主分支
git checkout master
- 在主分支上更改yunqing.md制造沖突222222
- 提交到本地倉庫
git commit -am '在主分支上更改yunqing.md制造沖突222222'
- 合并test到主分支
git merge test


- 直接把有沖突的地方改正然后提交。
git commit -am '合并解決沖突'
- 最后推送到遠(yuǎn)程倉庫
git push
13.如何查看提交歷史?
git log
注意,git log命令查看提交歷史沒有圖形化界面看起來看舒服,可直接按下英文狀態(tài)下q退出
- 或者直接gitk調(diào)出git默認(rèn)提交歷史圖形界面
gitk

更多git相關(guān)命令行教程請看http://iissnan.com/progit/






















































