Git入门与实战:版本控制的艺术

🍁 作者:知识浅谈,CSDN签约讲师,CSDN博客专家,华为云云享专家,阿里云专家博主
📌 擅长领域:全栈工程师、爬虫、ACM算法
🔥 微信:zsqtcyw 联系我领取学习资料

🤞Git入门与实战:版本控制的艺术🤞

    • 🎈引言
    • 🎈Git基础
    • 🎈Git基本命令
    • 🎈Git进阶
    • 结论
    • 🍚总结

🎈引言

在软件开发的世界中,版本控制是不可或缺的一部分。它帮助开发者跟踪代码的变更历史,协同工作,以及在不同版本间切换。Git,作为目前最流行的分布式版本控制系统,以其高效、灵活和强大的特性赢得了全球开发者的青睐。本文将带您走进Git的世界,从基础概念到实战技巧,全面了解Git的使用。

🎈Git基础

  • Git是什么?
    Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。与集中式版本控制系统(如SVN)不同,Git的每个工作目录都是一个完整的仓库,拥有完整的项目历史,使得开发者可以在没有网络连接的情况下进行工作。

  • Git的工作原理
    Git的核心是暂存区(Staging Area)、工作目录(Working Directory)和Git仓库(Repository)之间的交互。当我们在工作目录中修改文件时,这些更改首先被添加到暂存区,然后通过提交(commit)操作将暂存区的更改永久保存到Git仓库中。

  • 安装Git
    安装Git的过程因操作系统而异。对于大多数Linux发行版,可以通过包管理器安装Git。对于Windows和macOS,Git官方网站提供了安装程序。

🎈Git基本命令

  • 初始化仓库
    git init
    该命令在当前目录下初始化一个新的Git仓库。

  • 添加文件到暂存区
    git add
    将指定文件添加到暂存区。

  • 提交更改
    git commit -m “Commit message”
    将暂存区的更改提交到仓库,并附上提交信息。

  • 查看状态
    git status
    查看当前仓库的状态,包括哪些文件已被修改但尚未提交。

  • 查看历史记录
    git log
    查看提交历史记录。

  • 分支管理
    创建新分支:
    git branch
    切换分支:
    git checkout
    (Git 2.23版本后,推荐使用git switch 切换分支,git checkout保留用于切换文件和检出分支)

  • 创建并切换分支:
    git checkout -b

    git switch -c

  • 合并分支
    git merge
    将指定分支的更改合并到当前分支。

  • 远程仓库操作
    添加远程仓库:
    git remote add
    推送更改到远程仓库:
    git push
    从远程仓库拉取更改:
    git pull

🎈Git进阶

  • 标签(Tags)
    标签用于给特定提交打上标签,常用于发布版本。

  • 创建标签:
    git tag

    git tag -a -m “Tag message”

  • 查看标签:
    git tag

  • 推送标签到远程仓库:
    git push

    git push --tags

  • 变基(Rebase)
    变基是一种将一系列提交整合到另一个分支的操作,它创建了一个更加线性的提交历史。
    git rebase

  • Git Flow
    Git Flow是一种基于Git的分支模型,它定义了一个项目发布的过程,包括主分支(master/main)、开发分支(develop)、功能分支(feature branches)、发布分支(release branches)和修复分支(hotfix branches)。

结论

Git作为现代软件开发中不可或缺的工具,其强大的版本控制能力和灵活的分支模型极大地提高了开发效率和团队协作能力。通过本文的学习,您应该已经掌握了Git的基础知识和常用命令,并能够开始在日常开发中使用Git了。当然,Git的功能远不止于此,随着您对Git的深入了解,您将能够发现更多高级特性和使用技巧,进一步提升您的开发效率。

🍚总结

大功告成,撒花致谢🎆🎇🌟,关注我不迷路,带你起飞带你富。
作者:码海浮生

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/876897.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【人工智能】深度剖析:Midjourney与Stable Diffusion的全面对比

文章目录 🍊1 如何选择合适的AI绘画工具1.1 个人需求选择1.2 比较工具特点1.3 社区和资源 🍊2 Midjourney VS Stable Diffusion:深度对比与剖析 2.1 使用费用对比 2.2 使用便捷性与系统兼容性对比 2.3 开源与闭源对比 2.4 图片质量对比 2.5 上…

19145 最长无重复子数组

这个问题可以使用滑动窗口的方法来解决。我们可以使用两个指针,一个指向子数组的开始,一个指向子数组的结束。然后我们使用一个哈希表来记录每个元素最后出现的位置。当我们遇到一个已经在子数组中出现过的元素时,我们就将开始指针移动到这个…

Mac文件拷贝到移动硬盘怎么做Mac拷贝之后Win电脑里看不到

在日常使用mac电脑的过程中,我们经常需要将一些重要的文件备份到外部硬盘上,以防止数据丢失或电脑故障。传输文件到硬盘可以通过多种方法实现,比如拖拽或者复制至移动硬盘,但有时也会遇到移动硬盘无法粘贴,或拷贝后无法…

SSRF (服务端请求伪造)

🎼个人主页:金灰 😎作者简介:一名简单的大一学生;易编橙终身成长社群的嘉宾.✨ 专注网络空间安全服务,期待与您的交流分享~ 感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持!❤️ 🍊易编橙终身成长社群&#…

图像生成中图像质量评估指标—PSNR的详细介绍

文章目录 1. 背景介绍2. 实际应用3. 总结和讨论 1. 背景介绍 峰值信噪比(Peak Signal-to-Noise Ratio,简称PSNR)是一种广泛应用于图像和视频处理领域的客观图像质量评价指标。它主要用于衡量图像的噪声水平和图像质量,可以用来评…

