1
cxe2v 2015-08-24 09:34:56 +08:00
我的理解是, fork 就是开了一个分支, master 的修改跟 fork 是没关系的
|
2
gDD 2015-08-24 09:40:40 +08:00
最后一个问题,会的,假如有一个项目 M ,它有 N 个 fork ,当 M 删除之后, GitHub 会在这 N 的 fork 中选择一个作为 parent 。
实例: https://twitter.com/gaomd/status/635066231607848960 https://twitter.com/gaomd/status/635063836534398976 https://twitter.com/gaomd/status/635064702016450560 https://twitter.com/gaomd/status/635067220033302528 |
3
ChiangDi 2015-08-24 09:40:45 +08:00 via Android
你试试就知道了
|
4
gDD 2015-08-24 09:45:03 +08:00
「 github 会不会选择 folk1 作为新的 parent?」:会的
「如果是,那原项目在版本 5 后提交的那些修改是不是没了?」:是的 再回答前一个问题,删除 parent repo 会不会连带删除 fork : https://twitter.com/gaomd/status/635061933478146048 > 在 GitHub 里:一个公开项目要转为私有,会丢失 stars 和 watches ,所有 forks 都会保留并与之脱离关系;一个公开项目要删除,所有 forks 也会被保留下来。 https://twitter.com/gaomd/status/635068087423729664 > 与之反观的是 Private Repository , fork 它以后也是 private 的,且不需要 subscription ,删除它会连带删除所有 forks 。 |
5
adrianzhang 2015-08-24 10:18:35 +08:00
仓库和分支,不要弄混概念。 fork 是对源 repo 的 clone ,如果你 clone 了一个 repo ,那么你本地做的任何 commit 都影响不了 origin ,除非做 push pull 。
与 clone 一个仓库不同的是:如果你 fork 别人的项目,不经过别人允许就 push ,那会让原项目管理起来很累,所以 GitHub 的设计为只允许发 pull request ,由源项目决定是否 pull 你的 commit 过来合并。 至于源项目删除,看是删除 repo 还是只删除某个 commit version 或者只删除某个 branch ,只要不删除 repo ,那么你 fork 出来,对方做了修改后删除某个 commit 或 branch ,你 pull request 发出后,对方如果愿意 pull 你的 repo 相应的 branch ,那源项目不受影响。 V2EX 里发现好多关于 Git 的问题,都是因为对 Git 工作机制不理解。请参考 http://v2ex.com/t/214595#reply10 |
6
Tink 2015-08-24 10:26:33 +08:00 1
fork.....复刻
|
7
goodbest 2015-08-24 10:35:21 +08:00
|
9
buddha 2015-08-24 11:47:13 +08:00
谁有 fork 过喝茶大神的最新版本 我想 fork 一个
|