如果我们把网站程序托管在虚拟主机中,我们都需要一款工具来管理主机中的源代码,一般我们都是使用FTP来管理,但是这种方式有很大的缺陷,例如当我们不知道哪些文件做了修改的时候,我们只能把全部文件都上传一遍,FTP协议每次只能传输一个文件,而且每次传输完之后又要再次握手,每次握手的时间比上传一个文件的时间都要长,如果要重新全部上传一个源码,对于大量的小文件来说,这种方式简直让人崩溃。
一般来说,大部分人都会使用Sync工具来进行传输,每次只传输变更的文件,但是这种方法还是感觉有点不方便。后来我了解到可以使用Git来进行传输,而且还拥有版本控制的功能,这样就不用担心操作失误,每次都可以进行回滚,确实很方便。
git-ftp
这里是这个项目的地址:git-ftp/git-ftp: Uses Git to upload only changed files to FTP servers.
使用方法
一.首先你得有安装Git,这个就不多加阐述了。
二.安装git-ftp
1)对于所有的Unix/Linux系统,全都可以采用源代码安装,在Releases · git-ftp/git-ftp下载最新的压缩包,解压然后
# make install
这样就安装好了
2)Windows系统,打开git安装目录,默认在C:\Program Files (x86)\Git
,然后在安装目录下打开git bash输入:
curl https://raw.githubusercontent.com/git-ftp/git-ftp/master/git-ftp > /bin/git-ftp
chmod 755 /bin/git-ftp
3)Mac OS X
使用brew:
brew install git
brew install curl --with-ssl --with-libssh2
brew install git-ftp
检查是否安装成功:
$ git-ftp
git-ftp <action> [<options>] <url>
三.初始化目录
首先需要初始化Git目录
$ git init
然后配置你的主机信息:
$ git config git-ftp.url "ftp://ftp.example.net:21/public_html"
$ git config git-ftp.user "ftp-user"
$ git config git-ftp.password "secr3t"
第一项是你主机的地址,一般如果购买的虚拟主机,就会是IP地址,端口可以省略,然后跟上你的目录路径
第二项是用户名
第三项密码
使用时跟平时使用git一样:
$ git add .
$ git commit -m "description"
PUSH命令不同
使用下面的命令推送代码:
$ git ftp push
这样就可以了!
是不是发现比使用FTP快多了,当然,git-ftp能做的肯定不止这些,想解锁更多新姿势可以查看
git-ftp/git-ftp.1.md at master · git-ftp/git-ftp
或者输入
$ git-ftp -h
来查看帮助。