如何仅在本地Git分支提交代码,待完成后再推送至远程分支?
解决Git本地功能分支暂存提交、完成后再推远程的问题
首先明确:Git提示git push --set-upstream <remote branch>,只是因为你本地的功能分支还没和远程分支建立关联,但你完全可以忽略这个提示,继续在本地提交代码,完全不会影响本地提交的保存。
本地开发阶段(仅保留提交在本地)
- 切换到功能分支后,正常开发即可,每次提交执行:
所有提交都会存在本地的功能分支里,只要不执行git add . git commit -m "提交说明,比如:完成用户列表页面开发"git push,就不会同步到远程Bitbucket,完全符合你“暂存本地”的需求。
开发完成后推送远程分支
当功能开发完毕,需要推送到远程时,按以下步骤操作:
- (可选但推荐)先拉取远程主分支最新代码合并,避免冲突:
有冲突的话解决后提交即可。git checkout main git pull origin main git checkout 你的功能分支名 git merge main - 第一次推送功能分支到远程,需要建立本地与远程分支的关联,执行:
这条命令会把本地所有提交推送到远程,同时建立关联,之后再推送只要执行git push --set-upstream origin 你的功能分支名git push就可以了。
补充说明
- 如果只是临时测试推送但不想建立长期关联,可以用:
但这种方式每次推送都要写完整命令,不如建立关联方便,一般不推荐。git push origin 你的功能分支名:远程分支名 - 核心逻辑就是:只要不执行
git push相关命令,本地提交就只会留在本地仓库,不会同步到远程。
内容的提问来源于stack exchange,提问作者techi
相关产品推荐
相关产品推荐

