jvi*_*tti 333 git git-branch
是否可以将更改从一个分支提交到另一个分支.
假设我在BRANCH1中提交了更改,并希望将它们推送到BRANCH2.
从BRANCH1开始,它是否有效:
git push origin **BRANCH2**
Run Code Online (Sandbox Code Playgroud)
然后重置BRANCH1?
SLa*_*aks 617
这几乎可以奏效.
当推送到非默认分支时,您需要指定源ref和目标ref:
git push origin branch1:branch2
Run Code Online (Sandbox Code Playgroud)
要么
git push <remote> <branch with new changes>:<branch you are pushing to>
Run Code Online (Sandbox Code Playgroud)
Rya*_*art 70
当然,虽然只有当它是BRANCH2的快速前进或强迫它时它才会起作用.做这样的事情的正确语法是
git push <remote> <source branch>:<dest branch>
Run Code Online (Sandbox Code Playgroud)
有关其工作原理的更多详细信息,请参阅git push手册页上的"refspec" 说明.另请注意,强制推送和重置都是"重写历史记录"的操作,除非您完全确定知道自己在处理任何远程存储库和其他存储库方面做了什么,否则不应该被胆小的人尝试.拥有同一项目的分支/克隆的人.
Baa*_*gan 17
完毕。
对于这个问题:命令是
git push origin BRANCH1:BRANCH2
编辑:现在我意识到,GitHub Desktop 具有良好的 UI,可以将您的更改从一个分支转移到另一个分支。当然,这不是比用手在终端中输入命令更好的选择。
Bil*_*een 13
非常简单 假设您已经对位于本地和远程位置的分支机构A进行了更改,但是您想将这些更改推送到任何地方都不存在的分支机构B。
步骤01:创建并切换到新的分支B
git checkout -b B
步骤02:在新的本地分支中添加更改
git添加 //或特定文件
步骤03:提交更改
git commit -m“ commit_message”
步04:将更改到新的分支乙。下面的命令将远程创建一个新的分支B
git push起源B
现在,您可以从bitbucket验证分支B比分支A多提交一次。当您结帐分支A时,这些更改将不存在,因为这些更改已被推送到分支B中。
注意:如果已将更改提交到分支A,然后要将这些更改转移到新的分支B,则必须首先重置这些更改。#HappyLearning
Ben*_*ari 10
我用命令得到了不好的结果git push origin branch1:branch2
:
就我而言,branch2
已删除并branch1
更新了一些新的更改。
因此,如果您只想branch2
从推送更改branch1
,请尝试以下步骤:
branch1
:git add .
branch1
:git commit -m 'comments'
在branch1
:git push origin branch1
在branch2
:git pull origin branch1
On branch1
:恢复到之前的提交。
就我而言,我有一个本地提交,它没有推送到origin\master
,而是提交给我的本地master
分支。现在应该将这个本地提交推送到另一个分支。
使用Git 扩展,您可以执行以下操作:
您也可以在GIT 命令行上执行此操作。复制自David Christensen的示例:
我想你会发现
git cherry-pick
+git reset
是一个更快的工作流程:使用相同的场景,“feature”是最顶层提交不正确的分支,这样做会更容易:
git checkout master
git cherry-pick feature
git checkout feature
git reset --hard HEAD^
节省了大量工作,并且是
git cherry-pick
设计用于处理的场景。我还要指出,如果它不是最顶层的提交,这也将起作用;你只需要通过以下方式提交关于cherry-pick的论点:
git checkout master
git cherry-pick $sha1
git checkout feature
git rebase -i ... # whack the specific commit from the history
归档时间: |
|
查看次数: |
285224 次 |
最近记录: |