读《程序是如何跑起来的》
前言
操作系统将底层的很多抽象的原理封装成面向对象的、方便大众理解和操作的图形界面、这大大提高了计算机操作的便利性,然而,享受方便的同事也付出了代价,对于底层的了解越来越少,只会使用工具,却无法明白工具的底层机制就无法创造出更好的工具。
第1章 对程序员来说CPU是什么
热身问题
问:
- 程序是什么?
- 程序是由什么组成的?
- 什么是机器语言?
- 正在运行的程序存储在什么位置?
- 什么是内存地址?
- 计算机的构成元件中,负责程序的解释和运行的是哪个?
操作系统将底层的很多抽象的原理封装成面向对象的、方便大众理解和操作的图形界面、这大大提高了计算机操作的便利性,然而,享受方便的同事也付出了代价,对于底层的了解越来越少,只会使用工具,却无法明白工具的底层机制就无法创造出更好的工具。
问:
时间 | 更新备注 |
---|---|
2018-04-26 | 新建文章 |
2018-09-09 | 添加git账号切换 |
2019-01-18 | 更新链接 |
2020-08-09 | 添加GitFlow |
git-flight-rules/README_zh-CN.md at master · k88hudson/git-flight-rules
时间 | 更新备注 |
---|---|
2018-03-10 | 新建文章 |
2018-06-08 | 整理补充 |
2019-01-18 | 更新链接 |
暂存未跟踪或忽略的文件
默认情况下,git stash会缓存下列文件:
stash就是存储的意思,比如你在做一件事情的同时,突然又有了别的工作。就把现在的工作存储下来。并不提交到主线任务。而且可以顺利恢复上次的进度。
时间 | 更新备注 |
---|---|
2018-03-08 | 新建文章 |
2018-06-09 | 整理补充 |
2019-01-18 | 更新链接 |
2020-08-09 | 补充 |
Integrates the changes from the chosen branch
into your working copy. Your current HEAD branch
will be rebased onto the integrated revisions.
1 | git-rebase - Reapply commits on top of another base tip |
即将当前分支的提交放在其他分支的最新的提交后。但是这个reapply
并非简单地将提交剪切复制到,Rebase 实际上就是取出一系列的提交记录,“复制”它们,然后在另外一个地方逐个的放下去。
时间 | 更新备注 |
---|---|
2018-03-02 | 新建文章 |
2018-06-10 | 添加和revert&checkout的对比 |
2019-01-18 | 更新链接 |
在提交层面上,reset将一个分支的末端指向另一个提交。这可以用来移除当前分支的一些提交。比如,下面这两条命令让 hotfix 分支向后回退了两个提交。
1 | git checkout hotfix |
时间 | 更新备注 |
---|---|
2018-03-01 | 新建文章 |
2018-06-08 | 整理补充 |
2019-01-18 | 更新链接 |
2020-08-09 | 补充 |
几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。 在很多版本控制系统中,这是一个略微低效的过程——常常需要完全创建一个源代码目录的副本。对于大项目来说,这样的过程会耗费很多时间。
Git
处理分支的方式可谓是难以置信的轻量,创建新分支这一操作几乎能在瞬间完成,并且在不同分支之间的切换操作也是一样便捷。 与许多其它版本控制系统不同, 理解和精通Git
分支,你便会意识到Git
是如此的强大而又独特,并且从此真正改变你的开发方式。
那么,
Git
又是怎么知道当前在哪一个分支上呢? 也很简单,它有一个名为HEAD
的特殊指针。 请注意它和许多其它版本控制系统(如Subversion
或CVS
)里的HEAD
概念完全不同。 在Git
中,它是一个指针,指向当前所在的本地分支(译注:将HEAD
想象为当前分支的别名)。 在本例中,你仍然在master
分支上。 因为git branch
命令仅仅 创建 一个新分支,并不会自动切换到新分支中去。
时间 | 更新备注 |
---|---|
2018-02-28 | 新建文章 |
2018-06-06 | 添加checkout命令 |
2019-01-18 | 更新链接 |
上篇介绍
Git
的流程涉及了很多命令,这篇将对介绍Git
工作流的命令进行梳理,希望增加对Git
的理解,方便大家的使用。
时间 | 更新备注 |
---|---|
2018-02-28 | 新建文章 |
2018-06-08 | 整理补充 |
2019-01-18 | 更新链接 |
时间 | 更新备注 |
---|---|
2018-02-27 | 新建文章 |
2018-06-07 | 整理补充 |
2019-01-18 | 更新链接 |
Git
很多开发团队在使用,但是Git
很多强大的特性不一定都很了解,基于以前的使用以及参考Git
的博客,将用一系列文章介绍Git
, 从原理到常用命令,希望能更好的使用Git
, 提高团队开发效率。