The command line is a powerful way to use version control systems, but not everyone is as comfortable with memorizing and using text commands. Thankfully, there are many good GUI clients available for popular version control and operating systems. We’ve compiled a list of our favorites below, which all work well with Beanstalk.
Subversion is a popular choice for people who are new to version control because of it’s robust ecosystem of clients.
Cornerstone (Mac, $59)
Cornerstone is our favorite Subversion client for the Mac. It has some unique and useful features, including built-in file comparison and the creation and merging of tags and branches. Cornerstone includes syntax highlighting for many popular languages, and even supports design files such as PNGs, PSDs and JPGs.
Cornerstone is also integrated with Beanstalk, making it easier to add your repositories.
Versions (Mac, $59)
Versions is another very powerful client for Mac. It provides the most important features and tools at the click of a mouse. You can commit your work, stay up to date and easily track changes to projects and files. You can even create new Beanstalk repositories right from inside Versions.
See also: svnX is an open source and free OS X client with the most basic features.
TortoiseSVN (Windows, Free)
TortoiseSVN is free, very powerful and popular Subversion client for Windows. It is implemented as a Windows shell extension, which means that it integrates seamlessly into the Windows Explorer and other file managers. Many languages are available for international users. TortiseSVN also comes with helpful tools like TortoiseMerge, TortoiseBlame and TortoiseDiff.
RabbitVCS (Linux, Free)
RabbitVCS works both with Subversion and Git repositories, and provides a graphical experience on Linux systems. It seamlessly integrates into Nautilus and Thunar workflows (similar to how to TortoiseSVN shows up in Explorer in Windows), and provides an easy way to commit files, update working copy and stay up to date with changes in your project repositories.
SmartSVN (Multi-platform, $69)
SmartSVN runs on Windows, Mac, and Linux and provides many of the most needed tools out of the box — an SVN client, file comparison, conflict resolver and an SSH client. There are lots of powerful features to make your day-to-day work easier — branches and tags support, revision graphs, Windows Explorer and OS X Finder integration depending on your OS, merging tool and an advanced commit wizard.
A multi-platform SmartGit application with similar interface and features set is available too.
IDE Integration with Subversion
Coda by Panic is one of the best applications for web development with it’s powerful text editor, native Subversion, Git and S/FTP support, built-in terminal, CSS tools and much more.
This Adobe article explains how to use Subversion with the Dreamweaver code editor.
VisualSVN is a plug-in that integrates Subversion and TortoiseSVN seamlessly with Visual Studio.
Subclipse is a plug-in providing support for Subversion within the Eclipse IDE.
Git is more complex to understand than Subversion. While a number of powerful clients have emerged to make using Git easier, we strongly recommend learning to use the command line before jumping into one of the clients below. Once you’ve got a handle on how things work, you can use one of the tools below to make your daily workflows easier.
Git Tower (Mac, $69)
Git Tower is our recommended Git client for Mac. It’s a new, well designed, full-featured application with Beanstalk support out of the box, making it easy to add new Beanstalk repositories without leaving the application. The integrated diff tool makes it easy to review changes before committing. The commit history’s search and graphs provides a quick way to review progress on your projects. Your other favorite Git goodies are there too — it supports merging, branching, tagging, stashing and cherry-picking.
Gitbox (Mac, $14.99)
Gitbox provides simple and clean access to your repository history and working copy, with visual tools for pushing and pulling from remotes and remote branches easily.
TortoiseGit (Windows, Free)
TortoiseGit is probably the most popular Git client on Windows. It’s an open-sourced port of TortoiseSVN to Git. It works as a Windows shell extension, easily integrated with Explorer and other file managers and comes with a set of helpful tools like TortoiseMerge, TortoiseBlame and TortoiseDiff.
Git Extensions (Windows, Free)
Git Extensions is a powerful open-source Git client for Windows. It provides a rich user interface, integrates with Windows Explorer and has plugin for Visual Studio. Important tools like commits log, files history, diff and blame are included in a single application.
RabbitVCS (Linux, Free)
We already wrote about RabbitVCS previously, but as we said it supports Git too. It seamlessly integrates into Nautilus and Thunar workflows (similar to how to TortoiseSVN shows up in Explorer in Windows), and provides an easy way to commit files, update working copy and stay up to date with changes in your project repositories.
Giggle (Linux, Free)
Giggle is a graphical front-end for Git repositories (think of gitk on GTK+). It combines both the repository browsing and changing functions into one program.
SmartGit (Multi-platform, $79)
SmartGit is a sibling to SmartSVN, which means it’s easy to use and contains all of the same necessary functionality. SmartGit is available on all major operating systems, and it contains a Git client, SSH client, compare and merge tools. The graphical log can show the change history of the whole project or a single file, and all other important tools are there as well.
IDE Integration with Git
Git Textmate Bundle (Free)
An open-source Git bundle for the popular Textmate editor on OS X.
We already mentioned Coda by Panic in Subversion section. It is one of the best applications for web development with it’s powerful text editor, native Subversion, Git and S/FTP support, built-in terminal, CSS tools and much more.
EGit is a plug-in providing support for Git within the Eclipse IDE.
GITWeaver integrates Adobe Dreamweaver with TortoiseGIT.