菜鸟之路day01一一学学Git

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 《菜鸟之路day01——学学Git》由blue编写,发布于2025年1月13日。本文简要介绍了Git这款分布式版本控制工具的基础操作,包括设置用户签名、初始化本地库、提交文件、查看历史版本、分支管理及冲突解决等。通过学习这些命令,读者可以掌握如何在本地进行版本控制和团队协作的基本技能。文章还涉及了远程仓库的操作,如推送、拉取和克隆等,帮助开发者更好地理解和使用Git。

菜鸟之路day01一一学学Git

作者:blue

时间:2025.1.13

0.简介

Git:是一款分布式的版本控制工具

何谓分布式:分布式是指多个系统协同合作完成一个特定任务的系统。它是不同的系统部署在不同的服务器上,服务器之间相互调用。

1.设置用户签名(只用在安装git的时候配置一次)

git config--global user.name 用户名
git config--global user.email 邮箱

2.初始化本地库

git init

3.查看本地库状态

git status

4.将文件添加至暂存区(或将文件从暂存区中删除)

git add file_name
git rm --cached file_name    //注意只是在暂存区中删除,就是不让git追踪这个文件了,也就是git不再理会这个文件发生的变化

5.将暂存区的文件提交到本地库(形成历史版本)

git commit -m "日志信息" 文件名

6.查看历史版本信息

git reflog //查看精简日志信息
git log    //查看详细日志信息

7.版本穿梭

改变head指针的指向

git reset --hard 版本号    //版本号来自于你查看简介历史版本的短版本号

8.分支概述

好处:分支可以实现并行推进多个开发项目,提升开发效率。各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响,失败的分支删除重新开始即可。

image-20250119070417523.png

9.分支的相关操作

9.1查看分支

git branch -v //查看分支信息,当前所在工作区的分支,会有高亮提示

9.2创建分支

git branch 分支名

9.3切换分支

git checkout 分支名

9.4分支合并

git merge 分支名    //将指定分支合并到当前分支上

9.5分支冲突

产生冲突的原因,两个分支在同一个文件的同一个位置有两套完全不同的修改。git无法替我们决定使用哪一个。必须人为决定新代码的内容

9.5.1手动解决冲突:

产生冲突后,打开文件,会发现它会变成这样。我们依照这个文件,手动的修改,保留我们想要的,删除我们不要的即可。然后把符号都删掉。

(源文件)
<<<<<<< HEAD
(当前分支上的修改)
=======
(欲合并分支的修改)
>>>>>>> hot-fix

image-20250119075739551.png

我手动修改成这样

image-20250119080301028.png

这显然符合我们的预期,然后添加暂存区,提交本地库

但在这里要注意,这次提交本地库的时候,不需要带文件名(当然添加暂存区的时候还是要的)

git commit -m "日志信息" //这样就可以了

10.小结

学完以上操作,仅在本地跑,就已经感觉Linus真是个天才,这么一套流程,解决了版本控制,和并行修改的问题,又方便了版本管理,又提高了效率,你说人为什么可以聪明到这种程度。

最后查看一下日志,可以看到日志详细记录了我们的所有操作。

image-20250119080849296.png

11.Git团队协作

11.1团队内协作

image-20250119085704555.png

11.2跨团队协作

image-20250119090604674.png

12.创建远程库别名

git remote -v    //查看当前所有远程地址的别名

取别名(为什么要取,因为远程地址太长不方便。。。。)

git remote add 别名 远程地址

13.推送本地分支到远程仓库

注意推送的最小单位是分支

git push 别名 分支

14.拉取远程库到本地库

将远程库的内容拉取到目标分支

git pull 别名 分支

15.克隆远程仓库到本地

git clone 远程地址

clone会做如下操作:1.拉取代码;2.初始化本地仓库;3.创建别名

文章内容学习自尚硅谷:BV1vy4y1s7k6

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
9月前
|
测试技术 开发工具 数据库
《Git 简易速速上手小册》第4章:Git 与团队合作(2024 最新版)
《Git 简易速速上手小册》第4章:Git 与团队合作(2024 最新版)
85 1
|
6月前
|
安全 网络安全
GitHub星标4000!清华大牛的CTF竞赛入门指南,真的太香了!
想进入网络安全行业、实现从学校到职场的跨越,参加CTF竞赛是很好的成长途径。 通俗而言,CTF是模拟“黑客”所使用的技术、工具、方法等手段发展出来的网络安全竞赛,有了手段之后需要的就是经验与黑客感(HackorFeel)。 CTF赛题涉及的领域很广,市面上也早有在知识广度上均有所覆盖的CTF书籍,但没有深入单一领域的内容,尤其是Pwn方向的。 Pwn是网络安全攻防最有魅力的部分,对于原教旨攻防人士来说,Pwm才是原汁原味的技术体现。二进制Pwn一直是CTF比赛的热点和难点。
|
7月前
|
分布式计算 数据可视化 大数据
阿里云大牛熬夜整理的Python大数据小抄,GitHub星标125K!
Python 是一种流行的编程语言,在大数据领域有广泛的应用。Python 拥有丰富的库和工具,可用于数据处理、分析和可视化。 在大数据处理方面,Python 可以与 Hadoop、Spark 等大数据框架集成,实现大规模数据的处理和分析。它也适用于数据清洗、数据转换、数据挖掘等任务。 此外,Python 的数据分析库如 Pandas、NumPy 和 Matplotlib 等,提供了强大的数据处理和可视化功能,使得数据分析变得更加简单和高效。
|
运维 Oracle 关系型数据库
后悔极了!GitHub开源爆火阿里「DBA攻坚指南」笔记,我竟没下载
Oracle和MySQL在国内市场的占有率高达60%以上,因此国内需要大量具有综合能力的数据库管理人才。市面上绝大多数的数据库相关书籍和资料只介绍了其中一类数据库,且大多只介绍基础原理或只阐述深奥的方法论,质量参差不齐,极少有同时涵盖Oracle和MySQL这两种数据库的书籍。
|
消息中间件 缓存 算法
开源7天Github斩获4.5万Stars!阿里2023版高并发设计实录鲨疯了
如何获得高并发经验? 这是我今天逛知乎的时候系统邀请我回答的一个问题,由此也引发了我的一些思考:为什么人人都想要获得高并发经验;想拥有高并发系统设计技能?
|
存储 安全 算法
万字讲解 Git 的使用!错过就太后悔了!
万字讲解 Git 的使用!错过就太后悔了!
77 0
|
前端开发 数据可视化 程序员
超详细的前端程序员git指北
超详细的前端程序员git指北 git是团队开发必备工具之一,本期教程我们从一个开发人员开发新功能,然后合并到主分支上的一整个流程进行演示讲解,而不是仅仅告诉你这个命令的作用是什么,区别是什么,毕竟程序员始终得贯穿“学以致用”这条硬道理,最后再对不同的常见命令及逆行讲解。
197 0
|
存储 Java 开发工具
Git的正确使用姿势与最佳实践|青训营笔记
本篇笔记完全依照课程流程复现,已尽量确保git操作的连贯性,各位同学可以依照笔记复习全流程操作,或者后续结合目录进行查漏补缺。
252 0
Git的正确使用姿势与最佳实践|青训营笔记
|
开发工具 git
|
Unix Linux Shell
Git 与 Linux基本命令 | 青训营笔记
上期简单介绍了Git的历史背景和功能,也简要说明了他的功能。但所谓不学无术,光学不练假把式,今天主要就聚焦于Git安装好之后需要的操作(以Linux版命令行为例)
Git 与 Linux基本命令 | 青训营笔记

热门文章

最新文章