在仓库(版本库)中进行文件的操作
一、文件的新增和修改提交【版本的新增】
对文件进行提交的时候,区域分为两个区域:(非常重要的概念)
1、文件本身修改新增等操作所在的区域在工作区域(working directory),执行git add,将文件从工作区域转换到暂存区域,工作区域的文件不会进行提交到仓库中
2、暂存区域(stage),只有暂存区域的文件才能用于提交(操作)
1、新增或修改文件后,工作区转到暂存区 :
git add xxxxx文件 (多个)
2、当文件修改后 执行 git status
查看哪些文件进行了变更
以下状态为刚修改完,文件的变动尚在工作区 not staged
[root@sf160114 learnGit]# git status
# On branch master 当前在那个分支上
# Changes not staged for commit: 下边的文件不可以被提交(未执行 git add)
# (use "git add <file>..." to update what will be committed) 将文件从工作区添加到缓存区
# (use "git checkout -- <file>..." to discard changes in working directory) 将工作区的文件的更改回最新版本,覆盖已修改的内容
#
# modified: readme.txt
# modified: ys.txt
以下为我们执行了git add
后 ,工作区的修改已经添加进了暂存区,表示文件这个时候可以被commit了。
[root@sf160114 learnGit]# git status
# On branch master 当前在那个分支上
# Changes to be committed: 下边的文件可以被提交(执行了 git add)
# (use "git reset HEAD <file>..." to unstage) 从缓存区重置回工作区
#
# modified: readme.txt
# modified: ys.txt
#
当我们将暂存区的文件commit
或者将工作区的文件修改reset
后,
暂存区没有要提交的内容,工作区也是干净的了。
nothing to commit, working directory clean
[root@sf160114 learnGit]# git status
# On branch master
nothing to commit, working directory clean
3、对于修改的文件可以执行
git diff
查看所有修改后的文件(默认与最新版本对比)
git diff xxxx文件1 xxxxx文件2
查看单个/多个文件的变动(默认与最新版本对比)
查看文件的变动的内容。
git diff comitId [-- 文件1 <多个文件> ]
对比某个版本与当前工作区域的文件的变动
commitId可以为HEAD<当前最新版本>或某个特定的版本
不写文件就是全部文件比对,写文件名称的话中间加--
多文件名用空格隔开
[root@sf160114 learnGit]# git diff ys.txt
diff --git a/ys.txt b/ys.txt
index a5130f9..d5daef9 100644
--- a/ys.txt
+++ b/ys.txt
@@ -1,4 +1,4 @@
dyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
ssssssssssssssssssssssssssssddddddddd
ffffffffffffffffffffffffffffggggggggg
-
+df dshfsdhfsdhf ;fdasdijf dsffsdfasod 防守打法时代峻峰可接受的看交付
4、暂存区提交至仓库 :
git commit -m "注释注释注释"
[root@sf160114 learnGit]# vi ys.txt
[root@sf160114 learnGit]# git add ys.txt
[root@sf160114 learnGit]# git commit -m "添加第二个文件"
[master 49aded3] 添加第二个文件
1 file changed, 4 insertions(+) #一个文件改变 插入四行内容
create mode 100644 ys.txt
[root@sf160114 learnGit]# git commit -m "提交两个文件的修改"
[master ef5ff6c] 提交两个文件的修改
2 files changed, 2 insertions(+), 2 deletions(-) #两个文件改变 两行插入,2行删除