首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在git中保持精通历史的简短和清晰?

如何在git中保持精通历史的简短和清晰?
EN

Stack Overflow用户
提问于 2013-06-25 14:22:32
回答 1查看 94关注 0票数 1

我有2个远程存储库的项目。

1(原点)是我对项目进行修改的私有存储库。

2(上游)是我从中克隆的原始github代码库(--bare)。

时不时地,我会从上游获取更新,并将其合并到master中,它工作得很好。

然而,当我看到提交历史时,两个存储库(源/上游)的所有提交都会显示出来,很难说清哪里发生了变化(特别是我们内部的提交)。

保持主分支历史记录干净的好策略是什么?

我想出了一个主意,但不确定它是否可行或足够好。

在源库中创建一个分支,仅用于merging-in upstream更改。

代码语言:javascript
复制
After merge upstream to this branch(let's call it merge\_branch), I merge the merge\_branch to master hoping to see only 1 aggregated commit.
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-25 16:15:32

我不清楚你现在的方法是什么.然而,你所描述的新想法听起来像是通常的方式。

您的repo应该如下所示:

具有最终状态的

  • master分支(跟踪origin/master)
  • upstream分支(跟踪upstream/master)

在开始和稍后的时间点,您将上游分支合并到master中。在mastr上直接提交是你的工作。这取决于你是否将“上游”分支本身也推到了origin,合并提交通常是足够的信息。

编辑:经过讨论,你想要的东西变得清晰了。要将整个上游视为单个提交,您必须使用--squash进行合并。

我认为这是upstream的一种不同寻常的用法,但也是有意义的。如果你这样做了,我建议像上面那样运行upstream分支,以保持查看原始提交的能力(在本地和源上),使用squash合并,并在提交消息中记录上游分支的散列(删除提交列表)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17290475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档