Direktori "diff"?


8

Saya memiliki dua direktori yang merupakan versi berbeda dari paket perangkat lunak yang sama. Saya ingin mendaftar semua file / direktori yang telah berubah di antara keduanya lalu salin perbedaan tersebut ke direktori baru.

Saya sudah mencoba skrip yang berbeda dengan md5sumdan diff -Nurqtetapi belum bisa mendapatkan hasil yang saya cari.

Ada rekomendasi?


Apa artinya "menyalin perbedaan"?
cjm

Saya tidak mengerti apa yang Anda coba lakukan. diff -r(atau variasi) sudah memberi Anda perbedaan. Apa yang kamu coba lakukan dengan mereka?
Gilles 'SANGAT berhenti menjadi jahat'

Jawaban:


8

Anda harus menggunakannya rsyncsebagai gantinya. Sesuatu seperti rsync -rv $old/ $new/harus melakukan trik: ini akan mencetak file yang akan disalin.

Jalankan dengan tambahan -nuntuk dry-run sebelum benar-benar memodifikasi direktori baru.


5

Alat terbaik yang saya temukan menggunakan vim dengan plugin DirDiff . Jika Anda menggunakan vimdan vimdiff, Plugin ini akan mudah dipelajari.

Penulis menggambarkannya seperti ini:

deskripsi

Ini adalah utilitas yang melakukan diff rekursif pada dua direktori dan menghasilkan "jendela" yang berbeda. Berdasarkan jendela itu Anda dapat melakukan berbagai operasi diff seperti membuka dua file dalam mode Vim's diff, menyalin file atau direktori secara rekursif ke yang lain, atau menghapus pohon direktori dari direktori sumber.

DirDiff seperti menggunakan vimdiffuntuk membandingkan dua direktori, dan semua subdirektori dan file yang terkandung di dalamnya. Saya sering menggunakan alat ini untuk membandingkan cabang Subversion yang berbeda, direktori konfigurasi pada host yang berbeda, dll.

Untuk tangkapan layar, lihat blog dedm: http://dedm.livejournal.com/115224.html

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.