用另一个本地分支替换一个本地分支......并保留跟踪
Replace one local branch with another local branch... and preserving tracking
我有 2 个跟踪不同存储库的本地分支:
- local-live(跟踪我们的实时回购)
- local-staging(跟踪一个 staging repo)
我们已经 "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
我有 2 个跟踪不同存储库的本地分支:
- local-live(跟踪我们的实时回购)
- local-staging(跟踪一个 staging repo)
我们已经 "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