This is the blog of Adam Kalsey. Unusual depth and complexity. Rich, full body with a hint of nutty earthiness.
Freshness Warning
This blog post is over 20 years old. It's possible that the information you read below isn't current and the links no longer work.
7 Jul 2003
Like most Web developers, I use FTP a lot. I also use CVS to manage the files on the sites I build. So here’s where the problem comes in. CVS creates a few files and directories alongside the directories and files that make up my Web site. So when I upload a site via FTP, there are CVS
and .cvsignore
files all over the site.
Currently, to get around this, I run a CVS Export command to make a clean copy of the site, without any CVS directories or files. I then upload that copy of the site to the server. There are several problems with this. When I use the Tortoise CVS client to run the export, empty directories are not exported. Empty directories are often cache directories for whatever application I’m developing. The files within them aren’t stored in CVS, so the export doesn’t end up creating the directories. I have to go and add them in manually.
I also hate to run an export just to get the latest copies of two or three directories that changed. It’s easier to just copy the files over from my projects directory.
So what I need is an FTP program that will let me filter the files that get uploaded. Anything called CVS or .cvsignore wouldn’t get uploaded. Anyone got an FTP client that does this?
Sure, if I was using Unix on my dev machine and I wanted to write something myself. I'm being lazy. I want a Windows GUI client that does it all for me already.
Can't say I've seen any GUI programs that will do this. On the other hand: Sitecopy seems handy: http://www.lyra.org/sitecopy/ - there is a windows/cygwin port.
I recommend SmartFTP ( http://www.smartftp.com ). So far the best and most underappreciated FTP client for Windows I came across. BTW: The filter works both with simple strings and regex.
CuteFTP has filters and lets you set them permanently for specific "sites."
FTP Voyager ( http://www.ftpvoyager.com/ ) supports filters as well.
Just for the record, Python is a superb tool for script-style tasks on Windows. Since Python has an ftp module included in the standard library ("Batteries included") it probably wouldn't take very long to knock up a simple Python script to do this. Of course, if you haven't learnt Python yet a GUI tool would probably be a lot quicker ;)
This discussion has been closed.
Arve
July 7, 2003 5:43 PM
Wouldn't a bit of clever shell scripting together with ncftpput do the job?