3、git 笔记冲突解决模板

  1. 1、情况一:云端正确,本地端错误
  2. 2 本地和远程文件冲突(项目),放弃本地,直接拉取

1、情况一:云端正确,本地端错误

问题 正确做法
文件名带 ~(如 .md~ ❌ 不要操作它!这是编辑器临时文件,Git 不认识。只处理 .md 原文件
路径有空格或中文 ✅ 用英文双引号包裹路径 " ",Bash 就能识别
不确定远程是否最新 ✅ 先在另一台设备上确认已成功 Push,再在这台执行 --theirs
想保留本地内容? 改用 git checkout --ours -- "file"(相反操作)
# 1️⃣ 查看当前冲突文件列表(确认真实文件名) 
git status 
# 2️⃣ 对每个冲突文件,用远程版本覆盖本地(注意:路径要准确,不要加 ~ 或其他符号) 
git checkout --theirs -- "路径/到/你的/笔记.md" 
# 示例(按你的情况): 
git checkout --theirs -- "我的工作量/2026年度/3月份/2026-03-17.md" git checkout --theirs -- "我的生活/2026年度/3月份/2026-03-17.md" 
# 3️⃣ 标记这些文件为“已解决” 
git add "路径/到/你的/笔记.md" 
# 或一次性添加所有已修复文件: 
git add . 
# 4️⃣ 提交合并结果 
git commit -m "Resolve conflict: accept remote version" 
# 5️⃣ (通常不需要,但若 Obsidian 要求)推送 
git push

2 本地和远程文件冲突(项目),放弃本地,直接拉取

# 1. 先从远程拉取最新的索引信息(不合并)
git fetch --all

# 2. 将本地分支强制重置到远程对应的分支(假设你当前在 main 或 master)
# 如果你的分支名是 main,就写 origin/main
git reset --hard origin/$(git branch --show-current)

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 kipleyarch@gmail.com
Obsidian