git自学宝典——仓库状态控制

前文回顾


在前文的基础上,利用前文创建的demo仓库来做如下演示,在仓库目录下有个叫readme.md文件,md即markdown标记语言。Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。
Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表格、脚注、内嵌HTML等等),这些功能原初的Markdown尚不具备,它们能让Markdown转换成更多的格式,例如LaTeX,Docbook。Markdown增强版中比较有名的有Markdown Extra、MultiMarkdown、 Maruku等。这些衍生版本要么基于工具,如Pandoc;要么基于网站,如GitHub和Wikipedia,在语法上基本兼容,但在一些语法和渲染效果上有改动。(这一段来自百度百科,有专门编辑器来编辑这个文件,读者可以自行百度下载)
注:以下代码或者文件内容中,凡是出现“#”号,皆表示后续内容为注释,不出现在实际代码或者文本操作中。
给readme.md文件添加如下内容:

hello world#输入初始内容

到dos窗口下输入如下命令:

git status

dos命令窗口显示如下内容:

On branch master
Your branch is up to date with ‘origin/master’.
Changes not staged for commit:
(use “git add <file>…” to update what will be committed)
(use “git restore <file>…” to discard changes in working directory)
modified: README.md
no changes added to commit (use “git add” and/or “git commit -a”)

这就是传说中的版本控制状态,git status命令就是让我们知道这个仓库当前状态,"Changes not staged for commit"表示改变内容没有添加到暂存区,"for commit"意思就是改变内容没有提交到仓库。后续括号中的内容是git系统建议用户执行的操作,其中git add我就不说了,下文有;git restore表示记录“改变的内容”到仓库中。“modified:readme.md”表示readme.md文件被修改,如果你想知道修改内容,其实也是可以的,在命令行中输入如下命令:

git diff

git diff即git difference,顾名思义,就是提出不同的内容。difference是Unix系统的设计原理之一,输入命令后可看到如下内容:

diff --git a/README.md b/README.md
index 6885423…f250d50 100644
— a/README.md
+++ b/README.md
@@ -1 +1,2 @@
-# dmeo
\ No newline at end of file
+# dmeo
+hello world
\ No newline at end of file

上述的输出中,“-”号表示去掉的的内容,“+”号表示新添加的内容。此输出表示,新添加了一行内容hello world。
接下来我们分别执行如下命令git add和git commit,每次执行完命令后,执行一次git status来查看状态。其中git add和git commit的工作原理如下图所示:
在这里插入图片描述
第一步:执行git add命令,将readme.md文件添加到暂存区,然后再执行git status查看仓库状态。执行结果如下:

C:\Users\良木\Desktop\demo>git add *#add命令支持使用通配符,其中*号表示添加所有
C:\Users\良木\Desktop\demo>git status
On branch master
Your branch is up to date with ‘origin/master’.
Changes to be committed:
(use “git restore --staged <file>…” to unstage)
modified: README.md

上述输出内容表示改变还没有提交,建议用户记录改变内容。不过没有必要,因为后文会给你讲什么叫版本回退,正儿八经的版本控制。

第二步:执行"git commit -m 注释"命令,将readme.md文件添加到本地仓库,然后再执行git status查看仓库状态。git commit后面需要加上"-m"修饰,修饰后面说明本次提交做了什么工作。这个是必须的,对于日常工作来说;同样也是不必须的,对于git设计来说。如果你想知道怎么不添加注释将内容提交,请执行git commit --help命令自己去查,我不给你说。执行结果如下:

C:\Users\良木\Desktop\demo>git commit -m “add hello world in readme.md”
[master a0e221b] add hello world in readme.md
1 file changed, 2 insertions(+), 1 deletion(-)
C:\Users\良木\Desktop\demo>git status
On branch master
Your branch is ahead of ‘origin/master’ by 1 commit.
(use “git push” to publish your local commits)
nothing to commit, working tree clean

现在git系统提示你去发布你的仓库,当然你可以返回以前的文章去看看如何提交。下面显示nothing to commit, working tree clean,表示没有任务去提交,工作目录树很干净。


本章讲了仓库状态控制与查询,git status是git版本控制中,最常用的命令之一。下章我们讲git神器,版本回退,也就是git的真正功用。

欲知后事如何,且听下回分解。
有钱的赏个钱场,没钱的赏个人场。良某人谢过了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值