Git基本操作学习笔记(2)

接下来我们写入缓存,并提交对 hello.php 的所有改动。在首个例子中,我们使用 -m 选项以在命令行中提供提交注释。

$ git add hello.php

$ git status -s

A  README

A  hello.php

$ $ git commit -m '第一次版本提交'[master (root-commit) d32cf1f] 第一次版本提交

2 files changed, 4 insertions(+)

create mode 100644 README

create mode 100644 hello.php

现在我们已经记录了快照。如果我们再执行 git status:

$ git status# On branch master

nothing to commit (working directory clean)

以上输出说明我们在最近一次提交之后,没有做任何改动,是一个"working directory clean:干净的工作目录"

如果你没有设置 -m 选项,Git 会尝试为你打开一个编辑器以填写提交信息。 如果 Git 在你对它的配置中找不到相关信息,默认会打开 vim。屏幕会像这样:

# Please enter the commit message for your changes. Lines starting# with '#' will be ignored, and an empty message aborts the commit.# On branch master# Changes to be committed:#   (use "git reset HEAD <file>..." to unstage)## modified:   hello.php#~~".git/COMMIT_EDITMSG" 9L, 257C

如果你觉得 git add 提交缓存的流程太过繁琐,Git 也允许你用 -a 选项跳过这一步。命令格式如下:

git commit -a

我们先修改 hello.php 文件为以下内容:

<?php

echo 'Linux公社:';

echo 'Linux公社:';?>

再执行以下命令:

git commit -am '修改 hello.php 文件'[master 71ee2cb] 修改 hello.php 文件

1 file changed, 1 insertion(+)

5.git reset HEAD

git reset HEAD 命令用于取消已缓存的内容。

我们先改动文件 README 文件,内容如下:

# Runoob Git 测试# Linux公社

hello.php 文件修改为:

<?php

echo 'Linux公社:';

echo 'Linux公社:';

echo 'Linux公社:';?>

现在两个文件修改后,都提交到了缓存区,我们现在要取消其中一个的缓存,操作如下:

$ git status -s

M README

M hello.php

$ git add .

$ git status -s

M  README

M  hello.pp

$ git reset HEAD -- hello.php Unstaged changes after reset:

M hello.php

$ git status -s

M  README

M hello.php

现在你执行 git commit,只会将 README 文件的改动提交,而 hello.php 是没有的。

$ git commit -m '修改'[master f50cfda] 修改

1 file changed, 1 insertion(+)

$ git status -s

M hello.php

可以看到 hello.php 文件的修改并为提交。

这时我们可以使用以下命令将 hello.php 的修改提交:

$ git commit -am '修改 hello.php 文件'[master 760f74d] 修改 hello.php 文件

1 file changed, 1 insertion(+)

$ git statusOn branch master

nothing to commit, working directory clean

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/14865.html