Java Reference
In-Depth Information
CVS, SUBVERSION, GIT, OH MY!
Many distributed version control systems or source code management systems are available. The
ones that have been widely used in open source in recent years include:
▪
Git
▪ As well as others that are used in particular niches (e.g., Mercurial)
Although each has its advantages and disadvantages, the use of Git in the Linux build process
(and projects based on Linux, such as the Android mobile environment), as well as the availabil-
ity of sites like
github.com
and
gitorious.org
, give Git a massive momentum over the others. I
don't have statistics, but I suspect the number of projects in Git repositories probably exceeds the
others combined. Several well-known organizations using Git are listed on the Git home page.
For this reason, I have been moving my projects to GitHub; see
http://github.com/IanDarwin/
.
To
download the projects and be able to get updates applied automatically, use Git to download
them. Options include:
▪ The
command-line Git client
.
If you are on any modern Unix or Linux system, Git is either
included or available in your ports or packaging or “developer tools,” but can also be down-
loaded for MS Windows, Mac, Linux, and Solaris from the home page under Downloads.
▪ Eclipse release Kepler bundles Egit 3.x, or you can install the Egit plug-in from an
update site
▪ NetBeans has Git support built in on current releases
▪ IntelliJ IDEA has Git support built in on current releases (see the
VCS
menu)
▪ Similar support for most other IDEs
▪ Numerous
standalone GUI clients
▪ Even Continuous Integration servers such as Jenkins/Hudson (see
Maintaining Your Code
with Continuous Integration
)
have plug-ins available for updating a project with Git (and oth-
er popular SCMs) before building them
You will want to have one or more of these Git clients at your disposal to download my code ex-
amples. You can download them as ZIP or TAR archive files from the GitHub page, but then you