1. 概述

  1. git 存放代码的地方

2. 创建

  1. 命令

    # 1. 从无到有
    > git init
    # 2. 从远程拉去现有的仓库
    > git clone <url>

3. 文件生命周期

  1. 概述

    1. 处于 工作空间 的文件, 通常在这些状态之间 徘徊
  2. 状态

    1. untracked

      1. 概述

        1. 未追踪
      2. 简述

        1. 处于这个状态的文件, 不论增删改查, 都不会影响后面的 commit
        2. .gitignore 可以做进一步 约束
    2. tracked

      1. 概述

        1. 被 git版本库 追踪
        2. 已追踪
        3. 已追踪的文件, 又分为以下这些状态
      2. 状态

        1. unmodified

          1. 没有被修改
          2. 不会影响 commit
        2. modified / unstaged

          1. 已经修改, 但是没有 staged
          2. git status 里会有提示
          3. git add 之后会变为 staged 状态
          4. 如果没有 add, 则 commit 后依然是该状态
        3. staged

          1. 已经修改, 已经提交
          2. 提交后, 会变成 unmodified 状态

4. 命令

1. 查看文件状态

  1. git status

    1. 概述

      1. 查看 当前状态 的命令
    2. 结果

      1. 分支
      2. 已经追踪的文件
      3. 没有追踪的文件
  2. git show

    1. todo

2. 追踪文件

  1. git add

    1. 概述

      1. 改变文件状态

        1. 从 不追踪, 改变为 追踪
    2. 命令

      # 追踪所有新文件, gitignore 里的除外
      > git add . # 追踪单个文件
      > git add <file>
  2. git rm

    1. 概述

      1. 删除已经追踪, 但是没有提交的文件
    2. 选项

      1. --cached

        1. 只删除 缓存区 里的文件
        2. 保留 工作目录 里的文件
      2. -f

        1. 删除 缓存区 和 工作目录 的文件
      3. 命令

        > git rm --cached <file>
        > git rm -f <file>

ps

  1. ref

    1. pro git
    1. 终于知道为啥 git 用着觉得不顺了

      1. 命令

        1. 命令多, 参数多

          1. 但是常用有用的, 就那么几种
        2. 同一个命令, 多种行为
          1. 这个是坑
        3. 同一个行为, 多种命令
          1. 这个是坑

Git - 03. git 工作空间的更多相关文章

  1. 从0开始学习 GitHub 系列之「03.Git 速成」

    前面的 GitHub 系列文章介绍过,GitHub 是基于 Git 的,所以也就意味着 Git 是基础,如果你不会 Git ,那么接下来你完全继续不下去,所以今天的教程就来说说 Git ,当然关于 G ...

  2. [git]常用 Git 命令清单

    新建 创建一个新的 git 版本库.这个版本库的配置.存储等信息会被保存到.git 文件夹中 # 初始化当前项目 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init ...

  3. [Git] 还原Git上commit,但是没有push代码

    直接在Idea上操作2步解决: 1. 找到: 2. 在To Commit里面填写:HEAD^,表示将commit的信息还原为上一次的,需要多次直接reset多次即可: 使用命令行:原理一样 以下内容转 ...

  4. 命令行操作svn和git和git

    前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用svn或者git保存代码,相信很多程序员遇到过,硬盘坏掉,存在硬盘中的代码丢失,无法找回的问题,svn和git可谓程序员界的福音, ...

  5. Git:Git初体验——Git安装配置

    作为即将成为一个程序员的男人,一直在听别人说Git多好多好,之前也随便了解了一些,但是始终没有决心去学会.现在大四了,只有毕设和一门开学六七周只去过一次课的全员必修课外,也没有什么事情做,何不去做这些 ...

  6. 使用Git、Git GUI和TortoiseGit

    1. 关于命令行 我一直建议在命令行中使用Git或者SVN.因为这样可能更加了解他们的工作方式,也不容易遗漏重要的问题和提醒. 在Windows习惯的驱使下,大多数人是不会看弹出的对话框中有什么信息的 ...

  7. git学习——git理解和仓库的创建

    一.git用的3个工作的状态的理解. 1. 工作区 workspace(modified); 2. 暂存区 stage(staged) ; 3. git本地仓库 repository(commited ...

  8. git format-patch & git apply & git clean

    一.打补丁 git format-patch & git apply 最近在工作中遇到打补丁的需求,一来觉得直接传文件有些low(而且我尝试了一下,差点把项目代码毁了) ,二来也是想学习一下, ...

  9. [git]图解git常用命令

    本文图解git中最常用的命令.如果你稍微理解git的工作原理,这篇文章能够让你理解的更透彻. 基本用法 约定 命令详解 Diff Commit Checkout Detached HEAD(匿名分支提 ...

随机推荐

  1. centos8 ftp

    安装 yum install -y vsftpd 启动 systemctl start vsftpd.service 开机启动 systemctl enable vsftpd.service 查看状态 ...

  2. eclipse调字体大小

    首先调java字体: Window -> Preferences -> General -> Appearance -> Colors and Fonts -> Java ...

  3. SQLserver还原提示正在还原中。解决方法

    今天在Sqlerver还原数据库时一直就卡在那里提示“正在还原…”的状态,此时无法操作数据库,下面我来给大家介绍解决些问题的方法 解决方法: RESTORE DATABASE demo FROM DI ...

  4. Eclipse中配置Tomcat容器

    Tomcat 安装与配置 Tomcat是Apache 软件基金会(Apache Software Foundation)核心项目之一,支持最新的Servlet 和JSP 规范.因为Tomcat 技术先 ...

  5. 并查集-E - Wireless Network

    E - Wireless Network An earthquake takes place in Southeast Asia. The ACM (Asia Cooperated Medical t ...

  6. python中一些相似用法的区别:index()和find(),dict[]和get()

    index和find在字符串中的区别: index()方法和find()方法相似,唯一的区别就是find方法不包含索引值会返回-1,而index()不包含索引值会抛出异常   同样的:获取字典dict ...

  7. 如何在Word中排出漂亮的代码,去除回车符,去除拼写检查

    这位博主写到很到位,这里补充一下在VBA里用模块的部分. https://blog.csdn.net/code4101/article/details/41802715 1.放代码的方式是贴纯文本. ...

  8. PVE上安装黑裙辉6.2

    参考文章:https://post.smzdm.com/p/a25r8mo2/ http://www.myxzy.com/post-488.html 环境介绍 1.Proxmox VE(以下简称PVE ...

  9. AspxDashBorad_OnDashboardLoaded 获取对应的DashboardParameter

    protected void ASPxDashboardViewerThrend_OnDashboardLoaded(object sender, DashboardLoadedWebEventArg ...

  10. jQuery jqgrid 应用实例

    1.html <div class="ibox-content"> <div class=\"jqGrid_wrapper\"> < ...