In any case, I fail to see how this is any more useful than Capistrano. Just being able to push arbitrary tree-ish hashes to a specific environment isn't very special, as that can arguably already be done with Capistrano.
This also introduces perhaps a new workflow to many people, if you already work with Git. As you said, it isn't very special pushing any branch to any remote location. However, it has not yet been done by anyone else yet (from what I can see, I might be wrong).
For a lot of people, (again, not everyone), it is a joy to be able to spin up a VPS, being able to provision it with pre-configured settings and common dependencies with a few commands, and being able to have your application live in a matter of a few minutes without needing almost _any_ knowledge of Linux.
Of course it isn't for everyone and every project, but it's good (and simple) enough for me. Every project has different requirements for deployment and I sure appreciate the option to chose from a variety of tools.
The problem with capistrano is that it tries to abstract a bit too much of the underlying project and deployment environment away. minicap aims to fix that by providing a minimal, git-centric remote footprint. cap provides a great foundation, but makes a couple of mistakes in its recipes that are easily remedied with a minimalist approach like we've taken in minicap.
For companies with security and/or compliance needs, or paranoid people like me, it's more-or-less vital to keep development and production separated, and to firewall the hell out of what production can actually go out and get, as well as to tightly control who and what has access to the servers.
Most systems like this make the assumption that you've got full root-level access via SSH, which is often not the case. Likewise, I don't see anything for handling multiple servers (maybe I missed that?).
Also, the project just released a few days ago, mainly to say it's there, if anyone wants to contribute or provide feedback that would be very much appreciated. It is still in a _very_ early stage, hence the version 0.0.x so it could really go in a lot of directions, mainly based on input from the community and guys like you. There is a lot of room for improvement.
That said, any piece of information, advice and feedback is most certainly welcome!
set :git_shallow_clone, 1
takes care of this. I think this translates directly to a --depth parameter on git clone.