GitHub 和远程同步:从本地仓库到开源世界,以及 AI Agent 怎么直接操作 GitHub
上一篇讲了 Git 本地操作和 Worktree。这一篇把视线移到「Git 之外」——GitHub 这个全球最大的代码托管平台。覆盖:什么是开源 / 怎么创建 GitHub repo / SSH key 怎么配 / 怎么把本地仓库推上去 / GitHub CLI(gh)怎么在终端替代网页 / GitHub MCP 服务怎么让 Claude Code 直接读 issue / 创建 PR。
Long-form essays on engineering, AI, and craft.
上一篇讲了 Git 本地操作和 Worktree。这一篇把视线移到「Git 之外」——GitHub 这个全球最大的代码托管平台。覆盖:什么是开源 / 怎么创建 GitHub repo / SSH key 怎么配 / 怎么把本地仓库推上去 / GitHub CLI(gh)怎么在终端替代网页 / GitHub MCP 服务怎么让 Claude Code 直接读 issue / 创建 PR。
打开浏览器、输入网址、回车,页面就出现了——但这背后到底发生了什么?拆开 DNS 解析、TCP 三次握手、TLS 握手、HTTP 请求/响应、浏览器渲染 6 个关键阶段,建立对 Web 网络请求的完整心智模型。
为什么 JavaScript 一开始没有模块系统?为什么一段 `<script>` 改个变量名就把整个网站搞炸?从 IIFE、CommonJS、AMD/UMD 一路进化到 ES Modules(import / export),这一篇把模块化的历史和 ES Modules 的完整语法、它和 CommonJS 的本质差异、Tree Shaking 为什么是 ESM 带来的最大胜利、模块解析机制一次性讲清楚。
电脑里那些东西到底是怎么组织的?为什么有时路径前面有 C: 有时是 /?相对路径里的 ./ 和 ../ 是什么意思?什么是代码文件?VSCode 为什么是程序员的最爱?这一篇把文件系统、路径、扩展名、和代码编辑器这几件事一次性讲清楚。
上一篇讲了 ES Modules 和模块化。源码能 import 了,但浏览器还是不能直接跑 .ts / .vue / .jsx / Sass——这一篇讲前端工具链。覆盖:为什么需要构建工具 / npm 是什么 / package.json 核心结构 / 用 npm install 安装依赖 / npm run 脚本的本质 / 构建工具演化(Grunt → Gulp → webpack → Vite)/ Vite 上手 / 源码 vs dist 构建产物 / 用 Git 管理现代前端项目。
上一篇讲了 React 是什么。这一篇深入讲 React 的「数据驱动」:State 是什么 / 什么数据应该放 state / 单向数据流 / setState 后 React 内部发生了什么(reconciliation + commit)/ 父子组件通信(props + 回调)/ 跨组件通信(Context API)/ 一个完整的 TodoList 实战例子。
上一篇文章讲了 npm + Vite + 构建产物。这一篇回答一个朴素的问题:React 到底是什么?覆盖:为什么需要 UI 框架 / React 的本质是 npm 包 / 浏览器只认 HTML CSS JS / React 编译后的真实产物 / React vs Vue 本质相同哲学不同 / 组件树:App 是最大的组件 / 写一个最小可用的 React 组件。
代码写完了,怎么让它「全世界的浏览器都能访问」?这一篇把服务器部署的最短链路讲清楚:用 SSH + Git 把代码拉到服务器、文件目录权限怎么配(chmod 755 / chown www-data)、Nginx 怎么反向代理你的应用 + serve 静态资源、HTTPS 怎么用 Let's Encrypt 一键签证书、最后用 GitHub Actions 实现 push 即部署。
那个黑窗口到底是什么?为什么 AI 工具(Claude Code / Codex / Hermes)几乎都靠终端指挥电脑?这一篇把终端、Shell、家目录、20 个最常用指令、VSCode 集成终端、以及 Claude Code 实战里最高频的命令行用法一次性讲清楚。读完之后你能看懂 AI Agent 在跑什么,也能自己跑最基础的几条命令。
design-draft 的 PRD / Spec 模板,帮助把模糊想法变成可协作、可验证、可回滚的工程对象。