Git - 03. git 工作空间
1. 概述
- git 存放代码的地方
2. 创建
命令
# 1. 从无到有
> git init
# 2. 从远程拉去现有的仓库
> git clone <url>
3. 文件生命周期
概述
- 处于 工作空间 的文件, 通常在这些状态之间 徘徊
状态
untracked
概述
- 未追踪
简述
- 处于这个状态的文件, 不论增删改查, 都不会影响后面的 commit
- .gitignore 可以做进一步 约束
tracked
概述
- 被 git版本库 追踪
- 已追踪
- 已追踪的文件, 又分为以下这些状态
状态
unmodified
- 没有被修改
- 不会影响 commit
modified / unstaged
- 已经修改, 但是没有 staged
- git status 里会有提示
- git add 之后会变为 staged 状态
- 如果没有 add, 则 commit 后依然是该状态
staged
- 已经修改, 已经提交
- 提交后, 会变成 unmodified 状态
4. 命令
1. 查看文件状态
git status
概述
- 查看 当前状态 的命令
结果
- 分支
- 已经追踪的文件
- 没有追踪的文件
git show
- todo
2. 追踪文件
git add
概述
- 改变文件状态
- 从 不追踪, 改变为 追踪
- 改变文件状态
命令
# 追踪所有新文件, gitignore 里的除外
> git add . # 追踪单个文件
> git add <file>
git rm
概述
- 删除已经追踪, 但是没有提交的文件
选项
--cached
- 只删除 缓存区 里的文件
- 保留 工作目录 里的文件
-f
- 删除 缓存区 和 工作目录 的文件
命令
> git rm --cached <file>
> git rm -f <file>
ps
ref
坑
- 终于知道为啥 git 用着觉得不顺了
- 命令
- 命令多, 参数多
- 但是常用有用的, 就那么几种
- 同一个命令, 多种行为
- 这个是坑
- 同一个行为, 多种命令
- 这个是坑
- 命令多, 参数多
- 命令
- 终于知道为啥 git 用着觉得不顺了
Git - 03. git 工作空间的更多相关文章
- 从0开始学习 GitHub 系列之「03.Git 速成」
前面的 GitHub 系列文章介绍过,GitHub 是基于 Git 的,所以也就意味着 Git 是基础,如果你不会 Git ,那么接下来你完全继续不下去,所以今天的教程就来说说 Git ,当然关于 G ...
- [git]常用 Git 命令清单
新建 创建一个新的 git 版本库.这个版本库的配置.存储等信息会被保存到.git 文件夹中 # 初始化当前项目 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init ...
- [Git] 还原Git上commit,但是没有push代码
直接在Idea上操作2步解决: 1. 找到: 2. 在To Commit里面填写:HEAD^,表示将commit的信息还原为上一次的,需要多次直接reset多次即可: 使用命令行:原理一样 以下内容转 ...
- 命令行操作svn和git和git
前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用svn或者git保存代码,相信很多程序员遇到过,硬盘坏掉,存在硬盘中的代码丢失,无法找回的问题,svn和git可谓程序员界的福音, ...
- Git:Git初体验——Git安装配置
作为即将成为一个程序员的男人,一直在听别人说Git多好多好,之前也随便了解了一些,但是始终没有决心去学会.现在大四了,只有毕设和一门开学六七周只去过一次课的全员必修课外,也没有什么事情做,何不去做这些 ...
- 使用Git、Git GUI和TortoiseGit
1. 关于命令行 我一直建议在命令行中使用Git或者SVN.因为这样可能更加了解他们的工作方式,也不容易遗漏重要的问题和提醒. 在Windows习惯的驱使下,大多数人是不会看弹出的对话框中有什么信息的 ...
- git学习——git理解和仓库的创建
一.git用的3个工作的状态的理解. 1. 工作区 workspace(modified); 2. 暂存区 stage(staged) ; 3. git本地仓库 repository(commited ...
- git format-patch & git apply & git clean
一.打补丁 git format-patch & git apply 最近在工作中遇到打补丁的需求,一来觉得直接传文件有些low(而且我尝试了一下,差点把项目代码毁了) ,二来也是想学习一下, ...
- [git]图解git常用命令
本文图解git中最常用的命令.如果你稍微理解git的工作原理,这篇文章能够让你理解的更透彻. 基本用法 约定 命令详解 Diff Commit Checkout Detached HEAD(匿名分支提 ...
随机推荐
- Wannafly Camp 2020 Day 1E 树与路径 - 树上差分,LCA
#include <bits/stdc++.h> using namespace std; #define int long long const int N = 1000005; vec ...
- Linux系统搭建Java环境【JDK、Tomcat、MySQL】一篇就够
前言:所有项目在完成开发后都会部署上线的,一般都是用Linux系统作为服务器的,很少使用Windows Server(大多数项目的开发都是在Windows桌面系统完成的),一般有专门负责上线的人员 ...
- 1.spring源码-BeanPostProcessor后置处理器
1.BeanPostProcessor接口的介绍: BeanPostProcessor是一个接口,其中有两个方法,postProcessBeforeInitialization和postProcess ...
- batchsize用法 以及实现前向运算的矩阵乘法方式
batchsize用法 以及实现前向运算的矩阵乘法方式 待办 使用batchsize可以把矩阵缩小,采用矩阵乘法的形式可以一次计算多个经过神经网络的结果,然后通过交叉熵进行计算总的损失得到结果. 所以 ...
- Allegro 串扰仿真
利用于博士的那个电路板,看一下cadence软件的串扰仿真,我们选取3跟信号线,见下图. U6.N3-R36-U7.56 U6.P3-R36-U7.54 U6.P2-R36-U7.53 下面启动sig ...
- Python3爬虫爬取淘宝商品数据
这次的主要的目的是从淘宝的搜索页面获取商品的信息.其实分析页面找到信息很容易,页面信息的存放都是以静态的方式直接嵌套的页面上的,很容易找到.主要困难是将信息从HTML源码中剥离出来,数据和网页源码结合 ...
- HTMLinput标签
<input> 标签用于搜集用户信息. 常用的属性: type指定输入项的类型 name定义 input 元素的名称. id给输入项取一个名字,方便后期找到和操作 type指定输入项的类型 ...
- rancher三节点k8s集群部署例子
rancher三节点k8s集群部署例子 待办 https://rorschachchan.github.io/2019/07/25/使用Rancher2-1部署k8s/
- 动态数组、allocator 类
12.2 动态数组 12.2.1 new 和数组 1.分配一个动态数组即是在分配一个new对象时在类型名之后加一对方括号,用来存放数组大小,该数可以是任意表达式.也可以是0,只需是整形.无需是常量.数 ...
- xv6 trapframe定义的位置
在x86.h的最下面,真是把我找吐了,MD