推送
Push
中级通用推送(Push)是把本地分支上的提交发送到远程仓库,并更新对应的远程分支。它解决的是本地成果如何交给同事或协作平台的问题;你在电脑上提交了登录页,推送后团队才能从远程仓库获取这些提交。
你可能会说:「我已经在自己电脑上提交了改动,想让同事也能从项目仓库拿到这版代码。」
动手看看把登录页推给团队
1
登录页的基础版本已经在远程仓库里,本地和远程分支都指向同一个提交。
要点推送时,Git 实际在做什么?
- 1
发送提交并更新远程分支
你推送的是本地分支上的提交,不是把当前文件夹原样上传。Git 会把远程仓库缺少的相关对象传过去,再尝试更新目标分支的位置,所以未提交的改动不会随这次推送出现。
- 2
先确认要推到哪个分支
一个项目可能连着多个远程仓库,也有多个分支。比如你在本地做结算页,想让同事审查,就可以把本地功能分支推到团队仓库的同名分支;先看清目标,才能避免更新错地方。
- 3
远程有新提交时先处理差异
如果别人已经更新了目标远程分支,你直接推送可能会被拒绝,因为这次更新会让远程已有的提交从分支历史中消失。先获取远程变化,合并或变基并处理冲突,再推送合适的结果。
容易混淆的地方
提交是把改动记录进本地仓库;推送是把这些提交送到远程仓库,所以只提交还不能让同事从远程拿到代码。拉取方向相反,是把远程变化带回本地。推送也不等于部署上线:代码到了团队仓库,网站是否更新还取决于后续的构建和部署流程。
什么时候用
适合用
- 你和 AI Agent 完成登录页、检查并提交代码后,把功能分支推到团队仓库,方便发起合并请求。
- 你在另一台电脑上也要继续开发,把当前已提交的进度推到远程仓库,之后再从那里获取。
- 你修复了后台报表的错误并提交,希望持续集成针对远程分支上的新提交运行检查。
不适合用
- 你只想看看同事刚改了什么,不需要把本地成果发出去;先获取或拉取远程变化。
- 你还在修改 App 页面,想暂时保存未完成的文件;先在本地提交,或用贮藏暂存,不用推送。
- 你希望网站用户立刻看到新版页面;先确认部署流程。仅把代码推到远程仓库不一定会更新线上网站。
练一练选一个答案,看看解释
你和 AI Agent 在本地提交了设置页改动,准备推到团队仓库,但 Git 提示目标远程分支已有你本地没有的提交。这时怎么处理?
让 AI 帮你做复制给 AI Agent 直接用
请先检查当前 Git 分支、未提交的改动,以及它与目标远程分支的差异。确认这次设置页改动已正确提交后,将功能分支推送到团队远程仓库;如果远程有新提交或目标不明确,先说明情况,别替我强制推送。