Python酷库之旅-第三方库Pandas(051)

目录 一、用法精讲 186、pandas.Series.is_monotonic_increasing属性 186-1、语法 186-2、参数 186-3、功能 186-4、返回值 186-5、说明 186-6、用法 186-6-1、数据准备 186-6-2、代码示例 186-6-3、结果输出 187、pandas.Series.is_monotonic_decreasing属性 187…

嵌入式人工智能(34-基于树莓派4B的红外传感器、紫外传感器、激光传感器)

这三种光传感器都是不可见光传感器,光是由电场和磁场交替传播而形成的波动现象。光是一种电磁辐射,属于电磁波的一种。下图是电磁波的频谱范围,生活中多数光是看不到的,但是确真实存在,本文介绍几种光传感器&#xff0…

C++从入门到起飞之——友元内部类匿名对象对象拷贝时的编译器优化 全方位剖析!

🌈个人主页:秋风起,再归来~🔥系列专栏:C从入门到起飞 🔖克心守己,律己则安 目录 1、友元 2、内部类 3、 匿名对象 4、对象拷⻉时的编译器优化 5、完结散花 1、友元 • 友元提供…

基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台

在现代招聘领域,数据驱动的决策已成为提升招聘效率和质量的关键因素。基于爬虫技术和机器学习算法,结合Django框架和Bootstrap前端技术,我们开发了一套完整的招聘数据分析与可视化系统。该系统旨在帮助企业从海量招聘信息中提取有价值的数据&…

学习Numpy的奇思妙想

学习Numpy的奇思妙想 本文主要想记录一下,学习 numpy 过程中的偶然的灵感,并记录一下知识框架。 推荐资源:https://numpy.org/doc/stable/user/absolute_beginners.html 💡灵感 为什么 numpy 数组的 shape 和 pytorch 是 tensor 是…

等保2.0测评 — 容器测评对象选取

之前有小伙伴提问到,关于容器到底要测评哪些内容,也就是测评对象的选取。 首先要区分的是容器与容器集群这两个概念。容器集群概念可参考该篇文章。 不使用容器扩展要求情况 当仅使用容器技术时,采用安全通用要求,无需使用容器…

昇思25天学习打卡营第15天|探索 Diffusion 扩散模型:从构建到应用的全过程

目录 环境配置 构建Diffusion模型 位置向量 ResNet/ConvNeXT块 Attention模块 组规一化 条件U-Net 正向扩散 数据准备与处理 训练过程 推理过程 环境配置 首先进行环境配置、库的导入和一些设置操作,具体代码如下: %%capture captured_output …

土体的有效应力原理

土体的有效应力原理 有效应力原则1. 总应力的测定2. 孔隙水压力的测定3. 有效应力的确定 有效应力的重要性 土体中的有效应力原理是卡尔太沙基在1936年提出的重要理论之一。它是总应力和孔隙水压力之间的差值。下面简要说明土壤中有效应力的更多特征和测定。 有效应力原则 有…

人工智能入门第一篇:简单理解GPU和CPU

目录 1,GPU就是显卡吗2,CPU和GPU到底是什么区别3,CUDA是什么4,为什么人工智能离不开GPU 1,GPU就是显卡吗 ‌不是,显卡和‌GPU是两个相关但不完全相同的概念,GPU是显卡的核心部分,但…

Google Test 学习笔记(简称GTest)

文章目录 一、介绍1.1 介绍1.2 教程 二、使用2.1 基本使用2.1.1 安装GTest (下载和编译)2.1.2 编写测试2.1.3 运行测试2.1.4 高级特性2.1.5 调试和分析 2.2 源码自带测试用例2.3 TEST 使用2.3.1 TestCase的介绍2.3.2 TEST宏demo1demo2 2.3.3 TEST_F宏2.3…

wincc 远程和PLC通讯方案

有 5个污水厂 的数据需要集中监控到1个组态软件上,软件是WINCC。每个污水厂监控系统都是独立的,已经投入运行了, 分站也是WINCC 和西门子PLC 。采用巨控远程模块的话,有两种方式:一种是从现场的PLC取数据,一种是从分站…

2019数字经济公测大赛-VMware逃逸

文章目录 环境搭建漏洞点exp 环境搭建 ubuntu :18.04.01vmware: VMware-Workstation-Full-15.5.0-14665864.x86_64.bundle 这里环境搭不成功。。patch过后就报错,不知道咋搞 发现可能是IDA加载后的patch似乎不行对原来的patch可能有影响,重新下了patch&…

【8月EI会议推荐】第四届区块链技术与信息安全国际会议

一、会议信息 大会官网:http://www.bctis.nhttp://www.icbdsme.org/ 官方邮箱:icbctis126.com 组委会联系人:杨老师 19911536763 支持单位:中原工学院、西安工程大学、齐鲁工业大学(山东省科学院)、澳门…

科大讯飞语音转写demo go语言版

上传了一个语音文件,识别效果。 package audioimport ("bytes""crypto/hmac""crypto/md5""crypto/sha1""encoding/base64""encoding/json""fmt""io/ioutil""net/http"…

【图文详解】Spring是如何解决循环依赖的?

Spring是如何解决循环依赖的呢? 很多小伙伴在面试时都被问到过这个问题,刷到过这个题的同学马上就能回答出来:“利用三级缓存”。面试官接着追问:“哪三级缓存呢?用两级行不行呢?” 这时候如果没有深入研究…