最新要闻
- 穷人入侵TikTok直播间:躺着就能赚钱 真爽
- 焦点热讯:为了帮梅西赢球 我敲了一晚上的电子木鱼
- 环球速递!2022贺岁档总票房突破4亿!《阿凡达2》势不可挡 最快破亿
- 快播:雷军运气爆棚:在小米手机官方活动 中奖一台小米13
- 世界资讯:小米音质最好智能音箱!小米Sound Pro开箱图赏
- 小米首款万兆路由发布:1799元
- 天天速递!只要699元!小米旗舰降噪耳机Buds 4发布:HiFi音质
- 小米8款新品价格汇总:3999元的小米13爱不爱?
- 全球新资讯:雷军:只有两家做双尺寸双高端 一家是苹果 一家是小米
- 小米13正式亮相:金属直边 继续对标iPhone!
- 今亮点!3999元起!小米13正式发布:黄金尺寸小屏、满血徕卡镜头
- 不涨价 小米13价格良心了:顶配12+512GB还便宜200元
- 全球微动态丨小米13 Pro正式亮相:中框仅仅3.2毫米!科技纳米皮手感无敌
- 全球信息:Intel显卡驱动即将大更新!DX9、DX11老游戏有惊喜
- 环球快资讯:MIUI 14“剃刀计划”砍向应用臃肿:微信文件重复存储问题终于解决
- 全球快看点丨全新界面 系统大幅精简!MIUI 14正式发布
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
世界看热讯:Git从入门到实战
Git从入门到实战
一、Git概述
1.1、Git简介
Git是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。Git仓库来存储和管理这些文件,Git仓库分为两种:
- 本地仓库:开发人员自己电脑上的Git仓库
- 远程仓库:远程服务器上的Git仓库
- commit:提交,将本地仓库文件和版本信息保存到本地仓库
- push:推送,将本地仓库文件和版本信息上传到远程残酷
- pull:拉取,将远程仓库文件和版本信息下载到本地仓库
1.2、Git下载安装
下载地址:https://git-scm.com/downloads
(相关资料图)
【点击next】:
【选择安装位置并点击next】:
【选择安装选项并点击next】:
- 建议选择Git Bash Here(命令行界面)和Git GUI Here(图形化界面)
- 其他的默认即可
【点击next】:
【选择命令行的编辑模式并点击next】:
【选择初始化时代码的结构方式并点击next】:
- 默认是master,也可以选择main
【默认即可点击next】:
【默认即可并点击next】:
【默认并点击next】:
【默认并点击next】:
【选择默认点击next】:
配置终端模拟器以与 Git Bash 一起使用
【默认并点击next】:
【默认即可并点击next】:
【默认并点击next】:
【直接点击install】:
【安装完成】:
二、Git代码托管服务
常用的Git代码托管服务
三、Git常用命令
3.1、Git全局设置
当安装Git后首先要设置用户名称和email地址
在Git命令行中执行下面的命令:
设置用户信息
git config –global user.name "用户名"
git config –global user.email "用户邮箱"
查看配置信息
- git config —list
注意:上面设置的user.name和user.email并不是我们注册时的用户名和邮箱,此处可以任意设置
3.2、获取Git仓库
获取Git仓库有两种方式:
- 在本地初始化一个Git仓库(不常用)
- 从远程仓库克隆(常用)
1、在本地初始化Git仓库
执行步骤:
- 在任意目录下创建空目录作为我们的本地Git仓库
- 进入这个目录,点击右键打开Git Bash窗口
- 执行命令git init
2、从远程仓库克隆
可以通过Git提供的命令从远程仓库克隆,将仓库克隆到本地
命令形式:git clone 【远程Git仓库地址】
3.3、工作区、暂存区、版本库概念
- 版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等
- 工作区:包含.git文件的目录就是工作区,也称工作目录,主要用于存放开发的代码
- 暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也叫做stage。暂存区是一个临时保存修改文件的地方
3.4、Git工作区中文件的状态
Git工作区中的文件存在两种状态:
- untracked未跟踪(为被纳入版本控制)
- tracked已跟踪(被纳入版本控制)
- Unmodified未修改状态
- Modified已修改状态
- Stage已暂存状态
3.5、本地仓库操作
本地仓库常用命令:
- git status 查看文件状态
- git add 将文件的修改加入暂存区
- git reset 将暂存区的文件取消暂存或者时切换到指定版本
- git commit 将暂存区的文件修改提交到版本库
- git log 查看日志
演示代码:
- git status
我们在我们的本地仓库新建User.java文件,并用git add *添加带暂存区,使用git status查看状态
MINGW64 /d/gitRepos/hellogit (main)$ git statusOn branch mainNo commits yetChanges to be committed: (use "git rm --cached ..." to unstage) new file: User.java
- git add
我们在本地仓库新建User.xml,并用git status查看状态,然后再用git add添加到暂存区
MINGW64 /d/gitRepos/hellogit (main)$ git add * # 或者(git add User.xml)MINGW64 /d/gitRepos/hellogit (main)$ git statusOn branch mainNo commits yetChanges to be committed: (use "git rm --cached ..." to unstage) new file: User.java new file: User.xml
- git commit
我们使用commit命令把我们添加到暂存区的文件提交,再使用git status查看文件的状态,就看不到User.java文件了
MINGW64 /d/gitRepos/hellogit (main)$ git commit -m "init hellogit" User.java# -m 参数 我们提交到仓库的描述信息
- git log
当我们操作几次文件之后就可以使用git log来查看我们操作的日志了
- git reset
我们可以使用该命令来退回到指定的版本,通过上面的git log查看每个版本的唯一标识
git reset --hard <唯一标识>
3.6、远程仓库操作
远程仓库的常用命令:
- git remote 查看远程仓库
- git remote add 添加远程仓库
- git clone 从远程仓库克隆
- git pull 从远程仓库拉取
- git push 推送到远程仓库
代码演示:
- git remote
如果想查看已经配置的远程仓库服务器,可以运行git remote命令
MINGW64 /d/gitRepos/hellogit (main)$ git remoteoriginMINGW64 /d/gitRepos/hellogit (main)$ git remote -vorigin https://github.com/chzj1328/hellogit.git (fetch)origin https://github.com/chzj1328/hellogit.git (push)
- git remote add < shortname > < url > 添加一个新的远程仓库
我们再github 建立一个新的仓库,名称和我们本地仓库名称一致,然后使用git remote add让它和远程仓库发生关联
MINGW64 /d/gitRepos/repo1 (master)$ git remote add origin https://github.com/chzj1328/repo1.gitMINGW64 /d/gitRepos/repo1 (master)$ git remoteoriginMINGW64 /d/gitRepos/repo1 (master)$ git remote -vorigin https://github.com/chzj1328/repo1.git (fetch)origin https://github.com/chzj1328/repo1.git (push)
- git clone < url >:从远程仓库克隆
Git 克隆的是该Git仓库服务器上的几乎所有数据(包括日志信息、历史记录),而不仅仅是赋值工作所需要的文件
MINGW64 /d/gitRepos/ch$ git clone https://github.com/chzj1328/repo1.gitCloning into "repo1"...remote: Enumerating objects: 3, done.remote: Counting objects: 100% (3/3), done.remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0Receiving objects: 100% (3/3), done.
- git push [remote-name] [branch-name]:推送远程仓库
将我们本地的文件推送到远程仓库使用该命令
MINGW64 /d/gitRepos/hellogit (main)$ git push origin mainEnumerating objects: 5, done.Counting objects: 100% (5/5), done.Delta compression using up to 8 threadsCompressing objects: 100% (2/2), done.Writing objects: 100% (3/3), 303 bytes | 303.00 KiB/s, done.Total 3 (delta 0), reused 0 (delta 0), pack-reused 0To https://github.com/chzj1328/hellogit.git 04aa34d..516034d main -> main
- git pull 从远程仓库拉取并合并到本地仓库
git pull [short-name] [branch-name]
3.7、分支操作
分支使Git使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离出来,以免影响开发主线。
同一个仓库可以创建多个分支,各分支相互独立,互不干扰。
通过git init命令创建本地仓库时默认会创建一个master分支。
相关命令:
- git branch 查看分支
- git branch [name] 创建分支
- git checkout [name] 切换分支
- git push [shortName] [name] 推送至远程仓库分支
- git merge [name] 合并分支
分支操作:
- 查看分支
- git branch 列出所有本地分支
- git branch -r 列出所有远程分支
- git branch -a 列出所有本地分支和远程分支
- 创建分支
- git branch [name]
- 切换分支
- git checkout [name]
- 推送本地分支到远程仓库
- git push [shortName] [name]
- 合并分支
- git merge [name]
在本地仓库可以看到b1.txt已被合并到我们的主分支上了
- 合并分支冲突
在b1分支和master分支下同时修改b1.txt文件,然后再进行分支合并
- 在master分支下修改文件内容
- 在b1分支下修改文件内容
- 合并分支时发生冲突
- 修改文件内容(不推荐):后面集成IDEA时会有另外的方法
3.8、标签操作
Git标签:指某个分支特定的时间点的状态。通过标签,可以很方便的切换到标记时的状态。
相关命令:
- git tag 列出已有的标签
- git tag [name] 创建标签
- git push [shortName] [name] 将标签推送至远程仓库
- git checkout -b [branch] [name] 检出标签
- 检出标签:检出标签是需要创建一个分支指向某个标签
- git checkout -b [branch] [name]
四、在IDEA中使用Git
4.1、在IDEA中配置Git
在IDEA ==》 File ==》settings ==》 VersionControl进行设置
4.2、获取Git仓库
在IDEA使用Git获取仓库的两种方式:
- 本地初始化仓库
- 从远程仓库克隆
从本地初始化仓库
远程仓库克隆
在URL里面输入地址即可和导出单本地的文件夹
4.3、本地仓库操作
相关命令:
- 将文件加入暂存区
右键某个文件夹或类 ==》 点击Git ==》点击Add 或者 快捷键 ==》 Ctrl + Alt + A
- 将暂存区的文件提交到版本库
直接点击上方小窗口里面的绿色√:
- 查看日志
4.4、远程仓库操作
相关操作:
- 查看远程仓库
- 添加远程仓库
- 推送至远程仓库
- 从远程仓库拉取
4.5、分支操作
- 查看分支
- 创建分支
- 切换分支:点击分支即可切换
- 推送分支至远程仓库
- 合并分支
-
Python 基于xml.etree.ElementTree实现XML对比
测试环境Python3 6Win10代码实现 ! usr bin envpython3 4 0 -*-encoding:utf-8-*-__author__=& 39;sho
来源: 世界看热讯:Git从入门到实战
Python 基于xml.etree.ElementTree实现XML对比
天天微资讯!飞链云智能机器人-基于ChatGPT的有趣问答
穷人入侵TikTok直播间:躺着就能赚钱 真爽
焦点热讯:为了帮梅西赢球 我敲了一晚上的电子木鱼
环球速递!2022贺岁档总票房突破4亿!《阿凡达2》势不可挡 最快破亿
GPU CPU向量加法时间测试
快播:雷军运气爆棚:在小米手机官方活动 中奖一台小米13
世界资讯:小米音质最好智能音箱!小米Sound Pro开箱图赏
Windows OpenGL 图像透明度调节
焦点热文:异步批处理教程
小米首款万兆路由发布:1799元
天天速递!只要699元!小米旗舰降噪耳机Buds 4发布:HiFi音质
小米8款新品价格汇总:3999元的小米13爱不爱?
全球新资讯:雷军:只有两家做双尺寸双高端 一家是苹果 一家是小米
小米13正式亮相:金属直边 继续对标iPhone!
今亮点!3999元起!小米13正式发布:黄金尺寸小屏、满血徕卡镜头
不涨价 小米13价格良心了:顶配12+512GB还便宜200元
全球微动态丨小米13 Pro正式亮相:中框仅仅3.2毫米!科技纳米皮手感无敌
焦点消息!ELK+FileBeat日志分析系统
快看点丨差错控制
全球信息:Intel显卡驱动即将大更新!DX9、DX11老游戏有惊喜
环球快资讯:MIUI 14“剃刀计划”砍向应用臃肿:微信文件重复存储问题终于解决
全球快看点丨全新界面 系统大幅精简!MIUI 14正式发布
【世界聚看点】使webworker中支持使用import导入模块——threads.js
世界速看:说人话系列:DOM(Document Object Mode)究竟是怎么来的呢?
环球快报:俞敏洪称不敢进高档美发店:一顿好酒肉没有了 心疼
当前热点-达尔文错了?螃蟹竟在地球上出现了5次
全球新资讯:时间轮 (史上最全)
【天天聚看点】雷军晒小米13生产过程 由小米智能工厂全自动化装配
百事通!Intel独立显卡不做了?掌门人一句话 放心了!
长安深蓝SL03宣布涨价:预计上调2000元-8000元
环球快讯:沉船捞出165年前牛仔裤80万卖出:更有数不清的黄金
SpringMVC执行流程
全球快资讯丨任务调度系统-业务线资源隔离
天天微速讯:echarts设置暂无数据
老版本微博下线倒计时!新版已无法返回老版本
舒适降噪的天花板 索尼WH-1000XM5耳机跌破2000元
全球视点!苹果把果链撤出中国?难度可是地狱级的
天天滚动:SQLyog连接MYSQL时报错 Client does not support authentication protocol requested
世界快报:小米发布米家智能小厨宝7L S1:2000W速热、1年省电100度
播报:男子将手机改装成“偷拍神器”:摄像头改到耳机插孔 赚了30万
世界资讯:我迟早被这些AI绘画笑死
世界快报:买不到抗原检测试剂盒怎么办?不要慌
重点聚焦!Intel A750显卡新驱动性能实测:《CS:GO》帧数飙升79%
公众号附件怎么添加?还在用阅读原文的方式来添加吗,你已经落伍啦,现在大家都在用这个新方法,不仅方便还省事!
TabControl控件的简单使用-添加tab
【全球时快讯】Python爬虫实战,requests+xlwt模块,爬取螺蛳粉商品数据(附源码)
环球微速讯:Linux笔记03: Linux常用命令_3.3文件操作命令
新资讯:canvas分享
全球今头条!推特重推蓝V认证服务 苹果用户得多交3美元!马斯克也无能为力
每日焦点!三星S23 Ultra关键参数确定:首发高频版第二代骁龙8、祖传25W快充
童年记忆的黄桃罐头为啥突然火了?专家建议不要盲目囤
世界今头条!【2023最新B站评论爬虫】用python爬取上千条哔哩哔哩评论
【世界快播报】刘强东称新冠比感冒还轻微!王石也发声:只有鼻子不舒服 10天转阴
全球今亮点!再见C罗!C罗赛后痛哭:葡萄牙0-1摩洛哥 非洲球队首进4强
世界杯英法大战结束!法国2-1淘汰英格兰 晋级四强
中国市场已合资30年!又一车企资不抵债:销量暴跌
全球观速讯丨中国车企在俄罗斯销量飙升:市占率超1/3 主打中高端
每日消息!uniapp+unicloud开发微信小程序流程
焦点快看:清理备用内存 - 解决方案(备用内存占用过高且不自动释放)--九五小庞
天天日报丨Blazor和Vue对比学习(进阶.路由导航四):路由传参
王冰冰反向操作:戴摩洛哥围巾 希望葡萄牙获胜
今日看点:老黄怎么看?这张RTX 4090卖到了10万块 有钱也不一定买到:EVGA绝版货
东北市民网购宠物猪收到已冻僵 网友唏嘘:一个敢买一个敢发
【环球新要闻】从 695. 岛屿的最大面积 入手深度优先搜素DFS
快资讯丨用户重复注册分析-多线程事务中加锁引发的bug
【焦点热闻】PTA作业6-8电信系列总结
环球要闻:C#中的WebAPI
专为AR/VR打造!苹果全新操作系统名为xrOS:有专属应用商店 最早明年推出
全球看点:高校花2.4亿把教学课堂搬到了海上 网友羡慕不已
2022-6.824-Lab2:Raft
007爬虫之requests模块进阶
全球今日讯!攻防世界-unseping(序列化,Bash shell)
全球观速讯丨《暗黑破坏神4》赛季通行证需氪金购买 暴雪重申:不会充钱就变强
JavaScript:this指针
20点狂欢:淘宝每满200减30、天猫/京东每满300减40
厂家称黄桃罐头没药效 网友调侃:黄桃罐头为何成东北人疯狂膜拜的神物
全球看点:验证jenkins自动化部署
世界速读:首个进入太空的人类 宇航员加加林个人档案已解密:34岁死于空难
天天即时看!女生高铁录乐器考试被打断:工作人员知道情况后特意给换了地方
2021冬--简单描述时间复杂度
PDF转图片
Python实战案例,tkinter+random模块,实现课堂随机抽选提问并语音播报学生姓名
世界关注:将近30万人预约!有米粉要当小米13 Pro钉子户
每日观察!86寸4K巨屏!小米EA Pro 86电视今日开售 5999元
比Zen4还火 AMD游戏神U锐龙7 5800X3D史低2199元(首发3099)
MIUI 14花宠摆件上线!米粉:小时候的QQ农场又回来了
每日快报!刘强东分享抗新冠经验:比感冒还轻微 京东将开通热线帮助员工
Windows OpenGL ES 图像透明度
热门看点:我“采访”了 ChatGPT
观察:Blazor和Vue对比学习(进阶.路由导航二):布局(母版/嵌套)
世界简讯:WPF内嵌Http协议的Server端
造车大战中360赢麻了?周鸿祎大赞自己投资的哪吒汽车
天天快看:整活!MIUI 14桌面大变:支持图标自定义调整
当前速读:post表单数据格式完全解析multipart/form-data(C#实现)
队列之王: Disruptor 原理、架构、源码 一文穿透
每日视讯:Python如何导入自定义模块?
环球通讯!进制转换和计算机存储规则
SpringBoot整合Swagger2在线文档