Git 是什么?
作为程序员,被产品要求加需求,砍需求是常有的事情。而一个程序,从0.1到1.0,也肯定有过大大小小的修改。
如果每次都要把程序完整备份下来,然后在修改,会很累人。
而时间久了,我们也会忘记这个版本我们到底改了什么。
git 是一种分布式版本管理技术,忠实地记录程序和文件的所有修改。
初始化
我们新建一个文件夹,然后切换到当前文件夹里面。
mkdir hello_git
cd hello_git
利用git初始化命令,hello_git
文件夹就有了一个版本库文件.git
,这个文件是隐藏的,我们不用管。
而hello_git
这个文件夹,就是你的工作区
。
git init
你在工作区内的所有文件修改,都会被.git
记录下来。
而通过这个命令,我们就可以知道工作区的当前状态。当前是一个空仓库(empty respo)。
Git 组成
仓库初始化以后,我们从一张图,大致看一下其组成。
Git 版本库目录是 Git 用来保存项目的元数据和对象数据库的地方。 这是 Git 中最重要的部分.就是.git
文件
工作目录就是你当前的hello_git
。这些从 Git 仓库的压缩数据库中提取出来的文件,放在磁盘上供你使用或修改。
暂存区域(stage)是一个文件,保存了下次将提交的文件列表信息。
Git基本操作--add,commit
我们在当前文件夹下,新建一个txt文件--readme.txt
。如果要用git把readme.txt
保存下来,以便进行版本管理,就要两步。
第一步,利用 git add
命令将文件添加到 暂存区(stage)
(后面会讲)
更改准备提交
。
第二步,我们利用git commit
,把文本文件从暂存区
提交到版本库
里面
git commit -m 'a new readme.txt'
commit 命令后面加 -m
表示可以添加提示信息,对修改有直观的认识。
文件的三种状态
你的文件一般有三种状态:已提交(committed)
、已修改(modified)
和已暂存(staged)
已提交表示数据已经安全的保存在版本库
中。
已修改表示修改了文件,但还没保存到版本库
中。
已暂存表示对一个已修改文件的当前版本做了标记--保存到stage
,使之包含在下次提交的快照中。
而这些状态,我们都可以通过git status
进行查看。