前言
问题:虚拟主机只能用ftp提交代码,每次修改代码都需要找对应的目录来覆盖文件,太麻烦了;然后就想用git来管理。
找了好多这样的教程,楞是没把我教会,算了自己一步一步的琢磨吧~!终于 啊哈哈哈哈(来自赏金女枪的大笑~)。。。。。。搞定了~!
一、安装git
这个我就不细说了
如果有需要的话,选择性安装git图形化工具,还有中文包很友好;可以下载git小乌龟,安装也很简单;
二、 安装git-ftp(本机环境是win7)
1、git-ftp的地址 https://github.com/git-ftp/git-ftp/
2、查看install.md文件中关于windows的内容;主要说的是下载带sftp支持的curl,但实际上新版git装完,git bash里的curl支持sftp。在git bash中输入:$ curl –V,显示下面信息
你会发现是支持sftp的,不用再安装curl直接在git bash中执行
curl https://raw.githubusercontent.com/git-ftp/git-ftp/master/git-ftp> /bin/git-ftp
chmod 755 /bin/git-ftp
如果提示bash: /bin/git-ftp: Permission denied,那么请用管理员权限运行git bash
我理解以上步骤就是复制git-ftp文件到git/usr/bin下,应该可以直接在github上下载git-ftp到git/usr/bin下,但我没试过,有兴趣可以试验下。
三、创建git仓库(先在本地新建一个文件夹在文件夹里面打开git bash,我的是右键就有这个选项)
然后执行以下命令:
git init
git config git-ftp.url ftp://www.baidu.com/www
git config git-ftp.user ftp的用户名。
git config git-ftp.password 这里写FTP的密码
(说明:git-ftp:url 后面写的格式是ftp://aa/dd----aa就是你的ftp工具里面的ip,dd就是某个文件夹,我的代码都是在www文件夹下面的)如图:
四、查看配置信息
这时,你的文件夹里面会有一个.git文件
(默认是隐藏属性的,如果想看,win7下,alt+F=>选择工具=>选择文件夹选项=>选择查看按照我的设置:如图)
五、安装lftp
(本人不才,第一次安装我研究了一上午才搞明白,网上的教程都没说怎么安装choco,还有的说用chcon install lftp,我査了一下没有这个命令)。首先需要安装一个choco“插件”,(不知道叫插件对不对,词穷,只能用“插件”了)
第一步:打开cmd命令框(这个程序员都会把?)
第二步:打开之后什么都不用管,直接输入下面的文本,切记一定不能有差错。
(警告:如果安装有360杀毒软件的同学,这里会有弹框出现,请允许修改。否则会报错)
@powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin
安装详细地址:https://nwgat.ninja/install-lftp-in-chocolately/
打开之后是这个界面=>如图
这个过程需要等一会,切记:没安装完不要关闭cmd,因为半路关闭,鬼知道会发生什么。安装过程会出现一些黄色的语句(都是看不懂的)都不用管,一直到安装结束。
安装结束咱们回到git bash,输入choco,看下安装成功了没。
如果安装成功,那就执行:choco install lftp.(如图)
六、准备拉取项目
请先执行一下 git branch,如果不显示分支,那需要做一下操作:
1. 执行 touch test.txt(建立一个文件)
2. 执行git add .
3. git commit -m "xxxxxx"
再次执行 git branch ,是不是就发现有个 master 了
下面执行:git ftp pull 试试吧!
Tips: git ftp的命令和git稍微有些区别,请看文档:
https://github.com/git-ftp/git-ftp/blob/master/man/git-ftp.1.md
最好是看看上面的连接说的比较详细
我理解:git ftp是通过远程创建.git-ftp.log文件进行版本管理的。
git ftp init 用于本地有提交,远程ftp url为空,上传所有提交到远程并创建.git-ftp.log
git ftp catchup 用于远程有内容,本地是空库,在远程创建.git-ftp.log,再git ftp download
常用的就是下面两个了:
git ftp pull 拉取
git ftp push 推送
到此,大功告成!Happy的玩耍吧~!