zoukankan      html  css  js  c++  java
  • git 文件状态与工作区域

    在上一篇简单讲述了文件状态与工作区域,在这里结合相关git命令详细了解文件的状态变更。

    目录

    1. 介绍

    2. 常用命令

    3. 实际操作

    1. 介绍

    git的文件状态是其git核心内容,了解后对后续的操作有莫大的帮助,不同的文件状态又存储在不同的工作区域中。

    下面简单的说明这两者:

    1.1 文件状态

    git中的文件有以下几种状态:

    未跟踪(untrack):表示文件为新增加的。

    已修改(modified):表示修改了文件,但还没保存到git仓库中。

    已暂存(staged):表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。 

    已提交(committed):表示文件已保存在git仓库中。

    1.2 工作区域

    知道了文件状态,也需要知道不同的文件状态存储在不同的工作区域内。

    按照本地计算机与远程计算机划分,工作区域有以下几种:

    1)本地计算机

    Working Directory(工作目录):即正在编辑的文件状态。文件状态为未跟踪(untrack)和已修改(modified)在此区域内。

    Staging Area(暂存区):保存了下次将提交的文件列表信息。文件状态为已暂存(staged)在此区域内。

    Repository(本地仓库):提交到本地仓库的文件。

    2)远程计算机

    Repository(远程仓库):已提交到远程计算机内的文件。

    1.3 示例图

    2. 常用命令

    git clone :将远程仓库clone到本地计算机。

    git pull :拉取远程仓库的数据。

    git status :展示工作区及暂存区域中不同状态的文件。

    git add :将内容从工作目录添加到暂存区。

    git commit :所有通过 git add 暂存的文件提交到本地仓库。

    git push :将本地仓库的记录提交到远程仓库。

    git reset HEAD <file> :从暂存区移除指定文件。

    git checkout -- <file> :从本地仓库恢复指定文件。

    3.实际操作

    看完文件状态分类和相关命令后,来一次实际操作。

    3.1 初始状态

    git clone 一个仓库后,运行 git status

    3.2 添加一个文件

    在此仓库中添加一个文件a.txt,运行 git status

    提示:可以看到文件上方有个 "Untracked files",表示这个文件【未跟踪】。

    3.3 新创建的文件添加到【暂存区】

    执行 git add a.txt ,将会把新创建的a.txt提交到【暂存区】,执行后运行 git status

    提示:文件上方有说明使用 git reset HEAD <file> 可从暂存区移除指定文件。

    3.4 【暂存区】的内容提交到【本地仓库】

    执行 git commit ,将【暂存区】的内容提交到【本地操作】,执行后运行 git status

    3.5 【本地仓库】的内容提交到【远程仓库】

    执行 git push,将【本地仓库】的内容提交到【远程仓库】,执行后运行 git status

    提示:可以看到提交后git状态又回到初始化状态。

  • 相关阅读:
    异常处理机制
    如题
    MSSql随机取数据据
    在ASP.NET中下载Text文件,而不是在浏览器中打开它
    [原创]SQLite .net 数据库操作类
    对WinForm的App.config文件进行加密 转自 http://www.cnblogs.com/Jinjian/archive/2006/09/06/496009.html
    大型系统上PHP令人不爽的九大原因 转自:http://edu.itbulo.com/200705/114678.htm
    [原创]AspNetPager GridView 直连数据库 分页列子
    用.NET读取Flash格式文件信息
    js调用php动态数据
  • 原文地址:https://www.cnblogs.com/polk6/p/git-fileStatus.html
Copyright © 2011-2022 走看看