Monday, 18 February 2008

[VCS/SCM] same language, different lingo

When people say "lightweight branches":
  • In git lingo, most likely they will think about the fact that you don't need a different directory to switch to a different branch.
  • In subversion lingo, they will probably mean that the cost of making a branch in the repository does not impose an expensive operation
  • In bzr lingo, it seems they mean a repository with short history (aka shallow copy, for most other people)
  • it seems that mercurial refers to git's meaning as "named branches" (not sure about this); not sure if mercurial documentation refers to anything else as "lightweight branches"

Export means:
  • for subversion: to create a working copy without any meta information
  • for mercurial/hg: "The act of exporting a changeset generates an augmented patch file that describes the change."
  • for git, it seems to be a useless 'cp -r' operation
There are several other differences in the VCS/SCM lingo paralel uses, if you want to look closely, but these are enough for now...

No wonder we have communication problems and people don't grasp the power of a new tool when it changes the meaning of previously used terms.

No comments: