文章目录
前言
本文从工作区,暂存区和版本库的概念引入, 介绍了Git中的一些基础命令, 同时结合实例来学习如何将文件提交到git仓库,以及如何进行撤销修改等操作.
一、工作区、暂存区和版本库的概念
1.介绍
工作区: 我们在电脑上修改的代码文件所在的目录,简单来说就是你对代码进行修改的地方;
暂存区(stage|index): 一般是位于.git目录下的index文件中,我们也称之为索引。需要先将待提交的文件添加到暂存区,然后再提交到版本库;
版本库(repository): 又名仓库,位于工作区的隐藏目录.git中,它不属于工作区,而是独立出来的Git的版本库。版本库中将每一次git提交作为一个Git对象进行管理,每个文件的修改、删除都会被跟踪,以便在后续开发中对历史记录进行查看或者“还原”。
2.它们之间的关系
工作区、暂存区、版本库之间的关系可以参考下图
- 当创建Git版本库时,Git会自动创建一个唯一的master分支,以及指向master分支的HEAD;
- 当对工作区修改的内容(增/删/改文件)执行git add命令时,暂存区目录树的文件索引会被更新;
- 当执行
git commit
提交命令时,master分支会进行对应的更新,即将暂存区的目录树真正写入到版本库中。
总结来说,我们在工作区进行增删改文件等操作不会同步更新到仓库中,只有使用git add
和git commit
命令后,才能将修改提交到仓库中进行管理。
二、命令介绍
1.git add
git add [file1] [file2] [file3] #添加一个或多个文件 到暂存区
git add [dir] #添加指定目录(及其子目录) 到暂存区
git add #添加当前目录下所有文件改动 到暂存区
2.git commit
git commit -m "commit message" #提交修改内容到版本库,-m后跟上本次提交的具体描述,方便后续回顾历史记录
注意: message绝对不能省略,要描述你的提交细节,方便后续维护。
举例:
创建文件code1,在文件中写入内容为"git add",通过git add
命令将code1文件添加到暂存区,再使用git commit
命令将暂存区的内容提交到版本库中。
可以看到git commit
命令的提示信息中说明:一个文件被修改(新增的文件code1),插入了一行内容(在code1中写入的"git add")。
也可以尝试add多个文件,然后一次commmit提交所有文件:
git commit是将暂存区中所有的修改提交到版本库中。
参考下面的例子