Module: Rdiff3
- Defined in:
- lib/rdiff3.rb,
lib/rdiff3/version.rb
Constant Summary collapse
- VERSION =
"0.0.3"
Class Method Summary collapse
- .diff(original_string, original_tag, new_string, new_tag) ⇒ Object
- .merge3(my_string, my_tag, old_string, old_tag, your_string, your_tag) ⇒ Object
Class Method Details
.diff(original_string, original_tag, new_string, new_tag) ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/rdiff3.rb', line 30 def self.diff(original_string,original_tag,new_string,new_tag) home_dir = ENV['HOME'] default_dir = `pwd`.chomp Dir.chdir(home_dir) now = Time.now now_text = now.strftime("%Y-%m-%d-%H-%M-%S") working_dir = "#{SecureRandom.hex(3)}-#{now_text}" Dir::mkdir(working_dir) original_file_name = working_dir + "/" +original_tag new_file_name = working_dir + "/" +new_tag File.write(original_file_name, original_string + "\n") File.write(new_file_name, new_string + "\n") Dir.chdir(working_dir) text = `diff -u #{original_tag} #{new_tag}` File.delete(original_tag) File.delete(new_tag) Dir.chdir(home_dir) Dir::delete(working_dir) Dir.chdir(default_dir) text end |
.merge3(my_string, my_tag, old_string, old_tag, your_string, your_tag) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/rdiff3.rb', line 5 def self.merge3(my_string,my_tag,old_string,old_tag,your_string,your_tag) home_dir = ENV['HOME'] default_dir = `pwd`.chomp Dir.chdir(home_dir) now = Time.now now_text = now.strftime("%Y-%m-%d-%H-%M-%S") working_dir = "#{SecureRandom.hex(3)}-#{now_text}" Dir::mkdir(working_dir) my_file_name = working_dir + "/" +my_tag old_file_name = working_dir + "/" +old_tag your_file_name = working_dir + "/" + your_tag File.write(my_file_name, my_string +"\n") File.write(old_file_name, old_string + "\n") File.write(your_file_name, your_string + "\n") Dir.chdir(working_dir) text = `diff3 -m #{my_tag} #{old_tag} #{your_tag}` File.delete(my_tag) File.delete(old_tag) File.delete(your_tag) Dir.chdir(home_dir) Dir::delete(working_dir) Dir.chdir(default_dir) text end |