当前位置:   article > 正文

git 将当前修改的内容提交到新的分支上_git在别的分支修改了信息如何推送到另一个分支

git在别的分支修改了信息如何推送到另一个分支

习惯先在原有代码上做修改,改完再创建新的远程分支提交
所以就牵扯到在已有修改的时候,如何将当前修改提交到新的分支上

1 创建无修改的新分支,直接提交

假设远程原分支是branchA,本地已经做了修改的brancA进化成了branchA+,
远程仓库从branchA新建了一个分支branchB,本地可以直接新建branchB做提交

1 更新本地分支列表
git remote update origin --p
不更新可能会出现找不到branchB,新建失败
当然也可以先跳过试试,如果本地拉了最新代码,当然会有远程分支列表的信息。

2 在本地branchA+里直接新建本地分支
git checkout -b branchB origin/branchB
brancA+会直接切换成branchB,所作修改也会跟着到branchB

3 一套提交操作
git add . 暂存所有修改
git commit -m "提交备注"
git push origin branchB

2 创建的新分支已经有了修改,git stash 暂存本地修改

假设远程原分支是branchA,本地已经做了修改的brancA进化成了branchA+,
远程仓库从branchA新建了一个分支branchB,branchB上同事提交了新的代码,进化成了branchB+

1 暂存本地修改
直接按照第一种情况的第二步来,可能会因为本地冲突提示错误,新建分支失败
那如果新建成功了,那就按照第一种情况来嘛,更方便,反正我好像没遇到过
git stash 暂存所有本地修改
如果有新增的文件,使用git stash -u
保存注释用git stash save '备注信息'
新增文件+注释用git stash save '备注信息' -u
暂存修改后branchA+退化为branchA

2 更新本地分支列表
git remote update origin --p

3 在本地branchA里直接新建本地分支
git checkout -b branchB origin/branchB
brancA会切换成branchB
origin后接远程仓库里的分支名,表示根据远程仓库中的branchB新建本地分支branchB

4 提出暂存的本地修改
git stash apply 0
最后一次暂存的修改会被释放
git stash list
查看保存的记录列表,用id作为标识符
stash@{0}: WIP on develp: 0cc79b0 commit备注信息
如果暂存了多次,需要apply多次哈

5 解决完冲突就可以提交一波
git add . 暂存所有修改
git commit -m "提交备注"
git push origin branchB

3 现在本地创建分支,直接提交到另一个分支

1 暂存本地修改
git stash

2 新建本地分支branchB
git checkout -b branchB
brancA会切换成branchB,但是没有关联远程仓库的branchB

3 应用暂存的修改
git stash pop

4 直接提交到另一个分支
git push origin branchB:branchB
冒号前是本地分支名,冒号后是远程仓库分支名,如果两个名称一样,可以只写一个,就像前面两个方案的提交
在远程仓库会同步新建分支branchB

5 将当前分支与远程分支关联
git branch --set-upstream-to=origin/branchB
建立连接之后可以直接push,不写分支名

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

闽ICP备14008679号