是否有可能将变更从一个分支提交到另一个分支。
假设我在BRANCH1中提交了更改,并希望将它们推到BRANCH2。
从BRANCH1中,这样做是否有效:
git push origin **BRANCH2**
然后重置BRANCH1?
是否有可能将变更从一个分支提交到另一个分支。
假设我在BRANCH1中提交了更改,并希望将它们推到BRANCH2。
从BRANCH1中,这样做是否有效:
git push origin **BRANCH2**
然后重置BRANCH1?
当前回答
这很简单。假设您已经对本地和远程驻留的分支A进行了更改,但是您想将这些更改推到不存在的分支B。
步骤01:创建并切换到新的分支B
git checkout -b
步骤02:在新的本地分支中添加更改
Git添加。//或指定文件
步骤03:提交更改
Git commit -m commit_message
步骤04:将更改推送到新的分支B。下面的命令也将远程创建一个新的分支B
git push origin B
现在,你可以从bitbucket中验证分支B将比分支A多提交一次,当你签出分支A时,这些更改将不会存在,因为这些更改已被推入分支B。
注意:如果您已经将更改提交到分支A中,然后您想将这些更改转移到新的分支B中,那么您必须首先重置这些更改。# HappyLearning
其他回答
当然,尽管它只在BRANCH2的快进或强制时才会工作。这样做的正确语法是
git push <remote> <source branch>:<dest branch>
查看git push手册页上关于“refspec”的描述,了解更多关于它如何工作的详细信息。还要注意,强制推送和重置都是“重写历史”的操作,心脏不好的人不应该尝试,除非你绝对确定你对任何远程存储库和其他拥有同一项目的分叉/克隆的人知道你在做什么。
git init #git远程删除源文件 Git远程添加origin <http://...git> echo "This is for demo" >> README.md git添加README.md git commit -m "初始提交" Git checkout -b branch1 Git分支——list * * * * * * *添加文件 git添加-A git状态 git commit -m "Initial - branch1" Git push——set-upstream origin branch1 #git push origin——delete branch1 #git分支——unset-upstream
@SLaks的答案是小道具,这对我来说基本适用。但是在分支有不同头的情况下。一个方便的方法是使用樱桃。
git登录Branch1与您的更改 复制提交SHA您的更改 Git checkout branch2 -在这里应用您的更改 git选择SHA_OF_COMMIT_FROM_STEP_2
差不多可以了。
当推入一个非默认的分支时,你需要指定源ref和目标ref:
git push origin branch1:branch2
Or
git push <remote> <branch with new changes>:<branch you are pushing to>
这很简单。假设您已经对本地和远程驻留的分支A进行了更改,但是您想将这些更改推到不存在的分支B。
步骤01:创建并切换到新的分支B
git checkout -b
步骤02:在新的本地分支中添加更改
Git添加。//或指定文件
步骤03:提交更改
Git commit -m commit_message
步骤04:将更改推送到新的分支B。下面的命令也将远程创建一个新的分支B
git push origin B
现在,你可以从bitbucket中验证分支B将比分支A多提交一次,当你签出分支A时,这些更改将不会存在,因为这些更改已被推入分支B。
注意:如果您已经将更改提交到分支A中,然后您想将这些更改转移到新的分支B中,那么您必须首先重置这些更改。# HappyLearning