4

我有一个反应项目的回购。我想将该回购作为其他几个项目的“基础”并将其作为起点。我还想根据“基础”发生的情况,使源自它的所有其他存储库保持最新。

我正在使用 Bitbucket 进行远程 repo 托管,并在本地使用 Tower 作为一个不错的 GUI。

这样做的正确方法是在 Bitbucket 中分叉“基础”,然后在本地克隆它吗?本地存储库会以任何方式了解“基础”存储库的更新吗?我怎么知道是否对“基础”回购做出了重大承诺,这将使任何分叉回购受益?

或者,如果我对分叉的 repo 进行更改以使所有其他 repo 受益,我可以执行 pull-request 以便“base” repo 知道它应该拉入更新吗?

请原谅任何无知,我现在根本没有使用分叉或拉取请求,我正在努力解决它:)

4

1 回答 1

3

本地存储库会以任何方式了解“基础”存储库的更新吗?

否:您需要添加一个远程,命名(通常)上游,引用原始存储库

cd /path/to/local/clone/of/fork
git remote add upstream /url/original/repo

git checkout master

# detailed step:
git fetch upstream
git merge upstream/master

# or (shorter)
git pull upstream master

或者,如果我对分叉的 repo 进行更改以使所有其他 repo 受益,我可以执行拉取请求,以便“基础” repo 知道它应该拉入更新吗?

是的,这将是一个经典的拉取请求。

于 2018-07-27T16:44:04.480 回答