用另一个本地分支替换一个本地分支......并保留跟踪

Replace one local branch with another local branch... and preserving tracking

我有 2 个跟踪不同存储库的本地分支:

我们已经 "continous deployment" 设置好,所以当我推送我的本地暂存环境时,暂存环境将随着更改而更新。我想要暂存以反映实时代码(当前情况并非如此)。

如何用 "local-live" 分支中的代码替换 "local-staging" 分支?我想擦除所有分期更改,使分期反映现场直播的内容。我希望我的本地分期仍然跟踪分期回购(即分期中的 "git push" 将按预期运行)

希望这是清楚的。谢谢。

您似乎想将您的实时分支合并到您的暂存分支中。

这里有一个详细的指南:

http://www.git-tower.com/learn/git/ebook/command-line/branching-merging/merging

基本上你必须这样做:

$ git checkout local-staging
$ git merge local-live


现在,如果您想将实时分支的更改放在暂存分支之上,您应该使用变基。 并做类似的事情:

$ git checkout local-live
$ git rebase local-staging
$ git checkout local-staging
$ git merge local-live

检查这个:

https://git-scm.com/book/en/v2/Git-Branching-Rebasing


现在,如果你不想合并分支,你应该做一个破坏性的操作:O

你可以做一个 "hard reset" 和一个 "force push"。

$ git checkout local-staging
$ git reset --hard <desired commit of local-live>
$ git push --force origin local-staging

更多信息:

https://es.atlassian.com/git/tutorials/undoing-changes/git-reset

您想进行硬重置。

git checkout local-staging
git reset --hard local-live