使用 git 将我的更改与上游代码分开
Keeping my changes separate from upstream code using git
我们有一个供应商构建和维护一个项目,并通过只读 git 存储库与我们共享。定期地,项目中可能会有一些更新(错误、政策等),当这些更新时我们会收到通知。但是,我们也将自己的自定义更改添加到项目中。
这是我的想法:
- 创建我自己的在线存储库以保存更改。
- 将供应商代码按原样推送到我的在线仓库中的“master”分支。
- 创建一个新的远程分支“自定义”,我们在其中进行更改并推送更改。
- 运行
git merge master
每当供应商代码更新并解决更改时。
这是一个合理的方法吗?有更好的吗?请注意,我们都是 git 的新手,具有不同程度的编程经验,因此易用性是重中之重。
编辑:我刚刚发现我们可以为不同的分支设置 different remotes。这意味着我们可能不需要步骤 #2。
您的方法很合理:您需要两个分支:
upstream/master
从上游供应商存储库获取后
origin/master
:你自己的主分支推送到你自己的远程仓库,其中包括你的更改。
那将使用 (即使在分叉上下文之外)
您可以随时使用 git merge upstream/master
协调更改
我们有一个供应商构建和维护一个项目,并通过只读 git 存储库与我们共享。定期地,项目中可能会有一些更新(错误、政策等),当这些更新时我们会收到通知。但是,我们也将自己的自定义更改添加到项目中。
这是我的想法:
- 创建我自己的在线存储库以保存更改。
- 将供应商代码按原样推送到我的在线仓库中的“master”分支。
- 创建一个新的远程分支“自定义”,我们在其中进行更改并推送更改。
- 运行
git merge master
每当供应商代码更新并解决更改时。
这是一个合理的方法吗?有更好的吗?请注意,我们都是 git 的新手,具有不同程度的编程经验,因此易用性是重中之重。
编辑:我刚刚发现我们可以为不同的分支设置 different remotes。这意味着我们可能不需要步骤 #2。
您的方法很合理:您需要两个分支:
upstream/master
从上游供应商存储库获取后origin/master
:你自己的主分支推送到你自己的远程仓库,其中包括你的更改。
那将使用
您可以随时使用 git merge upstream/master