git-ftp 用git管理ftp空间
ftp管理不能实现版本控制,而且多电脑工作时,同步很成问题。
git-ftp可以完美的解决问题
下面是我的趟坑之路,本机的环境是win10,首先你的机器得装有git。
git-ftp的地址https://github.com/git-ftp/git-ftp/
一、安装git-ftp
查看install.md文件中关于windows的内容;主要说的是下载带sftp支持的curl,但实际上新版git装完,git bash里的curl支持sftp
在git bash中
$ curl -V
curl 7.53. (x86_64-w64-mingw32) libcurl/7.53. OpenSSL/1.0.2k zlib/1.2. libssh2/1.8. nghttp2/1.19. librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp scp sftp smtp smtps telnet tftp
Features: IPv6 Largefile SSPI Kerberos SPNEGO NTLM SSL libz TLS-SRP HTTP2 HTTPS-proxy Metalink
你会发现是支持sftp的,不用再安装curl直接在git bash中执行
curl https://raw.githubusercontent.com/git-ftp/git-ftp/master/git-ftp > /bin/git-ftp
chmod /bin/git-ftp
如果提示bash: /bin/git-ftp: Permission denied,那么请用管理员权限运行git bash
我理解以上步骤就是复制git-ftp文件到git/usr/bin下,应该可以直接在github上下载git-ftp到git/usr/bin下,但我没试过,有兴趣可以试验下,告诉我结果。
二、创建git仓库
在你要创建仓库的目录下执行,在cmd或git bash中都可以,文档中只说了git config,但在这之前
必须先git init创建一个空的仓库,否则没有.git文件夹,是不能执行git config的
git init
git config git-ftp.url ftp.example.net
git config git-ftp.user ftp-user
git config git-ftp.password secr3t
在你的仓库下.git目录下有个config文件,里面可以设置url,user,password
[core]
bare = false
repositoryformatversion =
filemode = false
symlinks = false
ignorecase = true
logallrefupdates = true
[git-ftp]
url = url
user = yourusername
password = yourpassword
三、进阶安装lftp
因为git-ftp 的有些命令(git ftp download;git ftp pull)需要用到lftp,所以需要安装lftp
在 git bash 中执行
chcon install lftp --version 4.7.
安装lftp
可以到 https://nwgat.ninja/lftp-for-windows/ 查看最新的lftp版本,也可以下载安装复制到git/urs/bin下,但可能会有冲突,没有自动安装好
四、git ftp 命令
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 推送
五、创建批处理文件,方便执行
在仓库目录下建一个pull.bat文件写入
git ftp pull
在仓库目录下建一个push.bat文件写入
git ftp push
这样就可以每次执行.bat 文件不用打命令了
git-ftp 用git管理ftp空间的更多相关文章
- 使用Bandwagon服务器ftp解决git clone速度慢的问题
写在前面 git clone速度往往很慢,我们可以先在身处美国的服务器上git clone,然后把文件用ftp传回来即可. 开始 我们以opencv为例 git clone https://githu ...
- 使用GIT进行源码管理——GIT托管服务
虽然GIT是分布式代码管理,但是仍然需要一个集中存储服务以实现团队协作和代码备份的.对于企业的私有代码来说,大多是自建GIT托管服务.但对于开源项目和个人的私有项目,往往是选择一个GIT托管网站,这样 ...
- Git学习(一) 版本号管理工具
Git 是一个分布式版本号控制工具.它的作者 Linus Torvalds 是这样给我们介绍 Git -- The stupid content tracker(傻瓜式的内容跟踪器) 1. Git ...
- 使用GIT进行源码管理 —— 在VisualStudio中使用GIT
GIT作为源码管理的方式现在是越来越流行了,在VisualStudio 2012中,就通过插件的现实对GIT进行了官方支持,并且这个插件在VS2013中已经转正.本文在这里简单的介绍一下如何在Visu ...
- Git标签和别名管理
一.Git标签管理 标签类似于快照功能,可以给版本库打一个标签,记录某个时刻库的状态,也可以随时恢复到该状态 例如给master打一个v1.0的标签 先切换到master分支上去git checkou ...
- Git远程和分支管理
一.远程 Git是分布式版本控制系统,最重要的优点就是远程仓库托管代码.不用自己搭建一个服务器,在github上面注册一个账户就可免费获取远程仓库. 首先需要先在github上面 ...
- git@oschina.net源代码管理使用日记
git的优势: 1 可以创建分支: 2 版本控制是基于每一次提交的,而不需要考虑每次提交了多少个文件. 下载: 下载网址为:http://git-scm.com/download,根据您的操作系统选择 ...
- Git 远程仓库的管理和使用
要参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库.远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写.同他人协作开发某 个项目时,需要管理这些远程仓库 ...
- 【git学习二】git基础之git管理本地项目
1.背景 git基础打算分两部分来说,一部分是对于本地项目的管理,第二部分是对于远程代码仓库的操作. git运行本地项目管理包含对于相关文件的追踪,暂存区的比較分析,提交,撤销等功能. ...
随机推荐
- 注册登录系统项目思路 -- javaweb
功能: > 注册 > 登录 --------------------------------- JSP: * login.jsp --> 登录表单 * re ...
- [Linux] PHP程序员玩转Linux系列-自动备份与SVN
我的代码经常在开发修改,为了代码的安全性,比如哪天误删了文件,或者哪天改错东西了,可以恢复回来,我要搞代码备份.备份代码,我先做最简单的,使用linux的定时机制加shell命令打包文件,每天按日期保 ...
- Zookepper(2015.08.16笔记)
2015.08.16zookepper Zookeeper 是 Google 的 Chubby一个开源的实现,是 Hadoop 的分布式协调服务(如同小区里面的供水.电的系统) 它包含一个简单的原 ...
- React-Native 开发(二) 在react-native 中 运用 redux
前提: 一个小web前端,完全不会android 跟iOS 的开发,首次接触,有很多不懂的问题.请见谅. 环境: win7 上一篇 : React-Native 开发(一) Android环境部署,H ...
- iOS开发之控制器创建与加载(生命周期)
1.如何创建一个控制器 控制器常见的创建方式有以下几种: (1)通过storyboard创建 (2)直接创建 MJViewController *mj = [[MJViewController all ...
- Linux云自动化运维第五课
Linux云自动化运维第五课 一.进程定义 进程就是cpu未完成的工作 二.ps命令 ps a ###关于当前环境的所有进程 x ###与当前环境无关的所有进程 f ###显示进程从属关系 e ### ...
- php中奖算法逻辑
最近公司有两个活动, 一个是砸蛋活动, 另一个是转盘活动. 后台这边需要做接口进行对接,当用户在前台点击进行抽奖的时候,发送AJAX请求给后台,后台进行业务处理包括记录用户中奖信息,然后返回json格 ...
- oracle索引(转)
引,索引的建立.修改.删除 2007-10-05 13:29 来源: 作者: 网友评论 0 条 浏览次数 2986 索引索引是关系数据库中用于存放每一条记录的一种对象,主要目的是加快数据的读取速度和完 ...
- HackerRank The Chosen One [预处理][gcd]
题解:tags:[预处理][gcd]故事背景:光头钻进了茫茫人海.这是一个典型の通过前缀后缀和来降低复杂度的问题.先用pre数组与suf数组分别维护前缀gcd和后缀gcd.如果 a[i] % gcd( ...
- 测试开发Python培训:实现屌丝的图片收藏愿望(小插曲)
测试开发Python培训:实现屌丝的图片收藏愿望(小插曲) 男学员在学习python的自动化过程中对于爬虫很感兴趣,有些学员就想能收藏一些图片,供自己欣赏.作为讲师只能是满足愿望,帮助大家实现对美的追 ...