git入门与基础操作

1.下载安装

官网下载地址:https://git-scm.com/downloads
官网的下载地址可能有些慢,我是在电脑管家的软件管理里面下载的,速度很快,推荐使用这种方式或者其他软件管理。安装步骤在这里就不过多介绍了。

2.学前准备

在这里插入图片描述
以上是git进行版本管理的一个大致流程图,首先,对一个文件夹目录进行git初始化操作,这个初始化就是为了让git对这个文件夹中的文件进行版本管理。初始化完成之后,在当前目录下会有一个.git文件夹,这个文件夹就是我们所说的版本库。然后对需要版本控制的文件进行add操作到暂存区,再进行commit操作到提交区(个人命名)。下面,再以实际操作来讲解下具体是怎么实现的。

3.设置

在使用git进行版本管理之前,需要进行一个配置才能使用,这个设置是告诉git你是谁以及你的邮件账号。
在这里插入图片描述

git config --global user.email "***@qq.com" 
git config --global user.name "liulin"

在这里插入图片描述
小技巧:忘记命令的具体写法时可以使用Tab键进行提示。

4.Git体验

那么,设置完成后怎么使用git进行版本管理呢?
第一步:找到需要管理的文件夹,右键,如果git已经安装成功,那么你的界面大概是这个样子的。
在这里插入图片描述
如上图所示,会多出来两个git相关的选项。点击Git Bash Here
文件夹里面会多出来一个.git文件。
在这里插入图片描述
下面以一个例子来给大家介绍,我新建了一个git_exercise.txt的文件,并在里面编辑了部分内容。
在这里插入图片描述
在这里先对大家介绍一个新的命令

git status

可以查看哪些文件被修改了。
在这里插入图片描述
这里可以看到提示有未被追踪到底文件,让我们使用git add的命令,那么,我们就按它提示的操作一波

git add git_exercise.txt

再查看一下
在这里插入图片描述
继续执行commit指令,-m 后的字符串为本次提交的一个备注信息

git commit -m "create file git_exercise.txt"

再执行status时提示我们已经没有需要提交文件了。
在这里插入图片描述
看到这里,你可能还是不清楚git到底是怎么进行版本管理的,因为我们的文件在这时候并没有发生任何变化。不要着急,继续往下看。接下来我对git_exercise.txt进行二次编辑。
在这里插入图片描述
然后重复进行前面的提交步骤。
在这里插入图片描述
下面,我们使用一个新的命令git log 查看提交日志
在这里插入图片描述
从上面可以看到我们前面的两次提交记录
使用git reset --hard commitid(这个id就是上图提交记录中commit后跟的黄色字符串,可以使用git log进行查看)回退得到之前得到版本。
也可以使用git reset --hard HEAD^ 直接回到上一个版本
git reset --hard HEAD^ 直接回到上上个版本
在这里插入图片描述
这里有一点需要注意的是这个id可以不用全部复制,像我上面的操作就只复制了一部分。
然后我们再打开文件,就会发现文件内容回到了第一次提交的状态了。
在这里插入图片描述
这个时候我们再查看日志信息
在这里插入图片描述
发现只有第一次提交的记录了,那么我们想要回到最新的那个版本怎么办呢?不要慌,再教你一个新的命令

git reflog

在这里插入图片描述
这样,有可以看到最新的版本的commitid了,再执行git reset --hard cfb843a命令回到最新的版本
在这里插入图片描述
再去查看文件时,就发现文件回到了第二次编辑后提交的状态了。
在这里插入图片描述
这就是git进行版本管理的一个大致流程了。下面对git的一些其他操作进行介绍。

5.其他操作

1.从上面我们看到的查看日志的时候信息太多,如果版本过多查看就会显得特别复杂。所以,这里引入一个新的查看日志的命令git log --pretty=oneline效果如下
在这里插入图片描述
2.对提交到暂存区的文件进行撤回。在工作区修改了文件,然后git status会有一个提示,正常思维,会进行git add ,但是add之后你又后悔了怎么办呢?这里使用一个新的命令进行撤回
git checkout -- git_exercise.txt

在这里插入图片描述
这样就可以撤销之前的修改了。那么,如果已经进行了 add操作又该如何操作呢,对于这种情况,我们需要先使用git reset HEAD git_exercise.txt 回到提交区中的最新版本,然后再使用git checkout -- git_exercise.txt命令。
在这里插入图片描述
3.当我们进行团队开发时,需要建立不同的分支,每个人都在自己的分支上去修改代码,这样就不会影响到主分支master。这里使用git checkout -b dev_wang 建立一个新的分支。
在这里插入图片描述
4.当我们建立多个分支后,怎么查看具体有哪些分支呢?引入了这样一个命令 git branch
在这里插入图片描述
带*标志的为当前所在分支。在不同的分支上进行的版本管理,只有在自己的分支上才会生效。简单来说就是,我在dev_wang的分支上对刚才的git_exercise.txt文件进行了修改,并不会影响到master分支上的这个文件。

5.git branch -d dev_wang 既然有创建,那么肯定有删除了,这个命令就是用来删除分支用的。但是使用这个命令需要注意,必须是在其他分支上
在这里插入图片描述
6. git checkout master 这个命令用于切换分支
在这里插入图片描述
7.在上面的5中说到使用 git branch -d dev_wang进行删除分支需要切换到其他分支,现在切换到master分支了,我们来尝试删除一下。
在这里插入图片描述
但是发现提示删除不了,这是因为在dev_wang分支上已经有提交,但是还没有进行合并。这里可以使用 git branch -D dev_wang进行强制删除。

8. git merge dev_zhang 在7中提到合并这样一个概念,下面我们使用git merge进行合并

在这里插入图片描述
合并之后可以看到分支dev_wang分支上的操作记录在master上面也能看到了。同样的,我们再看一下git_exercise.txt文件
在这里插入图片描述
可以看到,在分支dev_wang的操作已经与master分支的文件进行了合并。

9.解决版本冲突的问题。往往在开发中我们会有多人同时开发,这样就不可避免的会遇到冲突的问题。
在这里插入图片描述
明显的看到第三次第四的编辑发生了冲突,而且日志里面也没有zhang的提交。这里我们可以对文件进行修改,然后在master上进行提交。
在这里插入图片描述
这样我们就可以看到两次的提交记录和一次手动合并冲突的记录了。

10 配置相关
git config -l 查看所有的配置信息

git config --local -l 查看仓库的配置信息
git config --system -l 查看系统的配置信息
git config --global -l 查看全局的配置信息,包括我们之前配置的user.email和user.name都在里面
在这里插入图片描述
11. 配置别名,通过上面的命令使用,有没有觉得有很多的命令太长了 操作起来影响效率呢? 我们可以对所有的命令配置一个别名。git config --global alias.st status 表示用st代表status。
在这里插入图片描述

12.打标签 当我们需要返回到以前的版本时,需要找到原来的commitid 但是id太长了记不住怎么办呢?就像我们访问百度时,都适用www.baidu.com,想来也没有人去记住他的ip 180.101.49.45吧。同样的,我们也可以给版本打上一个类似域名的标签。git tag v1.0 给最新版本打标签直接用这个命令git tag commitid 给指定版本打标签。
在这里插入图片描述
13 git tag 查看标签列表
在这里插入图片描述

发布了26 篇原创文章 · 获赞 6 · 访问量 2948

猜你喜欢

转载自blog.csdn.net/weixin_45676630/article/details/104061022