修改网站内容(Git修改->gitaddadd-第二次第二次修改commit)
优采云 发布时间: 2021-09-05 04:14修改网站内容(Git修改->gitaddadd-第二次第二次修改commit)
现在,假设您已经完全掌握了暂存区的概念。接下来,我们将讨论为什么 Git 比其他版本控制系统更好,因为 Git 跟踪和管理更改,而不是文件。
你会问,什么是修改?例如,如果您添加一个新行,这就是一个修改。如果删除一行,也是一种修改。如果你改变了一些字符,它也是一种修改。如果删除一些,添加一些,也是一种修改,甚至创建一个新文件。一个修改。
为什么说 Git 管理的是变更,而不是文件?我们还在做实验。第一步是对readme.txt进行修改,比如增加一行内容:
$ cat readme.txt
Git is a distributed version control system.
Git is free software distributed under the GPL.
Git has a mutable index called stage.
Git tracks changes.
然后,添加:
$ git add readme.txt
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD ..." to unstage)
#
# modified: readme.txt
#
然后,修改readme.txt:
$ cat readme.txt
Git is a distributed version control system.
Git is free software distributed under the GPL.
Git has a mutable index called stage.
Git tracks changes of files.
提交:
$ git commit -m "git tracks changes"
[master 519219b] git tracks changes
1 file changed, 1 insertion(+)
提交后,再次查看状态:
$ git status
On branch master
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)
modified: readme.txt
no changes added to commit (use "git add" and/or "git commit -a")
咦,为什么没有提交第二次修订版?
别激动,我们来回顾一下操作流程:
第一次修改-> git add -> 第二次修改-> git commit
看,正如我们之前所说,Git 管理修改。使用 git add 命令时,工作区中的第一个修改被放入临时存储区并准备提交。第二次修改没有放入暂存区,所以git commit只负责将修改提交到暂存区,即提交第一次修改,第二次修改不会提交。
提交后,使用git diff HEAD - readme.txt 命令查看工作区最新版本与版本库的区别:
$ git diff HEAD -- readme.txt
diff --git a/readme.txt b/readme.txt
index 76d770f..a9c5755 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,4 +1,4 @@
Git is a distributed version control system.
Git is free software distributed under the GPL.
Git has a mutable index called stage.
-Git tracks changes.
+Git tracks changes of files.
可以看出第二次修改确实没有提交。
如何提交二次修改?可以继续git add然后git commit,或者不用担心提交第一个修改,先git add第二个修改,然后git commit,相当于把两个修改合并提交一个:
第一次修改-> git add -> 第二次修改-> git add -> git commit
好的,现在,提交第二次修改,开始总结。
总结
现在,您了解 Git 如何跟踪更改。每次进行更改时,如果不使用 git add 到暂存区,则不会将其添加到提交中。