网站目录管理模板下载,网站程序 不能创建文件夹,郑州网页设计培训,国外的服务器网站Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。 先来看名词解释。 工作区#xff08;Working Directory#xff09; 就是你在电脑里能看到的目录#xff0c;比如我的learngit文件夹就是一个工作区#xff1a; 版本库#xff08;Repository#xff09; 工…Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。 先来看名词解释。 工作区Working Directory 就是你在电脑里能看到的目录比如我的learngit文件夹就是一个工作区 版本库Repository 工作区有一个隐藏目录.git这个不算工作区而是Git的版本库。 Git的版本库里存了很多东西其中最重要的就是称为stage或者叫index的暂存区还有Git为我们自动创建的第一个分支master以及指向master的一个指针叫HEAD。 分支和HEAD的概念我们以后再讲。 前面讲了我们把文件往Git版本库里添加的时候是分两步执行的 第一步是用git add把文件添加进去实际上就是把文件修改添加到暂存区 第二步是用git commit提交更改实际上就是把暂存区的所有内容提交到当前分支。 因为我们创建Git版本库时Git自动为我们创建了唯一一个master分支所以现在git commit就是往master分支上提交更改。 你可以简单理解为需要提交的文件修改通通放到暂存区然后一次性提交暂存区的所有修改。 俗话说实践出真知。现在我们再练习一遍先对readme.txt做个修改比如加上一行内容 Git is a distributed version control system.
Git is free software distributed under the GPL.
Git has a mutable index called stage.然后在工作区新增一个LICENSE文本文件内容随便写。 先用git status查看一下状态 $ git status
# On branch master
# Changes not staged for commit:
# (use git add file... to update what will be committed)
# (use git checkout -- file... to discard changes in working directory) # # modified: readme.txt # # Untracked files: # (use git add file... to include in what will be committed) # # LICENSE no changes added to commit (use git add and/or git commit -a) Git非常清楚地告诉我们readme.txt被修改了而LICENSE还从来没有被添加过所以它的状态是Untracked。 现在使用两次命令git add把readme.txt和LICENSE都添加后用git status再查看一下 $ git status
# On branch master
# Changes to be committed:
# (use git reset HEAD file... to unstage)
# # new file: LICENSE # modified: readme.txt # 现在暂存区的状态就变成这样了 所以git add命令实际上就是把要提交的所有修改放到暂存区Stage然后执行git commit就可以一次性把暂存区的所有修改提交到分支。 $ git commit -m understand how stage works
[master 27c9860] understand how stage works2 files changed, 675 insertions() create mode 100644 LICENSE 一旦提交后如果你又没有对工作区做任何修改那么工作区就是“干净”的 $ git status
# On branch master
nothing to commit (working directory clean)现在版本库变成了这样暂存区就没有任何内容了 转载于:https://www.cnblogs.com/jeremylee/p/5536832.html