获得“舞台”的Git的概念(Getting Git-concept of “stage”)

2019-06-26 14:33发布

仍然很难让我的头缠着分期的概念,因为它适用于Git的。

可以在任何类比与SVN进行? 什么是具有Git的阶段水平的主要目的是什么?

Answer 1:

相似点:

这应该是存储库的一部分文件必须被添加到被跟踪。 这两种工具使用add命令来实现这一目标。 添加文件意味着准备提交。

区别:

Git的允许一些进一步的各种细节的添加文件时。 你可以决定添加整个文件或代码线条分明。 将文件添加到索引阶段允许更大的灵活性。 SVN自动提交对已被添加到库中的文件的所有更改。 git会什么样的变化关联与每个提交操作给用户的决定。 换句话说:未来承诺在Git中只包含这些变化已经上演(行或文件),无论文件的跟踪状态。 SVN自动包含在跟踪文件中的所有变化。

附加信息:

试着去阅读一些职位描述Git的工作流,如从一个奥利弗·斯蒂尔 。 但要知道,有没有使用Git的一种方式-有许多。 如果你愿意,还可以使用Git,如果你用SVN工作。
不要期望了解的Git的理念,在很短的时间周期。 我花了一年的时间进入它,我仍然学会使用它的新途径。 我认为这是即使您使用SVN的心态成长起来更难。 有吨物资在那里:文章,视频,... - 把你的时间,并尝试其中的一些。 下面是我收集的列表中进行选择。

  • Git的浸入
  • 觉得像(A)的Git
  • Git的比喻
  • Git的教程由拉尔斯·沃格尔
  • 链接和背景资料收集tekkub


Answer 2:

临时区域的主要优点是,你可以很容易犯的一个给定文件的更改只是一部分。 (使用git add -p例如)。据我所知,只有这样才能做一个“局部”提交的SVN是基于每个文件级别,或通过手动备份文件,然后暂时恢复了改变,你不想犯。

如果(像我)你不是一个高度组织化的开发人员,希望能够理清变成“整齐”事后犯这是伟大的。 在此之前,Git的宁愿给你的灵活性在执行严格的一般态度。 如果你不需要它,你永远可以不使用它,并使用git commit -a ...

有没有用SVN进行,因为SVN不Git和不具备这样的概念类比。



Answer 3:

下面是一些显示分期的有用的情景:

  • 您在一段特定的工作,并取得了在你的项目相当多的变化。 你不想来测试出完整的东西之前尚未提交它们。 但是,这些变化往往可以独立足以让多个逻辑提交不是一个大的一个。 这是当你选择的阶段和部位进行多次提交。

  • 分期一直在调试时特别有用。 您可以洒周围的日志报表跟踪bug的来源。 然后,在你进行修正,并再次测试使用这些日志语句。 但是,你想使代码中的任何改变,删除那些日志语句之前提交的修补程序。

  • 它已被证明是有用的另一种情况是,当你在做的事情中间,找点事无关,就像一个错字的错误,要修复并把它弄出来的方式迅速。

还有其他一些这样的情况下,很可能你将无法使用任何没有这个概念,一旦你得到它挂起:)工作。

PS:我没有使用SVN可言,所以不能让两者之间的比较。



文章来源: Getting Git-concept of “stage”