git工作流程包含许多但不是所有来自许多分支的提交

时间:2010-02-11 13:30:44

标签: git version-control workflow github fork

我有一个git repo。它已被分叉了好几次,并且在它之上进行了许多独立的提交。一切正常,就像许多github托管项目中发生的一样。

现在,我应该遵循什么样的工作流程,如果我想看到所有提交的内容并应用我喜欢的那些。

我遵循的工作流程,这不是最佳的是创建名称github-username的分支并将更改合并到我的主服务器并撤消我不需要手动提交的任何更改(没有很多,所以它工作)。

我想要的是能够单独查看来自不同叉子的所有提交,并在我的主人身上挑选并应用它们。

要遵循的工作流程是什么?什么gui(gitk?)使我能够看到所有不同的个人提交。

我意识到合并应该是工作流程的主要部分,而不是挑选,因为它创建了一个不同的提交(从git的角度来看)。即使在我的基础上改变其他的变化也许不会保留图表上的历史记录,以表明这是他已经重新定位的提交。那么,我如何忽略其中很多提交的一些提交?

我认为github应该在每个提交节点后的图形中“在我的主人身上应用此提交”;在完成所有这些之后我就可以拉它。

1 个答案:

答案 0 :(得分:2)

这通常是你使用遥控器的原因。对于每个分支,您可以添加一个新的远程:git remote add <name> <url>。然后,您可以获取所有远程提交:git fetch <name>。然后,您可以在远程分支上使用所需的任何可视化工具。就像你有原产地/主人一样,你将拥有/掌握。从那里,来自不同遥控器的樱桃选择就像来自原产地的樱桃采摘一样简单。

原点遥控器不是任何方式的远程仓库的特殊情况。它恰好是您最初克隆的远程仓库的默认名称。如果您不喜欢名称来源,可以重命名它。

如果您不知道,所有gui工具让您看到的不仅仅是您当前分支的历史记录。当你启动像tig,qgit或gitk之类的东西时,你只需要传递--all来让它向你展示它所知道的每个分支,本地和远程。