Git常用命令总结(IDEA版、eclipse版、Terminal命令行版)

IDEA版

环境准备

1.Git官网下载安装git https://git-scm.com/download/win

image.png

2.idea中配置git路径

setting→version control → git


image.png

3.在git仓库(github、码云、gitlab等)上创建一个项目,我这里以gitlab为例

image.png

4.idea从gitlab上检出项目

image.png
image.png
image.png

输入gitlab的账户进行登录

image.png

5.注意选择no因为还没上传初始化项目

image.png

6.idea在git_test目录下创建springboot项目

image.png

7.右键项目,添加所有修改到暂存区

image.png

8.提交改变到本地仓库

image.png

image.png

9.右键项目,push到远程gitlab仓库

image.png
image.png

10.到gitlab上发现已经推送到远程仓库

image.png

11.直接在远程master做出更改然后拉取更新到本地

image.png

image.png

image.png

image.png

12.代码出现冲突怎么解决?

  • 首先同事提交修改README.md文件到远程主分支
image.png
  • 然后我在本地也修改README.md文件


    image.png
  • 提交修改到本地仓库,注意提交之前应先把代码添加到暂存区,因为这里idea自动帮我加入了暂存区,所以就不用添加了,可以项目树是红色代表没添加暂存区,蓝色代表添加暂存区未提交,白色代表已提交到本地仓库,黄色是.gitignore规定不用提交的文件。


    image.png
  • 拉取远程仓库代码到本地仓库合并,因为本地也修改并提交了README.md文件,所以冲突就产生了。


    image.png

    image.png

    image.png
image.png
  • 在本地仓库解决冲突合并之后,就可以推送push到远程分支了。

13.在本地创建分支并推送到远程gitlab仓库

  • 右键项目选择分支


    image.png
  • 新建分支


    image.png
  • 新分支为开发分支 dev


    image.png
  • 看右下角,当前分支已经切换到dev分支了


    image.png
  • 将dev分支 推送到gitlab


    image.png

    image.png
  • gitlab上刷新可以看到推送dev分支成功


    image.png

14.如何切换分支?

image.png
  • 如上图可以看到Local Branches是本地分支, Remote Branches是远程gitlab上的分支。

15.如何合并dev分支代码到master分支?

  • 首先在远程dev分支修改代码


    image.png
  • 在本地仓库master分支拉取代码,选择从dev分支拉取并进行合并


    image.png

    -注意:如果出现冲突,解决后推送到远程仓库即可。

16.如何删除用不到的分支?

  • 假如dev分支是为了修改某个bug创建的分支,bug修改完成,合并到主分支之后,dev没用了,就可以进行分支删除

  • 如下,删除本地和远程的dev分支


    image.png

    image.png

17.如何查看提交历史?

image.png

eclipse版

1.在gitlab上创建一个新的项目git_test_eclipse

image.png

2.在eclipse上git clone代码

image.png
image.png
image.png
image.png
  • 因为是在gitlab创建的空项目,所以先在其他路径创建一个springboot项目


    image.png
  • 复制新创建项目文件夹下的内容到git clone下来的目录里。


    image.png
  • 导入maven项目,即git clone的项目


    image.png

3.eclipse上进行首次提交,打开git操作页面

image.png

image.png
  • 添加修改到暂存区


    image.png
  • 添加到暂存区后,可提交到本地git仓库,右键→Team→commit


    image.png

    image.png
  • push推送到远程仓库,右键→Team→remote→push


    image.png
  • 注意:选择下一步做如下选择,提交主分支


    image.png
  • 再下一步 → finish


    image.png
  • 查看远程仓库gitlab发现已被提交到远程


    image.png

4.eclipse如何拉取远程仓库的更新到本地?

  • 先在gitlab更新一下README.md文件,模拟同事修改提交后,我本地进行拉取更新。


    image.png
  • 直接右键→Team→Pull拉取并合并


    image.png

    image.png

5.如何解决冲突?

  • 首先在远程仓库修改README.md文件


    image.png
  • 其次在本地修改README.md并提交到本地仓库


    image.png
image.png
  • 然后进行拉取远程合并右键→Team→Pull之后冲突就产生了


    image.png

    image.png
  • 然后右键→Team→add to inde添加到暂存区,之后就可以commit提交本地,romote→push推送远程。


    image.png

    image.png

    image.png

6.创建新的分支dev并推送到远程仓库

image.png

image.png

image.png
  • push推送dev分支到远程仓库


    image.png

    image.png

    image.png

7.如何切换分支

image.png

image.png

