views:

2805

answers:

7

I currently use Notepad++ for most of my development. I have been checking out other, more full-featured options and would like to switch (I'm in particular a fan of Aptana so far) but there is one thing about Notepad++ that I really like and I haven't been able to get so far.

My current workflow is something like this: Workflow (I tried to embed this image and it showed up in previews but not in the post, sorry)

The process is this:

  1. Download file from web server
  2. Make edits in NP++
  3. Save (this automatically saves a local copy in my default directory, which is also the folder I have setup using Subversion with Tourtise SVN)
  4. When I want to commit a change to SVN, go through the local folder that has an up to date copy

What I can't figure out how to do with Aptana is automatically store a local copy of a file I download from my server, edit and save back to the server. Is there some way to do this? If so, that would solve my problem immediately.

Other options would be a suggestion for a better way to manage the relationship between my server, my editor and my SVN repository. I know Aptana can access my SVN repository too. Is there an easy way to commit changes from within Aptana when I want to (which means I could take Tourtise out of the equation I guess)?

Any suggestions appreciated. Thanks.

+2  A: 

Not too sure but I found PhpEd better than Zend for this kind of stuff - especially easy save to FTP.

Graphain
A: 

Eclipse has a plugin called RSE allow you to work on remote sources thru ssh,ftp etc. You can use PDT but I guess it may work on Aptana as well.

I'm using the Zend Studio For Eclipse which has both SVN and RSE built in. I'm guessing it's the same in PDT (after installing the RSE plugin), you can either work directly in the RSE perspective or add a remove folder to your project (you can do this only after adding connections in the RSE)

BTW, I found the following link that can give you some more options for remote machine: http://wiki.eclipse.org/index.php/TM_and_RSE_FAQ#Working_with_TM_.2F_RSE_as_a_User

+1  A: 

If you want free general purpose IDE (which supports many languages,as well as Php) - then you should give a try to PsPad www.pspad.com. It can handle ftp very well If you going to do alot of Php programming - then you have several dedicated (but not free) Php IDEs. PhpEd, PhpEdit, Php Designer, WeBuilder - each one of them have their pros and cons , all of them support ftp .

A: 

I currently have Eclipse installed with the Aptana plug-in so I have access to all of the cool features of Aptana.

You can either install Subclipse or Subversive for Eclipse which would effectively take care of needing TortoiseSVN. See: http://subclipse.tigris.org/install.html

Additionally, you can choose between installing and configuring PDT for Eclipse or using the Aptana PHP plugin (I've used both and I don't find that I necessarily prefer one over the other).

Lastly, both Aptana and Eclipse provide ftp and sftp support:

http://www.aptana.com/plugins

http://www.eclipseplugincentral.com/Web_Links-index-req-viewlink-cid-857.html

Noah Goodrich
A: 

I found Beyond Compare of Scooter Software to be a great tool for such needs.
Beyond Compare is a very valuable file and directory differ and merger for Windows and Linux which also is able to have one of the directories as ftp-link.

Beyond Compare even has a special plugin for source control systems, which unfortunately does not interact with the server, but is able to understand conflicts, for example.

lImbus
+7  A: 

I think you're doing things a bit strange.

You already have all your information in an SVN repository, so why not take advantage of that?

You keep a working copy on your computer for development and testing. Save and commit your changes to SVN. On your server, do an SVN export (or checkout, with appropriate server rules to block web access to the .svn folders), and you're sweet!

----------------------         ------------         ---------------
| Local Working Copy |  <--->  | SVN Repo |  <--->  | Live server |
----------------------         ------------         ---------------

This means you never have to worry about FTP, or have to figure out which files have been changed locally and hence need to be updated.

nickf
+1 for added effort of making ascii art.
Noah Goodrich
How would you push you php-scripts from the SVN-Repo to a Live Server in another datacenter?
Jacco
log in to the server via SSH and run "svn update". You could also set up a PHP script to do that for you, but you might have issues with permissions on the files, since it'll be running as the apache user or something.
nickf
nickf, that does look like a good alternative. I know this is outside the realm of this thread, but could you point me toward any resource on how to setup that SVN -> Server portion? I know this is probably a super easy question, but I'm only a hobbyist developer and just recently started using SVN.
Evan
the copy of your code on the live server is actually just another working copy. you can treat it exactly as you do your local copy, except you obviously don't edit/commit those files. There's a strong argument to use SVN export, but AFAIK that does a full export, rather than just updating the...
nickf
...files which have changed, so I personally prefer updates/checkouts. Of course, this means that your repo must be internet-accessible, so the server can contact it. Take a look at assembla.com for free/cheap SVN hosting.
nickf
A: 

I'm in the same position as the original poster. I have an awful lot of separate sites that I was editing locally then uploading to ftp server to test. A friend showed me SVN, and now I send commits via tortoise. That suited me just fine.

Since I started using a dual screen system Notepad++ keeps randomly failing so I need a new editor. Aptana seemd to fit the bill, but it has too much crap in there for me to work the way I'm used to - and frankly I don't have time to completely rebuld the way I work.

Referring to nickf's suggestion - how do I test things in place (with all the asociated file structures, includes, and data files stored on the webserver - many of which are changing constantly as my users make changes to their settings etc) on the FTP server, if I have to commit first then go to putty, checkout stuff from svn to my webserver, only to find out I made a typo? Seems ridiculous - am I missing something? Surely I can't be the only one in this position?

Any other suggestions that will actually work in the real world?