GIT Berkomitmen untuk Situs FTP


3

Saya mengerjakan proyek di mana saya hanya memiliki kontrol FTP server. Saya pada dasarnya menyerahkan perubahan dari komitmen GIT ke server.

Apakah ada cara untuk mengotomatisasi ini (tanpa menulis skrip sendiri, yang akan saya lakukan), tanpa dapat menginstal git di server?


Anda juga dapat mendorong ke repo telanjang lokal, dan kemudian menyinkronkannya pada tingkat fs dengan alat ftpsync. Ini bukan solusi apa-apa jika repo di ftp digunakan oleh banyak orang.
peterh

Jawaban:



3

Sementara saya menunggu jawaban, saya memasak ini. Meskipun sekarang saya harus memeriksa git-ftp seperti yang disarankan David Costa. Script ini sebenarnya tidak melakukan apa-apa: itu hanya memberi Anda perintah untuk FTP Anda sendiri.

#!/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
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.