真是年关难过啊!哈哈!最近,一下子项目紧张起来,一堆演示什么的都来了。不过总算都熬过来啦!:)

在最近这几天中交替使用 SVN 和 Git,自己觉得有了新的感悟。

SVN

在紧急的情况下(这几天都是这个状态),修改的变动异常多,虽然都是一些小的问题,但是需要版本不断的回退,再回来,这样来回倒腾。我深深怀疑我自己使用 SVN 的方式不对,但是也没有找到什么最佳实践,特别是这种状态下的。

就平时开发来说,SVN 的分支也算可以,基本可以满足需要。版本发布,分支管理,还能运转起来。目前是,每发布一个版本就增加一个 tags,有 Feature 就 branch。

在紧急状态下,问题出现了:

  • tags 这个目录下的分支似乎是不能继续生长的。从这个位置检出代码修改后,没有找到比较好的办法合并到 trunk 分支,现在的做法是手工合并。
  • branch 的代价有点高了,项目小的时候感觉不到,但是当达到一定程度之后,就会发现在不同分支之间切换很慢。

Git

老实说,用的时间并不短。但是平时都是当 SVN 那样在用,只有最近接触到了 Git-flow 之后,才有了深入的理解。这次让我感触最深的还是分支切换的便捷。我可以毫无顾忌的创建新的分支用来做修改,而且不会影响到目前工作到一半的内容。可以从之前任意一点创建分支是我感觉最爽的一点了,而且是瞬间完成的。

PS. Git 可以在本地修改、分支。在需要一个紧急临时修改的情况下特别好用,因为我本地的分支不会去影响到远程的服务器上的主干的发展。这些分支回头可以合并,也可以丢弃。真是太方便了啊!

另外,我发现了一个叫 Gitlib 的东东,好象是一个开源的 Github 的仿制品,看着还不错。回头有机会的话试用一下。呵呵!:)