Skript/utilita pro adresářový diff

Youda

Skript/utilita pro adresářový diff
« kdy: 10. 02. 2017, 12:22:04 »
Cau potrebuju poradit skript/utilitu, jak si vyrobit cosi jako adresarovy diff.

Mam adresarovou strupturu /opt/* na produkcnim systemu, ktery je uplne odriznuty od site. Zmeny se provadeji primo na produkcnim systemu a jendou za cas si prinesu komplet skrukturu na flashce a zmeny presypu do /opt/* na devel stroji a zmenene soubory uploadnu do SVN s prislusnym komentarem. (SVN ma bohuzel odlisnou struktutu a nemuzu to rovnou nalejt do sandboxu)

Protrebuju neco, co mi udela seznam novych/modifikovanych/smazanych rouboru mesi dvema adresarovyma strukturama.

Any ideas?
« Poslední změna: 12. 02. 2017, 21:38:45 od Petr Krčmář »


MP

Re:Skript/utilitu pro adresarovy diff
« Odpověď #1 kdy: 10. 02. 2017, 12:38:36 »
Neumi to rsync nebo jakkykoli sync nastroj?

Re:Skript/utilitu pro adresarovy diff
« Odpověď #2 kdy: 10. 02. 2017, 13:04:25 »
Tak co třeba
  • diff --recursive dir1 dir2
  • meld dir1 dir2
  • použít přímo vhodný systém pro správu verzí
No a jinak hlavně opravit celý postup, takhle to je docela obskurní. Zaprvé je riskantní dělat změny na produkci (to asi ale víte) a zadruhé by vám problém s přenášením změn z offline stroje vyřešil nějaký distribuovaný systém pro správu verzí. Já používám fossil, který používá jako repositář jediný sqlite soubor a ten lze triviálně otevřít přímo na produkci třeba  z flashky, rovnou porovnat se změnamí, zanést okomentované změny, zase zavřít a odnést. Ty změny můžete pak jedním příkazem přenést do hlavního online repositáře. Akorát je trochu problém to svn, fossil umí spolupracovat s gitem, ale se svn přímo ne. Takže buď opustit svn anebo zkusit vyřešit jinak (skriptem, exportem nebo použitím jiného systému než fossil).