因为如果直接在 master 上开发的话,,那就没法向 upstream 发起任何 pull request 了。。
是这样吗??
另外,,如果有一个小的修改希望发起 pull request ,,那应该也为这个修改新开一个 branch 吗??
或者说一个 fork 的仓库,,如果有 pull request 的打算,,就永远不要在 master 上修改代码,,master 只用来和 upstream 保持同步。。所有修改都在新的 branch 上做??
感谢各位大佬指教。。
因为如果直接在 master 上开发的话,,那就没法向 upstream 发起任何 pull request 了。。
是这样吗??
另外,,如果有一个小的修改希望发起 pull request ,,那应该也为这个修改新开一个 branch 吗??
或者说一个 fork 的仓库,,如果有 pull request 的打算,,就永远不要在 master 上修改代码,,master 只用来和 upstream 保持同步。。所有修改都在新的 branch 上做??
感谢各位大佬指教。。
1
YanSeven Feb 19, 2025 我理解是的,我目前的经验也是这么干的。
|
2
jikun Feb 19, 2025
可以在你 fork 的分支上开发,只是每次 PR 之后要删除 fork 重新 fork (不然会污染提交记录)
|
3
Configuration Feb 19, 2025 我觉得最方便的做法是,master 只用来同步,pull request 从自己新开的 branch 直接发起(无需 merge 到 master 再发起)
|
4
jpyl0423 Feb 19, 2025 是的,比如有些激进的功能上游不会合并,我就开个分支自己玩,公共问题在 master 上修改再 pull request
|
5
XIVN1987 OP 好的,,感谢各位大佬回复。。
|
6
jinliming2 Feb 19, 2025 via iPhone @GuoJikun 其实不用删 fork ,只要迁一个新分支出来,reset 到原仓库的提交,然后把要 PR 的改动 cherry pick 过来就行。
不过最简单的还是在一开始就在新分支开发,原分支仅用于跟踪远程,还可以随时把原仓库的更新 merge 到自己的分支上。 |
7
aisk Feb 19, 2025
完全可以在 master 分支上进行开发,想要同步上游的话,使用上游的 remote (比如叫 upstream )来进行合并。比如 git rebase upstream/master 。
|
8
adoal Feb 19, 2025
大概率能被接受的,我也在自己开的 branch 上开发
|
9
gadfly3173 Feb 19, 2025 via Android
我不管做什么修改都是开新分支的,毕竟你不能保证你每次只做一个 PR 。。。我是本地再把原仓库也添加为远程,这样可以直接在原仓库的提交上开分支出来
|