Git 完整流程:从暂存到推送

当你本地有未完成的修改,需要先同步远程最新代码,再将自己的修改推送到远程时,完整流程如下(适用于多人协作场景):

1. 暂存本地未提交的修改(git stash

当你本地有修改但还没提交(工作区 / 暂存区有内容),直接拉取远程代码可能冲突,先用 git stash 把本地修改临时存起来,让工作区变 "干净":

bash 复制代码
git stash

执行后,本地修改会被暂存到 Git 的 "stash 栈" 中,工作区回到上次提交的状态。

2. 拉取远程最新代码(git pull

工作区干净后,拉取远程仓库对应分支的最新代码,同步到本地:

bash 复制代码
git pull origin 分支名  # 例如 git pull origin main

3. 恢复本地暂存的修改(git stash pop

拉取完成后,用 git stash pop 把之前暂存的本地修改恢复到工作区:

bash 复制代码
git stash pop

此时,你的本地修改会和远程最新代码合并。

4. 处理可能的冲突(若有)

如果恢复后出现冲突(文件中会有 <<<<<<< HEAD=======>>>>>>> stash 等标记),说明你的修改和远程拉取的代码有重叠:

  • 手动打开冲突文件,找到冲突位置,保留需要的代码(删除冲突标记和不需要的内容)。
  • 解决完所有冲突后,用 git add 冲突文件名 标记为 "已解决":

5. 将修改添加到暂存区(git add

确认所有修改(包括恢复的本地修改和冲突解决后的内容)都正确后,将其添加到暂存区:

bash 复制代码
git add .  # 添加当前目录所有修改(推荐)
# 或指定文件:git add 文件名1 文件名2

6. 提交到本地仓库(git commit

git commit 把暂存区的内容提交到本地仓库,填写清晰的提交信息(说明本次修改内容):

bash 复制代码
git commit -m "feat: 新增用户登录功能;fix: 修复首页加载缓慢问题"

7. 推送到远程仓库(git push

最后,将本地提交推送到远程仓库的对应分支,完成上传:

bash 复制代码
git push origin 分支名  # 例如 git push origin main

如果分支已关联,可简化为 git push

流程总结

整个过程的核心逻辑是:暂存本地修改 → 同步远程最新代码 → 恢复本地修改 → 解决冲突(若有) → 提交并推送

这样既能保证你的代码基于远程最新版本开发,又能避免本地修改丢失,是多人协作中同步代码的标准流程。

相关推荐
vibecoding日记3 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记3 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger4 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP5 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
红豆子不相思5 天前
Tomcat 环境搭建与集群实战
服务器·git·tomcat
杰哥技术分享5 天前
Git 仓库迁移技术文档:从 CODING.net 迁移至腾讯云 CNB
git
梅孔立5 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible
qq_426003966 天前
git切换当前分支到远程分支
git
ON10N6 天前
100% 纯 Vibe Coding,我是怎么用 AI 撸出一个 VS Code 插件的
git·ai编程·visual studio code