Git学习笔记05—文件基本操作

来源:互联网 发布:java数组拼接成字符串 编辑:程序博客网 时间:2024/06/12 01:39
检查当前文件的状态

要确定哪些文件当前处于什么状态,可以用git status 命令。如果在克隆仓库之后立即执行此命令,会看到类似这样的输出:

$git status
On branch master
nothing to commit, working directory clean

这说明你现在的工作目录相当干净。换句话说,所有已跟踪文件在上次提交后都未被更改过。此外,上面的信息还表明,当前目录下没有出现任何处于未跟踪的新文件,否则Git会列出来。最后,该命令还显示了当前所在的分支是master,这是默认的分支名称。

$vim index.html
$git status
On branch master
Untracked files:
    (use "git add <file>..." to include in what will be committed)
    index.html
nothing added to commit but untracked files present (use "git add" to track)

在状态报告中可以看到新建的index.html文件出现在"Untracked files"下面,未跟踪的文件意味着Git在之前的快照(提交)中没有这些文件,Git不会自动将之纳入跟踪范围,除非你明明白白的告诉它“我需要跟踪该文件”,因而不用担心把临时文件什么的也归入版本管理。



跟踪新文件


使用命令git add 开始跟踪一个新文件:
$git add index.html

此时再运行git status 命令,会看到index.html 文件已被跟踪,并处于暂存状态:
$git status
On branch master
Changes to be committed:
    (use "git reset HEAD <file> ..." to unstage)

    new file: index.html


只要在"Changes to be committed" 这行下面的,就说明是已暂存状态。如果此时提交,那么该文件此时此刻的版本就被留存在历史记录中。在git add 后面可以指明要跟踪的文件或目录路径。如果是目录的话,就说明要递归跟踪该目录下的所有文件。(其实git add的潜台词就是把目标文件快照放入暂存区域,也就是add file into staged area,同时未曾跟踪过的文件标记为需要跟踪。这样就好理解后续add操作的实际意义了)


提交更新

现在的暂存区已经准备妥当可以提交了。在此之前要确认还有什么修改过的或新建的文件还没有git add 过,否则提交的时候不会记录这些还没暂存起来的变化。所以,每次准备提交前,先用git status看下是不是已暂存起来了,然后再运行命令 git commit:

$git commit

这种方式会启动文本编辑器输入提交说明。也可以用 -m 参数后跟提交说明的方式,在一行命令中提交更新:

$git commit -m "更新说明"


提交时记录的是放在暂存区域的快照,任何还未暂存的仍然保持已修改状态,可以在下次提交时纳入版本管理。

0 0