8.如何把dev分支合并到主分支?

  • 首先切换dev分支,把远程dev分支的pull到本地
  • 切换到主分支
  • 然后点击右键→Team→Merge


    image.png
  • 选择要合并到主分支的分支,这里选择本地Local的dev分支


    image.png

    image.png
  • 解决冲突


    image.png

9.如何删除用不到的分支dev?

  • 切换到主分支master
  • 按照如下图中点击删除分支


    image.png

    image.png

10.如何查看提交历史?

image.png

image.png

image.png

Terminal命令行版

讲解Terminal使用Git我还是以上面讲idea的git_test工程为例。

1.克隆git_test工程到本地

image.png
  • 直接在命令行cmd或者powerShell都可以,我更喜欢在idea的Terminal命令行操作
  • 打开idea的命令行Terminal,切换到E盘


    image.png
  • 克隆项目到本地
git clone https://git.lug.ustc.edu.cn/kangqing/git_test.git

image.png
  • idea打开e:/git_test项目


    image.png

2.如何提交代码?

  • 我们新添加一个文件,yunqing.md
  • 选择记住,以后新建文件都加到git


    image.png
image.png
  • 查看更改的信息
git status
  • 添加所有修改文件到暂存区(注意所有文件是最后的点),也可指定添加具体文件到暂存区
git add .
  • 提交暂存区中的更改到本地仓库,并添加提交备注信息
git commit -m '第一次提交'
  • 推送到远程gitlab仓库
git push
image.png
  • 在远程gitlab上可以看到推送成功


    image.png

3.如何拉取远程仓库的代码?

  • 在远程上修改yunqing.md文件,模拟同事提交推送的修改


    image.png
  • 本地直接git pull拉取并合并代码
git pull
image.png

4.如何解决冲突?

  • 在本地修改yunqing.md并提交本地仓库


    image.png

注意上图中并没有提交暂存区就提交成功了,因为提交的时候加了-a,就代表先提交暂存区

git commit -am '提交本地修改制造冲突1111'

  • 在远程修改yunqing.md文件


    image.png
  • git pull拉取合并代码,出现冲突


    image.png
  • 该删的删,该改的改


    image.png
  • 解决冲突之后提交本地仓库,然后推送到远程gitlab

git commit -am '冲突解决提交本地仓库'

git push
image.png

5.如何新建分支?

git branch dev

6.查看分支?

git branch -a
image.png

7.如何切换分支?

git checkout master
image.png

8.如何创建并切换分支?创建并切换到test分支

git checkout -b test

9.如何推送test分支到远程gitlab?

  • 首先切换到test分支
  • 执行推送
git push
  • 发现提示推送分支应该执行的语句,按照提示的执行
git push --set-upstream origin test
image.png

image.png

10.如何删除分支?例如删除dev分支

git branch -d dev

11.如何合并分支?例如为了修改一个紧急bug创建的test分支,修改内容后要合并到主分支。

  • 切换到test分支修改


    image.png
  • 提交
git commit -am 'test分支上修改一个bug'
  • 切换回主分支
git checkout master
  • 合并test分支到主分支
git merge test
image.png

12.合并分支的之后遇到冲突怎么办?

  • 切换到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
image.png

image.png
  • 直接把有冲突的地方改正然后提交。
git commit -am '合并解决冲突'
  • 最后推送到远程仓库
git push

13.如何查看提交历史?

git log

注意,git log命令查看提交历史没有图形化界面看起来看舒服,可直接按下英文状态下q退出

  • 或者直接gitk调出git默认提交历史图形界面
gitk
image.png

更多git相关命令行教程请看http://iissnan.com/progit/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,014评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,796评论 3 386
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,484评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,830评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,946评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,114评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,182评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,927评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,369评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,678评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,832评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,533评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,166评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,885评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,128评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,659评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,738评论 2 351

推荐阅读更多精彩内容

  • 三大区域: 工作区 → 缓存区 → 本地仓库 一 、 使用 git config 命令进行配置: git ...
    Manchangdx阅读 2,841评论 0 2
  • 获得版本库 git init git clone​ 查看信息 git help Git log​ 查看提交日志 g...
    持续进步者阅读 325评论 0 3
  • 基本操作 git安装 在Windows上使用Git,可以从Git官网直接下载安装程序,默认安装即可。安装完成之后会...
    轩_7ca0阅读 1,900评论 0 0
  • 这篇博文是自己在学习git过程中的思考总结。本文仅仅代表个人的看法,如有不妥地方还请本文文末留言。 😊 原文链接g...
    Ming_Hu阅读 1,060评论 4 18
  • 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统。 二:SVN与Git的最主要的区别? SVN是集...
    Splendid飞羽阅读 316评论 0 0