Update app.json to change openBehavior to file:README; enhance git.md with structured sections and additional installation instructions; create new OMOOSPACE.md file
This commit is contained in:
2
.obsidian/app.json
vendored
2
.obsidian/app.json
vendored
@@ -15,7 +15,7 @@
|
|||||||
"livePreview": true,
|
"livePreview": true,
|
||||||
"showIndentGuide": false,
|
"showIndentGuide": false,
|
||||||
"alwaysUpdateLinks": true,
|
"alwaysUpdateLinks": true,
|
||||||
"openBehavior": "file:OMOOSPACE",
|
"openBehavior": "file:README",
|
||||||
"newFileLocation": "folder",
|
"newFileLocation": "folder",
|
||||||
"newFileFolderPath": "notes",
|
"newFileFolderPath": "notes",
|
||||||
"newLinkFormat": "relative"
|
"newLinkFormat": "relative"
|
||||||
|
|||||||
0
OMOOSPACE.md
Normal file
0
OMOOSPACE.md
Normal file
36
notes/git.md
36
notes/git.md
@@ -1,3 +1,5 @@
|
|||||||
|
# Git 基操
|
||||||
|
|
||||||
## 工作流程
|
## 工作流程
|
||||||
|
|
||||||
我们选择 Git 作为版本管理的工具(确保已经安装 Git 和 VS Code,详见[starter](starter.md)),工作流程主要是以下 4 点:
|
我们选择 Git 作为版本管理的工具(确保已经安装 Git 和 VS Code,详见[starter](starter.md)),工作流程主要是以下 4 点:
|
||||||
@@ -12,14 +14,11 @@ flowchart LR
|
|||||||
文件改动 -- 提交 --> 个人分支 -- 合并请求 --> 主分支
|
文件改动 -- 提交 --> 个人分支 -- 合并请求 --> 主分支
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
通过上述流程,个人的本地改动被,有选择性地、有监督地被同步到项目主分支。
|
通过上述流程,个人的本地改动被,有选择性地、有监督地被同步到项目主分支。
|
||||||
|
|
||||||
有效避免同步盘方案下,高频改动文件的冲突和 AI 无法参与的尴尬。这样,即释放了本地创作的限制,又规范了线上协作的管理,还解决了私有盘无法分享的问题。
|
有效避免同步盘方案下,高频改动文件的冲突和 AI 无法参与的尴尬。这样,即释放了本地创作的限制,又规范了线上协作的管理,还解决了私有盘无法分享的问题。接下来,我将详细描述操作步骤
|
||||||
|
|
||||||
接下来,我将详细描述操作步骤。
|
### 在自己的「个人分支」工作
|
||||||
|
|
||||||
## 在自己的「个人分支」工作
|
|
||||||
|
|
||||||
**1. 下载仓库(Repository)**
|
**1. 下载仓库(Repository)**
|
||||||
|
|
||||||
@@ -32,7 +31,7 @@ flowchart LR
|
|||||||
|
|
||||||
**2. 创建自己的个人分支**
|
**2. 创建自己的个人分支**
|
||||||
|
|
||||||
点左下角的`main`,点击`Create new branch...`,然后输入分支名`[your-name]/[do-something]`(比如`manan/dev`)
|
点左下角的`main`,点击 Create new branch...,然后输入分支名`[your-name]/[do-something]`(比如`manan/dev`)
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@@ -45,7 +44,7 @@ flowchart LR
|
|||||||
> 或 Bash 执行 `git push -u origin [branch-name]`
|
> 或 Bash 执行 `git push -u origin [branch-name]`
|
||||||
|
|
||||||
|
|
||||||
## 通过「提交」来确认改动到「个人分支」
|
### 通过「提交」来确认改动到「个人分支」
|
||||||
|
|
||||||
|
|
||||||
**1. 有选择性地添加(Add)到暂存改动**
|
**1. 有选择性地添加(Add)到暂存改动**
|
||||||
@@ -72,9 +71,9 @@ flowchart LR
|
|||||||
|
|
||||||
> 或 Bash 执行 `git push`
|
> 或 Bash 执行 `git push`
|
||||||
|
|
||||||
这是工作中最常见的循环:一边工作,一边适时地 add > commit > push
|
这步是工作中最常用的:一边工作,一边适时地 Add > Commit > Push
|
||||||
|
|
||||||
## 接收其他人在「主分支」的改动
|
### 接收其他人在「主分支」的改动
|
||||||
|
|
||||||
当你在自己分支工作的时候,其他人也在不断更新「主分支」`main`。有时需要对齐一下,拉取(Pull)并合并(Merge)来自`main`的改动到你自己的分支。
|
当你在自己分支工作的时候,其他人也在不断更新「主分支」`main`。有时需要对齐一下,拉取(Pull)并合并(Merge)来自`main`的改动到你自己的分支。
|
||||||
|
|
||||||
@@ -86,9 +85,9 @@ flowchart LR
|
|||||||
|
|
||||||
如果冲突,会进入`([branch-name]|MERGING)` 状态,详见 [解决冲突](#解决合并冲突)
|
如果冲突,会进入`([branch-name]|MERGING)` 状态,详见 [解决冲突](#解决合并冲突)
|
||||||
|
|
||||||
## 通过「合并请求」来确认改动到「主分支」
|
### 通过「合并请求」来确认改动到「主分支」
|
||||||
|
|
||||||
合并请求(Pull Request,简称 PR)就是申请「个人分支」改动并入「主分支」
|
合并请求(Pull Request,PR)就是「个人分支」合并入「主分支」的申请
|
||||||
|
|
||||||
浏览器访问仓库主页,切换到「个人分支」,点击 New Pull Request 按钮(3)
|
浏览器访问仓库主页,切换到「个人分支」,点击 New Pull Request 按钮(3)
|
||||||
|
|
||||||
@@ -104,9 +103,20 @@ PR 会加入队列,等待审核通过。通过后就会合并到`main`啦。
|
|||||||
|
|
||||||
> 注意,如果在提 PR 后,如果你又更新了你的分支,不必再次提 PR
|
> 注意,如果在提 PR 后,如果你又更新了你的分支,不必再次提 PR
|
||||||
|
|
||||||
> 注意,在提 PR 前,一定要在本地执行[同步「主分支」的改动](#同步「主分支」的改动)(并 push 到了远程)
|
> 注意,在提 PR 前,一定要在本地执行[同步「主分支」的改动](#同步「主分支」的改动)(且 push 到了远程「个人分支」)
|
||||||
|
|
||||||
## 解决合并冲突
|
|
||||||
|
|
||||||
|
## 一些小问题
|
||||||
|
### 多设备编辑同一分支
|
||||||
|
|
||||||
|
首先不推荐这样做,但是为了一个设备,新加分支也很没必要。但如果由一个人操作这些设备,比如个人的 macbook、iphone 共同编辑,只要严格遵守下面两条:
|
||||||
|
- 在 A 设备编辑,Commit 后立即 Push,以保证远程仓库及时更新
|
||||||
|
- 切换到 B 设备,在编辑前立即 Pull,以保证 B 设备及时更新
|
||||||
|
|
||||||
|
> 为什么不用 icloud?因为这样可以实现部分同步,能适应复杂的文件夹,打开也更快。
|
||||||
|
|
||||||
|
### 解决合并冲突
|
||||||
|
|
||||||
解决完冲突后,继续
|
解决完冲突后,继续
|
||||||
|
|
||||||
|
|||||||
@@ -1,28 +1,56 @@
|
|||||||
1. 安装 Git
|
# 必装软件/工具
|
||||||
|
|
||||||
|
## 安装 Git
|
||||||
|
|
||||||
|
Git 是版本管理工具,任何数字工作都离不开它。
|
||||||
|
|
||||||
打开 windows powershell,运行
|
打开 windows powershell,运行
|
||||||
|
|
||||||
```powershell
|
```powershell
|
||||||
winget install Git.Git
|
winget install Git.Git
|
||||||
```
|
```
|
||||||
|
|
||||||
安装完毕后,所有终端我们都选择 Git Bash
|
安装时中注意下面两点,其他默认下一步
|
||||||
|
- 勾选添加 Git Bash 到终端(Windows Terminal)
|
||||||
|
- 选择`main`作为默认主分支名(默认是`master`)
|
||||||
|
|
||||||
|
|
||||||
|
安装完毕后,打开终端(Windows Terminal),点击 v 按钮,点击设置。默认配置文件选择 Git Bash,保存。重启终端,后面命令行的操作都通过终端的 Git Bash 完成
|
||||||
|
|
||||||
设置本设备 git 的身份信息
|
设置本设备 git 的身份信息
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git config --global user.name [your-name]
|
git config --global user.name [your-name]
|
||||||
git config --global user.email [your-email]
|
git config --global user.email [your-email]
|
||||||
```
|
```
|
||||||
|
|
||||||
初始化 lfs 以获取对大文件的支持
|
初始化 lfs 以获取对大文件的支持
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git lfs install
|
git lfs install
|
||||||
```
|
```
|
||||||
|
|
||||||
2. 安装 VS Code
|
## 安装 VS Code
|
||||||
|
|
||||||
|
VS Code 是最基础的 IDE,AI 编程 IDE 都基于它的源码,例如Cursor。
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
winget install vscode
|
winget install vscode
|
||||||
```
|
```
|
||||||
|
|
||||||
4. 安装 Volta
|
## 安装包管理器
|
||||||
|
|
||||||
|
AI Agent 实现功能就是靠的是「工具超市」提供小工具,而包管理器(Package Manager)负责从「工具超市」上下载、更新、管理它们。Agent 会由于实践方式不统一,导致设备上存在大量的乱装的东西。
|
||||||
|
|
||||||
|
目前世界上最大的两个「工具超市」
|
||||||
|
- Javascript 的 npm
|
||||||
|
- Python 的 pypi
|
||||||
|
|
||||||
|
给它们装最好的包管理器吧
|
||||||
|
### Volta
|
||||||
|
|
||||||
|
管理 Node.js 的工具,它可以比 npm 原生更好的管理由 Javascript 写的工具。
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
winget install Volta.Volta
|
winget install Volta.Volta
|
||||||
```
|
```
|
||||||
@@ -33,11 +61,24 @@ winget install Volta.Volta
|
|||||||
volta install node
|
volta install node
|
||||||
```
|
```
|
||||||
|
|
||||||
5. 安装 claude code
|
### Uv
|
||||||
|
|
||||||
|
极速 Python 包和项目管理工具,不管是用 Python 做开发还是使用 Python 写的工具都离不开它
|
||||||
|
|
||||||
|
```bash
|
||||||
|
winget install --id=astral-sh.uv -e
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## 安装 claude code
|
||||||
|
|
||||||
|
Claude code 不用介绍了,建议通过 [Volta](#Volta) 安装 Claude Code CLI
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
volta install @anthropic-ai/claude-code
|
volta install @anthropic-ai/claude-code
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
(可选)安装 cc-switch
|
(可选)安装 cc-switch
|
||||||
https://github.com/farion1231/cc-switch/releases
|
https://github.com/farion1231/cc-switch/releases
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user