如何用Git将本地代码推送到Azure DevOps非主分支及指定目录
Azure DevOps Git分支推送相关问题解答
1. 如何推送本地代码到master以外的远程分支(比如dev)
流程和推送到master逻辑一致,分两种场景处理:
场景1:本地还未创建对应dev分支
先在本地创建并切换到dev分支:
git checkout -b dev
接着执行你已经熟悉的代码暂存、提交操作:
git add . git commit -m "提交说明:比如完成dev分支功能开发"
最后推送到Azure DevOps的远程dev分支,把原命令里的master替换成dev即可:
git push -u origin dev
-u参数会帮你关联本地dev分支和远程的origin/dev,后续再推送只需输入git push;如果远程还没有dev分支,这个命令会自动在Azure DevOps上创建该分支。
场景2:远程已存在dev分支
先拉取远程dev分支到本地并切换过去:
git checkout dev git pull origin dev
之后同样执行暂存、提交操作,再用git push origin dev(或直接git push,若已关联分支)推送即可。
2. 关于dev分支下sandbox文件夹的疑问
首先明确:Git是基于整个仓库的版本控制系统,无法直接通过某个文件夹的HTTPS链接把项目添加到该文件夹。Git核心是跟踪仓库整体的文件变更,而非单独管理单个文件夹的推送路径。
如果你的目标是把本地项目内容放到远程dev分支的sandbox文件夹下,有两种实用方法:
- 方法一:在本地dev分支中新建
sandbox文件夹,将项目文件全部移入该文件夹,执行git add .、git commit后,用git push origin dev推送,远程dev分支就会出现包含你项目内容的sandbox文件夹。 - 方法二:如果远程dev分支已存在sandbox文件夹,先拉取远程dev分支到本地,将你的项目文件复制到本地的sandbox文件夹中,再执行提交和推送操作即可。
另外你问到的git push -u origin master分支替换问题:完全正确!要推送到dev分支的话,把命令里的master换成dev,也就是git push -u origin dev,这样代码就会推送到Azure DevOps的dev分支,而非master分支。
内容的提问来源于stack exchange,提问作者psygo
相关产品推荐
相关产品推荐

