GIT 提交至 FTP 站点

GIT 提交至 FTP 站点

我正在做一个项目,其中我只能通过 FTP 控制服务器。我基本上是手动将 GIT 提交的更改部署到服务器。

有没有什么方法可以自动化这个(不需要自己编写脚本,我即将这样做),而不需要在服务器上安装 git?

答案1

我认为你需要的是git ftp。无论如何,我从来没试过。

答案2

在等待答案的时候,我做了这个。不过现在我必须按照 David Costa 的建议检查一下 git-ftp。这个脚本实际上什么也不做:它只是给你提供你自己的 FTP 命令。

#!/usr/bin/env ruby
if __FILE__ == $0
  puts "Pulls file list between two git commits and makes ftp commands"
  if ARGV.length != 2
    puts "Sorry, include two hashes as arguments separated by spaces"
    exit
  end

  hash1 = ARGV[0]
  hash2 = ARGV[1]

  command = "git log #{hash1}..#{hash2} --name-status --pretty=\"%p\""

  results = `#{command}`
  results = results.to_a[2..-1].join

  lines = results.to_a
  lines.each do |line|
    modifyAddDelete = line[0..0]
    if (modifyAddDelete=="M" || modifyAddDelete=="A")
      command = "put"
    elsif (modifyAddDelete = "D")
      command = "delete"
    end
    filename = line[2..1000]
    puts "#{command} #{filename}"

  end

end

相关内容