开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第11天,点击查看活动详情
关于git的安装配置之类的我就不介绍了。
git文件的简单传输过程
首先,我们需要知道的就是git中一共有几个工作区域。git中,一共有四个工作区域:工作目录(Working Directory)、暂存区(Repository)、资源库(History)还有远程的git仓库(Remote Directory)。编辑
由图可以看到,我们在对git仓库中的文件进行存取的时候,通常使用8个git的操作。分别是git add、git commit、git push、git pull、git reset、git checkout。
下面,简单介绍一下这几个指令的流程。首先,我们在工作区域写好自己的代码,如果想进行上传,我们需要先使用git add,将文件存入暂存区,之后使用git commit将文件提交到资源库即本地仓库,然后再使用git push即可将文件存入远程服务器的git仓库上。
如果我们需要从远程将代码拉到本地只需要使用git pull即可;git commit提交之后可以使用git reset命令进行回滚,存到暂存区。如果现在文件在暂存区,还没有提交出去,如果要放回本地的话使用git checkout。
这就是git中文件传输流程的基本过程。
git文件状态
git中一共有四种状态:untracked、unmodified、modified、statged。
新建好一个文件时,文件处于untracked状态,使用git add将其添加到暂存区之后便处于staged状态了,之后再使用git commit将他提价到本地仓库后处于unmodified状态,如果之后修改此文件的话,这个文件就会处于modified状态。
编辑
1、Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add和get commit 状态变为Staged。
2、Unmodify: 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件。
3、Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态, 使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改。
4、Staged: 暂存状态. 执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致,文件为Unmodify状态. 执行git reset HEAD filename取消暂存, 文件状态为Modified。
git add
git commit
git push
这些就是使用git的基本流程,相辅的指令有git status查看此时文件所处的状态,git log查看此分支的操作日志。