Personally I\'d just pop open a terminal and brew-up the usual *nix shell tools,
ID: 661667 • Letter: P
Question
Personally I'd just pop open a terminal and brew-up the usual *nix shell tools, but I need to make a software recommendation to some clients that need something a bit more newbie friendly.
The situation is that several clients have developed website(s) of the mostly static HTML sort, but the server they need deploy to doesn't have your usual collection of 1990s protocols available (for example, no FTP). In fact, there is no access at all to the front-end server. Deployment is handled through Git. Changes need to be pushed to a remote repository that is accessible only via SSH key login. Any commits to the master branch pushed by the authorized key trigger a hook script that deploys the site to the production servers.
I am looking to suggest a Git client for OS X that:
makes it relatively simple to setup and initialize
Explanation / Answer
I switched to Tower after I got fed up with the free options. I know you're after OSS/free, but still think this is a useful contribution, even if just for others looking for Git apps (student/education discounts available too).
While it's tagline is "the most powerful git client for Mac" I also think it's one of the easiest to use. Sure, it handles a lot of the features you don't need, but it has very simple repo setup, and behaves like you'd expect of an OS X application (things like quick-look, drag & drop, integration with some other common apps for diffs, etc).
Setting up / managing repositories is straight forward, with simple options for cloning an SVN repo, or creating GitHub/Beanstalk/Bitbucket repos. Switching between repositories is simple (two clicks).
I personally authenticate via my SSH key in ~/.ssh/, which I generated via ssh-keygen (built-into OS X). With git via SSH this gets used automatically, and I've never actually done any setup in Tower for authentication, other than intentionally leaving the password field blank. I'm not sure that it can actually generate keys though.
It has a very simple "Status" tab for viewing modified/un-versioned files, checkbox staging per file (and a stage-all button), and buttons for committing, pushing & pulling. Users do have to know that they need to push after committing though.
There's a nice "Commits" tab for viewing the commit history, which shows diffs and also lets you open diffs in an external diff tool (like FileMerge from Xcode).
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.