views:

764

answers:

9

Hi.

Does anyone knows about any tools allowing to compare two almost exactly same websites?

Simply, I have a sandbox site and production site, and would like to find out the difference between them, to know what content to move to production site.

Thanks!

Edit:

Ok, I see I missed a critical piece of information (sorry!). The both sites are online and based on CMS (Drupal), hence I need some crawling tool which would run over the two sites, and show what pages present in sandbox, but not on production.

Thanks for everyone who answered regardless!

+4  A: 

WinMerge is a free/open source tool that allows you to compare files and directories.

You can show files which are identical, different or exist in only one directory. And you can then make both directories identical, by copying files from one directory to the other.

M4N
+2  A: 

Beyond Compare ... pure awesomeness

matt_dev
An amazing tool, I've used it for some serious debugging. Loved it (and I usually hate most PC software).
Paul W Homer
I think it's probably the only software tool that has and will make me smile every time I think about it ;-) Developers I work with are always so worried about merging branches and I'm always like ...eh... that's no problem!
matt_dev
I really like WinMerge, it makes merging source code or updating production web sites so easy. But since I do not know Beyond Compare, do you know what it's advantages are compared to WinMerge?
M4N
Martin...check out this blog on Jeff's site. It may give you a little more info. http://www.codinghorror.com/blog/archives/000153.html I haven't used WinMerge in a long time but what I didn't like about it in the past was the UI. BC has a sweet UI that makes it cake to use right off the bat.
matt_dev
A: 

Beyond compare is great. Syncback (http://www.2brightsparks.com/downloads.html) has a free version and you can use any merge tool like araxis or winmerge

A: 

Put your code into Subversion or some other source control. When ready to deploy, 'svn update' will update only the things that have changed.

'svn diff' will show the differences.

Chris Doggett
A: 

DiffMerge is another free cross platform tool that supports directory diffs.

RossFabricant
A: 

Meld is good for this if you're running Linux. It's available in Debian/Ubuntu repositories.

Judson
+1  A: 

Use wget to crawl the sites, the compare the content with some diff tool.

Or, use a diff tool on the script files, and then dump the DBs in a text (csv) files, and compare.

Sunny
Thanks, going to try the DB approach too.
SyRenity
+3  A: 

As sunny said, use a crawler and a diff tool.

For the crawler I'd prefer httrack over wget. Many sites use images referenced from css nowadays. wget was not able to load files referenced from css when I last checked. Besides that it has a nice GUI.

As of the diff tool: I use FileSync since the Windows 3.1 days. There are certainly more fancy diff tools but this one is lean and clean an does the job. On unix you can always do diff -r. If you have eclipse on your machine it has a nice diff viewer which can compare two directories as well.

Ludwig Weinzierl
Thanks, this what I tried.
SyRenity
+1  A: 

Use httrack to pull down a copy of the sites, and then your favourite file comparing tool to review the differences. (I prefer WinMerge, which can recursively run though two folders of files, has options to ignore whitespace differences and blank lines, and even runs well under Linux using WINE.)

P.S. You might even want to run your downloaded HTML files through HTML Tidy to normalise/pretty format them before doing the comparison.


The other way to do it would be a database comparison. You would still do the file comparison of the raw website files (not the spidered version) too though. From memory, the schema for a Drupal database isn't too hard to follow, particularly if you are just primarily interested in node content.

Evan
Thanks for the comprehensive answer!
SyRenity