Capistrano configfile has the config
set :scm,:git and the :repo_url and :branch
Can I deploy with capistrano without scm?
set :scm, :none
set :repository, "."
What is the benefit of scm config in the Capistrano deploy?
Capistrano configfile has the config
set :scm,:git and the :repo_url and :branch
Can I deploy with capistrano without scm?
set :scm, :none
set :repository, "."
What is the benefit of scm config in the Capistrano deploy?
With Capistrano 2 you could do that. With Capistrano 3 you can't.
One trick you can do is host a Git repository on the same server the app is hosted, since to 'host' a repository means simply having the repo files in a directory somewhere. You can push updates there from your local machine via SSH, and for Capistrano the repo URL would be just the path to the repo on the server.
You don't need a third-party service to host repos, and you don't need any special server software either.
As to the benefits of having code under source control - there are too many, which is why everyone is using it, which is why Capistrano developers don't even bother with supporting non-SCM deploy.
You can use the CapistranoRailsArtifact gem to do that.
This gem allows
you to package your Rails app into a .tar.gz and deploy it easily. This works by creating a new type of 'scm' for Capistrano 3.
First, No
Capistrano has to work with scm.
create an account with github or bitbucket and load your code. Which is even more important for you. Then setup capistrano to load code from that repo.
This can be useful e.g. for static sites created with something like jekyll/middleman/nanoc etc. These tools usually generate the code to be uploaded in some kind of "build" directory, which is not included in the repository, only the source files are. So in this case you can use Capistrano with scm = none and repository = "./build".