Git基本操作and入门指南

众所周知,Git是程序员必备技能之一,作为目前最主流的分布式版本控制系统,在多人(程序员)项目开发中有着不可或缺的战略地位。有了Git,我们才不会在项目开发中,因为各个开发人员的代码版本问题而手忙脚乱,分身乏术。按照惯例,先来看看此篇帖子的思维导图(部分内容参考哔哩哔哩up主:遇见狂神说)。

思维导图

在这里插入图片描述
可以看出Git入门的东西还是比较简单的,其实熟悉了这些就差不多了,剩下的自己可以在工作中慢慢学习。

1.基本命令

在入门指令之前,还有重要的两点需要提醒:

  1. 若要改变界面的字体大小,直接用Ctrl+鼠标滚轮即可。
  2. 粘贴复制需要用鼠标操作,千万别用Ctrl+C和Ctrl+V。
  3. 如果想继续输入刚才输过的命令,可直接通过键盘上的上下方向键进行查找,然后直接回车即可。

首先是几个修改当前路径的指令,cdcd ..这个很简单。就是改变当前的工作路径。
比方说如从远程仓库克隆下来一个工程,名为first,如下图所示:
在这里插入图片描述
那么如果想进入下一层,可直接通过cd进行,操作,同样是cd,但是需要注意cd..中间有空格。
在这里插入图片描述
ls很简单,就是列举出当前目录下的文件,如下图所示。

erhu@LAPTOP-0IH383JB MINGW64 ~/Desktop/Gitcode/first (master)
$ ls
LICENSE  README.en.md  README.md  qwer.txt

clear是清屏操作,熟悉matlab编程的同学,肯定会对这个命令非常熟悉,就是简单的清屏而已,没有实际的任何操作。clear+回车之后的视觉效果如下图所示。
在这里插入图片描述
history这个命令可以查到你最近使用过哪些命令,一一列举出来,因为有时候我们会忘掉某些近期操作过的命令。如下图所示(局部):
在这里插入图片描述
还有一些常见的指令,比方说help可以查看帮助信息,等等等等。

2.Git配置

配置信息可以直接用git config -l命令进行查看。其中配置文件又分为系统配置文件和用户配置文件。查看的时候可采用如下的命令。

#查看系统config
git config --system --list
#查看当前用户(global)配置
git config --global --list

一般我们配置的个人信息是在如下的路径下(erhu就是我们的用户名,每个人应该不一样),配置文件就是我们在Git中的一个用户识别信息,就像身份证一样。
在这里插入图片描述
配置完了就会生成这个文件,配置方法也很简单就是用思维导图中的方法进行配置。

git config --global user.name +"姓名" #名称
git config --global user.email +"邮箱" #邮箱

其中邮箱也可以不用双引号。

其他的信息一般都是默认配置好的,若有缺失,大家可以自行解决。

3.Git工作原理

Git可以分成四个工作区域,其中本地工作区域有三个,分别是工作区(Workspace),暂存区(Index)和仓库区(Repository),为了区分远程仓库,下图中采用了Local Repository的名称,下图展示了这四个工作区域以及文件在各个仓库之间的转交关系(方法)。
在这里插入图片描述
其中

  1. 工作区就是我们平时存放代码的地方。
  2. 暂存区临时存放我们代码的改动,或者叫待提交更新区。
  3. 本地仓库,安全存放我们提交的所有改动,其中HEAD指向最新放入仓库的版本。
  4. 远程仓库,托管代码的服务器,也就是项目开发中开发人员的公共区域和最终存放代码的地方。

因此,Git管理的文件有三种状态:已修改已暂存已提交。具体地说提交分成提交到本地仓库和远程仓库两种。

4.项目搭建和克隆

工作目录(WorkSpace)一般就是你希望Git帮助你管理的文件夹,可以是我们项目的目录,也可以是一个
空目录,建议不要有中文。

创建本地仓库有两种方法,一种是搭建本次仓库,另一种是直接克隆远程仓库。这取决于项目或者自己的需求。

