GitHub如何手动同步上游更改

手动同步更改

GitHub Classroom 的同步更改功能 bug 较多。如果你遇到了无法同步最新更改的问题,可以尝试下面的方法解决:

第零步:暂存或提交当前更改

在开始之前请务必先使用 git stash 暂存当前未提交的更改,或者使用 git commit 直接提交,避免出现问题 如果暂存,在完成之后你可以使用 git stash pop 恢复

第一步:添加远程仓库

如果你已经添加过仓库,请跳过这一步直接进入第二步;否则在本地仓库运行下面的命令:

arduino 复制代码
git remote add template https://github.com/RUCICS/ShellLab-2025.git

这条命令将上游仓库(即原始作业仓库)添加为一个新的远程仓库,并将其命名为"template"。这样我们就建立了与上游仓库的连接,方便后续获取最新更改。

第二步:获取上游仓库的更新

arduino 复制代码
git fetch template main

该命令从上游仓库的main分支获取最新的代码更新。需要注意的是,这一步只是将更新下载到本地,但还没有将这些更改应用到你的代码中。

第三步:将更新整合到本地代码

arduino 复制代码
git merge template/main

这条命令会将你的本地修改建立在上游仓库最新代码的基础之上。它会先暂存你的本地修改,然后应用上游的更新,最后将你的修改重新应用到更新后的代码上。如果过程中发生冲突,你需要手动解决这些冲突。

如何解决冲突

当执行 git merge template/main 时遇到冲突,Git 会暂停 merge 过程并提示你解决冲突。

以下是解决冲突的具体步骤:

  1. 当发生冲突时,Git 会在终端显示类似这样的提示:
xml 复制代码
CONFLICT (content): Merge conflict in <文件名>
Auto-merging <文件名>
  1. 打开发生冲突的文件,你会看到类似这样的标记:
markdown 复制代码
<<<<<<< HEAD
你的代码
=======
上游仓库的代码
>>>>>>> template/main
  1. 解决冲突:
  • <<<<<<< HEAD======= 之间的内容是你的修改
  • =======>>>>>>> template/main 之间的内容是上游仓库的代码
  • 你需要决定保留哪些代码,删除哪些代码,或者如何合并它们
  • 删除所有的冲突标记(<<<<<<<=======>>>>>>>
  1. 解决完冲突后,使用以下命令将文件标记为已解决:
csharp 复制代码
git add <发生冲突的文件名>
  1. 继续 merge 过程:
kotlin 复制代码
git merge --continue

如果还有其他文件的冲突,重复步骤 3-5,直到所有冲突都解决完毕。

如果在解决冲突过程中遇到问题,随时可以使用以下命令取消 merge:

sql 复制代码
git merge --abort

这会将代码恢复到执行 merge 之前的状态,你可以重新开始。

提示:解决冲突时,建议先仔细阅读冲突的代码,理解两边的修改意图,再决定如何处理。

相关推荐
吠品8 小时前
命令行揭示SSL证书真相
https·github·ssl
、BeYourself9 小时前
解决git@github.com: Permission denied (publickey)
github
十步杀一人_千里不留行11 小时前
Git提交前ESLint校验实践(Husky + lint-staged)
git·github
朱昆鹏11 小时前
开源 Claude Code + Codex + 面板 的未来vibecoding平台
前端·后端·github
猫头虎12 小时前
OpenClaw-VSCode:在 VS Code 里玩转 OpenClaw,远程管理+SSH 双剑合璧
ide·vscode·开源·ssh·github·aigc·ai编程
你听得到1114 小时前
我彻底搞懂了 SSE,原来流式响应效果还能这么玩的?(附 JS/Dart 双端实战)
前端·面试·github
宁雨桥14 小时前
Gitee迁移GitHub开源全攻略:一键配置自动同步,仅需维护单一仓库
gitee·开源·github
掘金安东尼15 小时前
⏰前端周刊第 452 期(2026年2月2日-2月8日)
前端·javascript·github
CoderJia程序员甲15 小时前
GitHub 热榜项目 - 日榜(2026-02-08)
git·ai·开源·llm·github
猫头虎15 小时前
手动部署开源OpenClaw汉化中文版过程中常见问题排查手册
人工智能·langchain·开源·github·aigc·agi·openclaw