git - Github - 更新分支后同步分叉
问题描述
我相信有人会急于将其标记为重复,也许是这样,但请先阅读,因为我仍在学习 github。
我已经分叉了一个项目,我在 Windows 上有一个本地存储库,其 origin 指向我的 fork,upstream 指向原始项目。使用命令行编辑器,我用我的更新创建了一个本地分支,我们称它为我的“功能分支”,并将该分支推送到原点(我的 fork)。由于推送了特性分支,上游(原始项目)已经更新,所以在默认/主分支上,我先进行了拉取,然后进行了推送。我的 fork 的主人现在说它是偶数,但是我的 fork 的功能分支后面有很多提交。
我应该如何更新我的功能分支,本地和远程,而不会丢失我的更改?我已阅读以下内容,但仍然感到困惑/不确定:
https://help.github.com/en/articles/syncing-a-fork
我的新手认为我需要以某种方式将树枝移到树顶。
解决方案
您需要将分支重新定位到更新的分支feature
上master
。
### Usage
# rebase current/active branch onto master
git rebase master
# OR, do a rebasing without checking out the branch you want to rebase
# rebase branch "feature" onto branch "master"
git rebase master feature
之后,强制将重新建立的feature
分支推送到远程分支origin/feature
,导致分支上的历史记录发生变化feature
。
git checkout feature
git push origin feature --force
例子
这是一个示例:将分支重新定位experiment
到master
.
前:
变基:获取引入的更改补丁C4
并将其重新应用到C3
.
$ git checkout experiment
$ git rebase master
First, rewinding head to replay your work on top of it...
Applying: added staged command
后:
参考
推荐阅读
- python - Python虚拟环境`venv`找不到`sqlite3`模块
- javascript - Ionic Http 请求获取 XML 对象错误
- python - Spyder4 按钮图标的外观异常
- javascript - 带有远程服务器的倒数计时器 - React Native
- php - 在 laravel 中安装新包后如何向模型添加新关系
- angularjs - 如果我在另一个字段中输入一些数据,如何将字段设为只读?
- c# - 如何仅在 XAML 中制作汉堡菜单过渡动画
- .net - 如何确定 .Net Core 上哪些库不好?
- reactjs - 使用 React 钩子设置状态无法正常工作
- python - Keras 和 TensorFlow,CNN 项目我应该选择哪一个?