常见的代码托管平台有两个GitHubGiteeGitHub是世界上最大的代码托管平台,而Gitee是国内比较常用的代码托管平台。二者的操作大同小异(本文中采用Gitee)。

4.1 本地项目搭建

本地项目搭建很方便,只需要在本地新建一个文件夹,然后在当前路径下打开Git Bash,然后执行git init指令即可,如下所示:
在这里插入图片描述
执行完之后,在当前路径下就多了一个.get文件夹。

在这里插入图片描述
然后就可以在当前路径下愉快地开发了。

4.2 克隆远程仓库

下面我们就以一个远程仓库的克隆开发为例,按照克隆修改提交这三个步骤完整地走一遍。
远程仓库的搭建,还有公钥的配置等,大家可自行学习,在此不再展开。

4.2.1 克隆远程仓库

打开我们的远程仓库,然后找到克隆/下载按钮,然后点击,就会出现当前仓库所在的地址,直接复制。
在这里插入图片描述
然后在想要开发的本地路径下,打开Git Bash,然后输入命令git clone + 链接地址这个链接地址就是刚才复制的内容。
稍等片刻,就会将该项目克隆到本地。
然后就可以开发了,要只是单纯为了学习,可以修改readme文档。打开文档,写入下面的内容,并保存。
在这里插入图片描述
在本地新建一个分支,我新建了一个名为practice的分支。

$ git branch practice

切换到当前的分支

git checkout practice

然后我们可以查看本地的代码哪些被修改了(这步可忽略)。

git status

在这里插入图片描述
可以看到,我们刚才修改的的README.md有了记录。
然后添加修改代码到缓存。

git add .

并添加修改的备注。

git commit -m "modify readme"

然后就是最后一步,提交到指定的仓库,在本文中,我们提交到了新建的practice分支中。

git push origin practice

自此,我们就把本地的项目push到了远程仓库。我们一起去远程仓库看看吧!
在这里插入图片描述
可以看到,我们已经顺利地把文件push到了远程仓库。打开看看。
在这里插入图片描述
确实对我们的修改记录非常清晰。

5.文件状态

所谓的版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,才能做到有的放矢,以免出现文件漏交,或者其他情况发生。

一般文件分为四种状态:

  • Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制 。通过 git add 状态变为
    Staged
  • Unmodify: 文件已入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致 。这种类型的文件有两种去处,如果它被修改,而变为 Modified。 如果使用 git rm 移出版本库, 则成为 Untracked 文件 。
  • Modified:文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过 git add 可进入暂存 staged 状态, 使用 git checkout 则丢弃修改过, 返回到 unmodify 状态, 这个git checkout即从库中取出文件,覆盖当前修改 !
  • Staged: 暂存状态。执行 git commit 则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为
    Unmodify 状态。执行 git reset HEAD filename 取消暂存, 文件状态为 Modified

这四种状态重在理解,不需要死记硬背,只需要将其状态及转化方法记住就行,如果记不住,就不妨再来一个上面的那种转化图。我自己画了一个,如下图所示:
在这里插入图片描述

还有剩下的一小部分内容,也十分重要,就是Git的分支管理,以后若有时间,我都会更新出来,感谢大家的理解和支持,当然作为Git的初学者,文中也有很多不到位的地方,欢迎各位大佬指出!!!

本篇文章很多内容借鉴了哔哩哔哩up主遇见狂神说的内容,但自己均做了实践,并未以盈利为目的,仅仅作为相互学习之用,特此声明!

结束语

《人生海海》中说:“世上只有一种英雄主义,就是在认清了生活真相后仍然热爱生活。”尤其是今年(2022)在疫情的影响下,我们的生活都遇到了多多少少的坎坷与波折,但生活还是要继续的,不是吗?

愿我们都在相关领域有所收获,有所成就!!!

在这里插入图片描述
------------------------------------------------------------------------END-----------------------------------------------------------------------

猜你喜欢

转载自blog.csdn.net/weixin_43719763/article/details/127896763