2

我正在为学校做一个小组项目,我是 Git 和 Github 的新手。根据我对 Github 的了解,当我“分叉”一个存储库时,我实际上是在我自己的 Github 帐户中创建了一个项目副本,以便我可以独立处理它。我也知道我可以直接从我的小组成员制作的原始存储库中提取到我的 IDE 并从那里开始。

如果我从我的组成员的存储库中“分叉”,如果他要对其进行提交,我如何使用他的更改更新分叉?

我想我的问题是:在我们拆分工作的小组项目中,将 Eclipse 设置为直接从主存储库中提取是否是一个更好的主意,这样我就可以轻松地将更改提取并合并到我正在处理的内容中 - - 或者 - 分叉存储库并在我自己的副本上独立工作,然后以某种方式将我的组成员所做的任何更改合并到我自己的分叉中,然后在我完成我的部分时推送我的更改?

这是个人偏好从原始存储库直接拉入 Eclipse 还是将存储库“分叉”到我的 Github 帐户中,然后从那里工作?做一个比另一个更好吗?

我可能可以通过在线教程弄清楚如何以两种方式做到这一点,但我不确定该走哪条路。

感谢所有帮助。

4

2 回答 2

2

对于小团体,建议使用下面的选项 2 并在拉取请求上提交更改

基本上有两种选择:

  1. fork -在这里阅读如何拉取上游更改 克隆 w/拉。当项目所有者想要控制更改如何进入项目时,使用此方法。对于可能没有必要的课堂项目。
  2. 克隆 - 使用功能分支和拉取请求来管理更改(下面有更多详细信息)

小型团队的 git 工作流程可能如下所示。您可以在此处阅读更多详细信息

  • 将团队 repo 克隆到本地工作站
  • 选择一个要处理的功能并创建一个分支来处理该功能
  • 进行大量混乱的提交,直到您准备好发送给团队 repo 的东西
  • 从团队中拉下上游更改,这些更改致力于掌握并重新设置您的功能分支以根据需要合并这些更改
  • 重写你的提交历史git rebase -i origin/master
  • 创建一个合并到 master 的拉取请求
于 2013-10-26T23:35:26.467 回答
0

我们处理东西和工作的方式,因此我为个人项目处理它的方式如下:

  • 克隆主存储库(无分叉)。

  • 结帐一个您计划在其中完成所有工作的新分支。

  • 当你完成检查主项目分支(可能是master,在工作中我们使用develop)

  • 运行 git pull origin master (或任何主分支名称)

  • 结帐回您进行所有更改的分支。

  • 在您的分支上运行 git rebase master,这将在 master 上的任何内容之上运行您的所有更改。

  • 然后执行 git push origin 'your new branch name'

  • 最后,一旦分支被推送到主仓库,提交一个拉取请求。

这是保持一组线性更改的好方法,而且效果很好。

于 2013-10-26T23:39:31.540 回答