我想在(自托管)bitbucket 服务器中克隆 github 存储库,并不时从 github 存储库中提取最新更改。在我们的克隆中,我们将做一些实验性的东西,它们永远不会离开我们的存储库。
为了显示; 使用化石,我会确保我们的存储库和他们的存储库具有相同的项目 ID,我会这样做:
$ cd ~/checkout/prjdir
$ fossil pull https://their.org/prj/foo --once
这将获取所有最新的签到、分支、标签等。然后将其推送到我们组织的服务器:
$ fossil push
永远不会有任何冲突;我们的更改将在实验分支上进行,因此从上游更新时不需要任何合并。
我试图复制化石工作流程并复制/粘贴一些看起来相关的东西,并为初始克隆提出这个:
$ git clone https://github.com/foo/bar.git
$ cd bar
$ git remote set-url origin https://ourbitbucket.org/foo/bar.git
$ git push -u origin master
然而,这似乎并没有带来标签(标签对我们很重要)。
使用 git(github 作为上游,我们的 bitbucket 服务器用于我们自己的标签/分支):
- 如何完全克隆存储库(包括所有分支和标签)?
- 一旦我有一个克隆的存储库,我如何从上游(在 github 上)提取所有最新的更改(包括分支、标签)并将它们推送到我们的服务器(bitbucket)?