Git的使用(基础语句)
首先如果想要使用git的各项功能,我们要下载Git-2.40.1-64-bit.exe这个驱动程序,并安装它,这个资源我没有办法上传是因为有的博主已经上传过了,所以有VIP的或者有钱哥可以去csdn上自行下载,实在不行加我qq我发你492539626.
首先了解一下git是什么,git是软件开发的重要工具,可以说其重要程度已经和你所会的语言一个地位,如果没有git来管理代码,就会出现各种并不必要的麻烦,所以git总的来说就是管理代码用的。
下面来演示一下它的功能:
首先随便在一个非c盘的文件夹中创建一个文件夹,我将其命名为123,然后在abc文件夹中左键,点击显示更多选项,会出现Git GUI Here和Git Bash Here。
我们选择Git Bash Here后会弹出一个黑色的类似于控制台的窗口。
出现这么一个窗口就说明你的git搭建好了,接下来是第一个git语句
git init 它的作用是将此文件交给git进行管理,使得你的操作分支设为此文件,在这个窗口中输入这段命令。
若在文件路径后面的括号中看到master及说明操作成功,将主线分支设置为123文件,可以对123文件夹进行操作。接下来是git status 命令,它的作用是查看当前分支的状态,查看文件夹中的文件是否被添加到缓冲区,缓冲区的文件是否被修改或被提交到本地仓库。
出现这样的情况是因为我并没有在123文件中创建任何文件,接下来在此文件夹中创建一个文本文档叫做test1.txt,然后再使用git status查看一下此分支的状态。
可以看到红色的文本test1.txt这是因为此文件被创建出来并没有被添加到缓冲区,如果将其添加到缓冲区文本颜色就会变为绿色,如何将其添加到缓冲区,要用到git add 文件名 这条语句的作用就是把此文件添加到缓冲区。若是觉得麻烦也可以用git add . 这段语句的作用是将所有的文件全部添加到缓冲区。然后我们在查看一下状态。
可以看到添加到缓冲区的文档会被显示为绿色,这意味这此文件已经有资格被提交到本地仓库了,提交到本地仓库是团队之间配合开发的重要操作,那么如何提交到本地仓库呢,要使用 git commit -m "提交的内容描述" 这段语句就是可以把缓冲区内的文件提交到本地仓库,双引号中的内容就是相当于注释的功能,可以写任何东西,但是在公司中里面通常写的都是开发的功能描述。将test1.txt提交到本地仓库后,缓冲区就会被清空,如果是第一次提交还会让你输入一下你的邮箱地址和你的姓名,这都是为了团队开发而做的准备。
提交后可以看到缓冲区什么都没有了告诉你working tree clean 工作树清空。之后我们再创建两个文件并提交到本地仓库分别是test2.txt和test3.txt,如果我们想看一下我们的提交到本地仓库的记录我们就要使用git log进行查看。
这里面head指向的分支是你的所在操作分支,而commit 后面黄色的一串是提交的id,可以根据此id回到之前的提交记录,这时候就要使用git reset --hard 提交的id,进行代码回滚,把代码恢复到之前的状态 ,这里我们在test1.txt中写下一串数字,这回导致test1.txt被修改,这会让它的状态变成红色,我们要重新将它添加到缓冲区然后再提交给本地仓库,之后再打开记录,将first test3的id记录下来,然后使用命令git reset --hard 8208096d81902a77e6a8e0ab695cbdb9c1359ce7,将记录返回到first test3
回滚后可以发现test1.txt中的那串数字消失了,这是由于代码回滚造成的。
如果不小心将不想添加到缓冲区的文件添加到缓冲区中,如何把它拿出来,要使用git reset 命令,它的作用是把缓冲区里的内容清空,不提交给仓库,这样原本绿色的文件就会变为红色。
创建新的分支也是可以的要使用git checkout -b 分支名,然后git checkout 分支名是可以切换操作的分支,我们刚开始的分支叫做master,这里我创建一个dev分支。
创建新分支,不同分支的代码是互不影响的,dev分支的代码发生了变化,不会影响其他分支
合并分支的命令,想要把dev分支的代码合并到master分支上,你首先得切换到master分支上
git merge dev
这里我们要使test1.txt在dev分支上进行修改,然后提交给本地仓库,之后切换为master 分支然后再进行修改,然后进行分支合并语句使他们合并最后会在master 分支的test1.txt文件上看到在dev分支上修改的部分。
这里的部分文本在代码中是会报错的,所以我们可以删除报错的部分文档,这个过程就叫做处理git的融合矛盾。在很多时候都会出现这样的情况。以上的这些语句都是很基础的git语句用于个人开发,之后还会有团队开发的语句。