在 master 中维护带有补丁的 fork
Maintaining a fork with patches in master
我想维护一个在原始代码之上添加了自定义功能的分支。它不是对项目本身的贡献,不会被合并到上游。
我想达到的目标:
- 分叉的 GitHub 页面应该指向项目的补丁版本而不是原始版本。
- 我应该能够轻松合并新的上游代码,同时为我自己的提交保留单独的历史记录。
我目前的计划是将 fork 存储库中的 upstream/master
分支设为 vendor
,我自己的 master
将从该分支分支。每当上游有稳定版本时,我都可以将其拉入和推送到 vendor
分支,而不是重新设置我的 master
.
问题:
- 是否有更简单或更简洁的方法来实现相同的结果?
- 我应该通过 GitHub 网络界面进行分叉然后移动
master
,还是应该按照 this answer 中所述在本地创建存储库?
分叉只是 link 这两个 GitHub 回购的一种更正式的方式。
您甚至不需要将 upstream/master 命名为 "vendor":您可以直接在该远程分支之上重新设置您自己的 master 分支。
git fetch upstream
git checkout master
git rebase upstream/master
我想维护一个在原始代码之上添加了自定义功能的分支。它不是对项目本身的贡献,不会被合并到上游。
我想达到的目标:
- 分叉的 GitHub 页面应该指向项目的补丁版本而不是原始版本。
- 我应该能够轻松合并新的上游代码,同时为我自己的提交保留单独的历史记录。
我目前的计划是将 fork 存储库中的 upstream/master
分支设为 vendor
,我自己的 master
将从该分支分支。每当上游有稳定版本时,我都可以将其拉入和推送到 vendor
分支,而不是重新设置我的 master
.
问题:
- 是否有更简单或更简洁的方法来实现相同的结果?
- 我应该通过 GitHub 网络界面进行分叉然后移动
master
,还是应该按照 this answer 中所述在本地创建存储库?
分叉只是 link 这两个 GitHub 回购的一种更正式的方式。
您甚至不需要将 upstream/master 命名为 "vendor":您可以直接在该远程分支之上重新设置您自己的 master 分支。
git fetch upstream
git checkout master
git rebase upstream/master