2013-01-31 84 views
2

在每次提交之后,我开发了一种推送到origin的习惯。我的大部分承诺都是微不足道的,因为我在做了一些小的修改之后承诺了这一点。这是一个好习惯吗?每次提交之后执行推送的好处和成本比提交多次提交后有所提高

我的印象是,在每次小提交之后推送增加了存储库的大小,而不是在进行多次提交之后推送。这种理解是错误的吗?

+1

我推荐你阅读的东西:http://sandofsky.com/blog/git-workflow.html – 1615903

回答

2

我已经养成了在每次提交后推送到原点的习惯。 我的大部分提交都是微不足道的,因为我在做了小的修改之后承诺 。这是一个好习惯吗?

在我看来,你不应该把每一个承诺都推给原点。相反,在完成使用特性来压缩较小的提交时,使用交互式重新绑定,并将该特性推送到原点。但是对此没有明确的答案 - “git工作流程”的搜索结果会为您提供多种选择。

我的印象是,之后的每个小推提交 下时相比增加使得 多次提交后推资源库的大小。这种理解是错误的吗?

错误。但是如果你在推动之前进行重新绑定,那么被压扁的提交将不会在原点结束。

1

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

经常推送的缺点是,在您推送提交后,您无法使用rebase重新排序或挤压提交,并且无法再推荐它们。这可能是个人的事情,但是当我在上一次提交的描述下进行一个微不足道的变化时,我宁愿修改前一个,而不是创建一个新的。推后,你不能再这样做了。所以当你频繁推送时,最终会有更多不必要的微不足道的提交。

4

只要您的提交只在您的本地存储库中,您可以随意摆弄它们(git commit --amend修复上次提交或git rebase -i重新排序和整理您的工作)。在提交后立即推送它们使得稍后难以修复。

我喜欢每天推送一次我的更改,除非他们即将被其他人部署或测试。它让我有足够的空间来发现我已经犯了一些过早的事情。

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

+0

另外,你应该有一个独立于Git的良好的工作区备份程序 - 你不应该只推送备份,但是当你觉得你的作品适合分发给其他人。 –

相关问题