This question is a follow up for this question: https://stackoverflow.com/questions/2083020/need-some-advice-about-web-development-project
I would like to know if there are techniques or tools we could use in order for us to do our project effectively. To make this more specific, I'm basically looking for something that will help us work on the source files together and see changes, etc. (As opposed to emailing each other the .html, .php files and then reviewing the changes)
Does an SCM make sense here? Or should I be looking for something else?
You obviously want to use source control. Its one of the basics for working on software - you'll be quickly laughed at for not doing so. Its really pick your poison - I would strong recommend Git via a site such as Github or Gitorious, though there is nothing wrong with using Git in a purely distributed nature.
Other candidates are Mercurial, Bazaar, and Subversion. Subversion requires setting up a server, though its very simple (yet limited) model may suffice for you.
For communication, KISS is my philosphy - e-mail is not broken, use that. There are project management applications, but they require effort to administer and use, which could be used writing software. As your team scales, more administration is inevitable, and there more tools can help.
As far as I can gather the main driving factors, and please correct me if I'm wrong, in you situation for establishing the collaboration environment are:
Taking all of the above into account I suggest using one of the existing Open Source hosting platforms:
From what I understand it doesn't seem there going to be any value added to this project by rolling your own dev enviroment, just extra work and risks.
Without source code control, you simply cannot do anything useful.
I use subversion.
As for project tools, maybe assembla.com, with opensource option?
I like and use it, though you might want to use the standard FOSS sites mentioned by Totophil
Paid option also exists and assembla.com is cheap - around $2-$3 per month per user (opensource is free)
Using a SCM is a minimal requirement for serious programming period.
I can't figure how some people can code (even alone) without using one. There is a lot of good and free SCM (my favorites are Git and Mercurial) out there, there is no excuses not using one.
Collaboration can be achieved in many ways. Minimal solution would be E-mails, forums, mailing list, irc channels, skype (or other instant messaging software), etc. If you want more visibility and better integration with your SCM, you can check out tools like Redmine, Trac (self hosted) or Assembla, GitHub, SourceForge, BitBucket (source code hosting providers).