2

我养成了origin在每次提交之后推送的习惯。我的大多数提交都是相当琐碎的,因为我在做了一些小改动后才提交。这是一个好习惯吗?

我的印象是,与多次提交后的推送相比,每次小提交后推送都会增加存储库的大小。这种理解是错误的吗?

4

3 回答 3

4

只要您的提交仅驻留在本地存储库中,您就可以摆弄它们(git commit --amend修复最后一次提交,或git rebase -i重新排序和整理您的工作)。在提交后立即推动它们使得以后很难修复。

我喜欢每天推送一次更改,除非它们即将被其他人部署或测试。它让我有一个余地来发现我已经为时过早地做出了一些事情。

它不应该以任何方式影响存储库的大小。

于 2013-01-31T10:24:06.333 回答
2

我养成了每次提交后推送到原点的习惯。我的大多数提交都是相当琐碎的,因为我在做了一些小改动后才提交。这是一个好习惯吗?

在我看来,您不应该将每个提交都推送到原点。相反,当你完成使用一个特性来压缩较小的提交时,使用交互式变基,并将该特性作为一个提交推送到源。但对此没有明确的答案——谷歌搜索“git 工作流程”将为您提供多种选择。

我的印象是,与多次提交后的推送相比,每次小提交后推送都会增加存储库的大小。这种理解是错误的吗?

错误的。但是如果你在推送之前变基,那么被压扁的提交将不会在原点结束。

于 2013-01-31T10:26:28.717 回答
1

在团队中工作时,频繁的推送会让你个人的生活更轻松,因为最后推送的人需要解决合并冲突。其他不那么频繁推送的人可以通过更频繁地拉取来使他们的生活更轻松,以便在他们的存储库分歧过大之前检测到冲突。

频繁推送的缺点是,在推送提交后,您无法使用 rebase 重新排序或压缩提交,也无法再修改它们。这可能是个人的事情,但是当我有一个适合上一次提交描述的微不足道的更改时,我宁愿修改前一个而不是创建一个新的。推了之后就不能这样了。因此,当您频繁推送时,您最终会得到更多琐碎的提交,这会使 git 日志不必要地膨胀。

于 2013-01-31T10:22:42.743 回答