当前位置:   article > 正文

git 常用命令 Push_git push命令

git push命令

本地分支关联远程分支

git push --set-upstream origin release                   将本地分支与远程同名分支相关联
git push -u origin release                               (git push --set-upstream origin release 缩写版本)

git branch --set-upstream-to=origin/release2 release3    本地release3分支和远程origin/release2分支建立关联
git push origin HEAD:release2                            分支名不同名时push代码的方式

1. .git/config配置文件会追加如下关联关系,故后续可以直接执行 git push
	[branch "release"]
		remote = origin
		merge = refs/heads/release
2. .git\refs\remotes\origin 里会追加文件 release
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

参考:git push -u origin master 与git push --set-upstream origin master

本地分支推送到远程分支

git push origin <本地分支名>:<远程分支名>    将本地当前分支 推送到 远程指定分支上
git push origin <本地分支名>                将本地当前分支 推送到 与本地当前分支同名的远程分支上  	
git push                                   将本地当前分支 推送到 与本地当前分支同名的远程分支上(需先关联远程分支)

git push origin release
1. 本地release和远程release满足fast-forward则可以合入
2. 本地release和远程release不满足fast-forward则被报错拦截
3. .git/config中未追加关联关系也可执行此操作
4. .git\refs\remotes\origin 里会追加文件 release
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
git push origin release 和 git push 区别

1. 当只关联一个远程仓库时,这两个命令没什么区别
2. 当关联了两个多个仓库、有多个分支时,git push可能会报错,因为它不知道要上传代码到哪里去,
   而 git push origin master 指定仓库和分支,就不会报错
  • 1
  • 2
  • 3
  • 4
  • 5

场景1:一套向 远程仓库 发布 本地仓库变更 的标准流程

1. git checkout dev 			            	1. 切到本地dev分支;
2. git fetch origin main 			        	2. 通过 git fetch 同步远程仓库main分支在本地的副本,确保本地副本是最新的
3. git rebase -i origin/main 			    	3. 通过 git rebase 操作将分支的修改变基到远程main分支的提交历史之上;(-i 表可交互的rebase操作,同时也是在分享给其他团队成员之前,清理本地commit记录的好机会)
4. # Squash commits, fix up commit messages etc. 				
5. git push origin dev				            5. git push命令将本地dev分支发送远程仓库(由于已确保本地的main分支是最新版本的,因此push操作是能够快速前进的,此时git不会阻止push操作)
  • 1
  • 2
  • 3
  • 4
  • 5

场景2:–amend 提交

1. make changes to a repo and git add 
2. git commit --amend                         amend提交通常会修正并更新commit message,或者增加新的修改
3. update the existing commit message 
4. git push --force origin main               必须force push才可以,一个commit被maend之后,git认为修正之后的commit与远程仓库的commit发生了偏离,git push会直接失败
   git push -f
  • 1
  • 2
  • 3
  • 4
  • 5

场景3:本地分支远程分支恰巧重名时 如何push?

远程仓库有test6分支,本地有test6分支,他们没有关联关系,恰巧重名时
1. git checkout test6
2. date >> 1.txt && git add . && git commit -m "msg"
3. git push origin test6

1. 满足fast-forward则可以合入
2. 不满足fast-forward则被报错拦截
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

参考:同步GIT仓库的操作 – push命令
拓展:Git常用命令汇总

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/32633
推荐阅读
相关标签
  

闽ICP备14008679号