首页 > 其他分享 >每日一学 之 一起来复习 Git 的那些操作(一)

每日一学 之 一起来复习 Git 的那些操作(一)

时间:2022-11-10 23:07:34浏览次数:74  
标签:文件 git 一学 复习 暂存区 add Git 提交 commit


LZ-Says:突然间闯进来,感觉,她,变成了整个世界。



每日一学 之 一起来复习 Git 的那些操作(一)_vim


前言

曾经,Svn 俗称小王八,伴随着走过了一年又一年。某年 Git 的横空出世,以迅雷不及掩耳之势强势登顶。

也使用了 Git 将近快一年了,唯独记住一点半点。

恰巧今日有空,一起来回顾有关 Git 的那些操作,如有不正,欢迎指点。

目前市面上流行的版本控制工具类型如下:

  • 集中式版本控制工具
  • 分布式版本控制工具

俩者的最直接区别可以简单按照字面理解,简单翻译下:

  • 集中式,将项目存放于服务器,所有开发人员统一从此处拉取,如果此处发生异常,直接影响整个团队开发,且较为依赖网络;
  • 分布式,每个人都类似于一台服务器,每个开发人员都具有完整的提交历史,不限于网络。

好处优势显而易见,集中式相当于所有鸡蛋放在一个篮子里,而分布式相当于鸡蛋放在多个篮子道理一样。糙道理随口说。

而下面,开始 Git 回顾~

一、git config - 设置签名

首先来说,什么是签名?

通俗易懂的理解,签名就是代表你,So,也可以理解为设置签名的作用也就是为了区分不同用户,从而便于日后的一些维护或者其他事情。

设置签名需要提供俩个内容:

  • userName: 设置一个自己喜欢的用户名
  • Email: 常用的邮箱地址

而一般设置签名的方式有俩种:

  • 全局(系统级)签名: 以 Mac 为例,代表当前登录用户下范围生效;
git config --global user.name HLQ_Struggle
git config --global user.email [email protected]
  • 局部(项目)级别: 仅在当前项目下生效。
git config user.name HLQ_Struggle
git config user.email [email protected]

俩者设置方式只是全局多个一个 –global,其他均一样。一般来讲都会直接设置系统级别签名,方便。

这里简单说下它俩之间优先级:

Git 采用就近原则,项目级别优先于系统级别,如果同时存在,则项目级别优先级最大。

那么,如何查看当前签名存放位置呢?键入以下命令:

cat .gitconfig

示例图如下:

每日一学 之 一起来复习 Git 的那些操作(一)_暂存区_02

二、git init - 初始化项目

进入项目目录下,键入以下命令:

git init

如下所示:

每日一学 之 一起来复习 Git 的那些操作(一)_vim_03


此时去已创建目录下就可以看到已经初始化完成的 .git 目录:

每日一学 之 一起来复习 Git 的那些操作(一)_Git_04


看不到的小伙伴按照如下快捷方式显示隐藏文件即可:

  • 显示隐藏文件: Command + Shife + .
  • 通过 ll -1a 查看也可

此目录存放是本地库相关的子目录和文件。

三、git status - 查看当前状态,包含工作区以及暂存区状态

每日一学 之 一起来复习 Git 的那些操作(一)_Git_05


简单描述下:

  • 当前位于 master 分支,也被称为主分支;
  • 当前工作区(本地区)没有任何提交;
  • nothind to commit 代表当前没有可提交内容到暂存区,推荐创建或者拷贝文件并通过 git add 命令进行提交暂存区且此时此文件状态已被追踪。

下面通过 vim 创建一个文件,随后我们进行 git status 查看此时又会发什么?

每日一学 之 一起来复习 Git 的那些操作(一)_暂存区_06


上面提示我们可以通过 git add 将我们想要提交的内容提交到暂存区,而下面标红色的内容,则是突出显示了当前发生改变的文件。

四、git add - 将文件添加到暂存区

每日一学 之 一起来复习 Git 的那些操作(一)_git_07


通过 git add 命令,我们将新创建的文件提交到暂存区后,通过键入 git status 命令查看当前文件状态。当前文件已被提交暂存区,So,文件显示绿色,安全~

这里需要注意,一定要先通过 git add 将修改的文件添加到暂存区,在做后续的操作。
这里需要注意,一定要先通过 git add 将修改的文件添加到暂存区,在做后续的操作。
这里需要注意,一定要先通过 git add 将修改的文件添加到暂存区,在做后续的操作。

此时如果你发现当前提交文件有误,需要撤销,怎么做呢?

五、git rm --cached - 撤销已提交暂存区的文件

按照上面提示命令进行撤销暂存区提交操作,此时需要注意,撤销的仅仅是提交到暂存区的文件,而本地库文件并没有发生改变。

