Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Deprected: Project moved to https://github.com/git-ftp/git-ftp
Shell

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
LICENSE
README
git-ftp.sh

README

git-ftp.sh
==========

(c) René Moser, <mail@renemoser.net>, 2010
This application is licenced under GNU General Public License, Version 3.0
http://www.gnu.org/licenses/gpl-3.0-standalone.html


Summary
-------
Use git-ftp.sh to upload only the files to a FTP server, which have changed 
since the last upload. This saves time and bandwith.


About
-----
I use git-ftp.sh for my script based projects, mostly PHP. Most of the low-cost
web hoster does not provide SSH nor git support, only FTP. 

That is why I needed a easy way to deploy my git tracked projects. Instead to 
transfer always the whole project, I thought, why not only transfer the files 
which changed since the last time, git can tell me those files.

Even if you are playing with different branches, git-ftp.sh knows which files
are different. No ordinary FTP client can do that.


Installing
----------
Make sure git and curl is installed.

    # aptitude install git-core curl

The easiest way is to use git for installing:
   
    $ mkdir -p ~/dev/git-ftp.sh.git
    $ cd ~/dev/git-ftp.sh.git
    $ git clone http://github.com/resmo/git-ftp.sh.git .
    $ chmod 0755 git-ftp.sh
    $ mkdir ~/bin
    $ cd ~/bin/
    $ ln -s ~/dev/git-ftp.sh.git/git-ftp.sh git-ftp
    
After this you can use 'git ftp' or 'git-ftp'


Updating
--------
Update to the latest version is simple as:
    
    $ cd ~/dev/git-ftp.sh.git
    $ git pull


Usage
-----
    $ cd my_git_tracked_project
    $ git ftp ftp://host.example.com/public_html --user <user> -p <password>
    
For interactive password prompt use:
    $ git ftp ftp://host.example.com/public_html --user <user> -p
    
For more options see:
    $ git ftp -h


Contributions
-------------
Don't hesitate to use GitHub to improve this tool.
Something went wrong with that request. Please try again.