每日一学 之 一起来复习 Git 的那些操作(一)_vim_08


撤销之后,再次看到 Git 提示我们需要将此文件进行 add 操作,且文件颜色变为红色,有风险哦。

六、git commit - 提交远程仓库

通过键入 git commit 将文件提交暂存区,此时会提示我们输入当前提交说明。

每日一学 之 一起来复习 Git 的那些操作(一)_暂存区_09


此方式是不是感觉很麻烦,下面介绍一步到位操作:

git commit -m '提交说明' <fileName>

每日一学 之 一起来复习 Git 的那些操作(一)_git_10


此时提示我们提交成功,也为我们创建一个 Git 根,并且提示我们已提交的内容,是不是很贴心?随后我们修改 readMe 中的内容,附上小诗一首:

每日一学 之 一起来复习 Git 的那些操作(一)_Git_11


随后我们直接将修改后的文件 commit:

每日一学 之 一起来复习 Git 的那些操作(一)_git_12


那么和我们之前的提交方式有什么不一样呢?这里需要注意以下几点:

  1. 新创建文件,必须先 add 到暂存区,后 commit 添加到本地库;而以拉去下文件可直接 commit 到本地库。区别在于,先 add,如有问题,可轻松撤回,而直接 commit 则需要费一番功夫。不建议直接 commit。

番外篇 - 补充下 vim 简单使用

  • vim readMe.md​​ // 打开 ​​readMe.md​​ 文件
  • :set nu // 显示 vim 编辑器行号
  • i // insert 插入编辑模式
  • esc // 退出当前编辑模式
  • :wq 回车 // 保存并退出

一点一滴努力,万一我变优秀了呢?

万一一见钟情了呢?

哈哈哈,美好的万一。。。

个人公众号

不定期发布博文,最近有点忙,感谢老铁理解,欢迎关注~


每日一学 之 一起来复习 Git 的那些操作(一)_Git_13


标签:文件,git,一学,复习,暂存区,add,Git,提交,commit
From: https://blog.51cto.com/u_13346181/5842283

相关文章

  • day29 git
     概述:git是一个版本管理工具,是用于管理项目的版本的,它是一个分布式的项目管理工具(支持多分支,不区分客户端服务端),每个本地的代码都是一个本地的仓库......
  • GitHub | Mac OS GitHub 图片打不开(2020.01.06)
    最近打算维护一个自己的东西,突然发现上传的图片时不时的打不开,很是无语,看到一老哥的博文,尝试一波:​​【最新】解决github图片不显示的问题​​问题原因截图如下:解决方案如......
  • Git提示error setting certificate verify locations解决办法
    话说前一段时间从GitHub上更新提交代码,总是报如下的错误,给我郁闷的。Pushfailed:Failedwitherror:fatal:unabletoaccess‘​​https://github.com/HLQ-Struggle/Te......
  • 数学分析(3) 复习笔记(已中道崩殂,打hlb讲义太**累了,这谁搞得动啊)
    谁爱写谁写反正我不写了!回顾与展望2.1外测度与测度外测度:空集为零;单调性;次可加性CY条件:\(T\in\R^n,\mu^*(T)=\mu^*(T\capE)+\mu^*(T\capE^c)\)CY定理:\(\sigma......
  • 用 git 管理 Datakit 配置
    用git管理Datakit配置什么是DatakitGit仓库的目录要求实践conf.d目录知识点:观测nginx基本信息第1步:配置nginx侧开启status功能第2步:准备......
  • 使用 Gitea + Drone CI 自动部署 Hexo 静态网站到 Cloudflare Pages
    前段时间使用Hexo重建了个人博客。我之前一直使用VSCode在本地写博客,用git推送到GitHub存档,每次推送的之后都由GitHubActions自动构建Hexo静态网站然后发布......
  • 124-常用的gitignore
    logs.idea.gittargetdist.mvn.classpath.factorypath.apt_generated.project.settings.springBeans.sts4-cache*.iws*.iml*.iprThumbs.dbehthumbs.dbDesk......
  • git 教程 --git reset 命令
    简介在程序员实际工作过程中,提交代码后,偶尔也有后悔的时候,但是都提交到本地仓库或者推送到远程服务器了,可怎么办?我想要回到某一个提交的版本,git就很贴心的提供了对应的功......
  • Linux基础知识(9)- Git 简单使用(一)
    GIT,全称是分布式版本控制系统,Git支持分布式部署,可以有效、高速的处理从很小到非常大的项目版本管理。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者......
  • 关于右键git bash不生效的另类解决方案jintianshangwu
    今天上午我是参照了网上别的博主的删除对应注册表的办法,重启电脑也没用,gitbash还是在右键那里,并且还点击了也没用。 后面我就想到了一个办法,删除git安装目录,删除了之后......