Q:

Setting Up a Development Environment

I am part of an organization that is formalizing their software development processes/capabilities/etc. While the organization is not traditionally a software organization, they want to do this right and provide the developers who work in the organization (which includes me) a solid set of tools in which to work from.
In particular, we are looking at standing up: source control, bug tracking software, documentation tools (for the developers - not for end-users), and, in general, project management software (continuous integration, project tracking, code review, software push). Some of the high-level requirements are:

Free is better. While we will consider purchasing tools, there is so much support in the FOSS community for development tools, I want to look there first.
Integration across systems. (For example, the bug tracking software should be able to link back to the source control.)
Easy to Import To and Export From. I do not want lock-in.
(Relatively) Easy to learn.

At this point, here is what I am looking at so far as my recommendations:

Source Control - Mercurial or Git - I am personally leaning more towards Mercurial based on my research and the fact that Mercurial appears to be easier to setup in our environment.
Bug Tracking - I'm at a loss here. I have used Bugzilla in the past, but, it makes me cringe when I use it.
Documentation - MediaWiki, Screwturn Wiki, Atlassian (of course, this costs money so that is not ideal)

I am looking for other suggestions of productivity tools/development tools that you have used. Please remember that we are a small organization, so I don't want to go over the top, but I do want to give developers good tools to use.

A:

Been through this before. Actually still living in it. You've generally got a good idea of where you are heading -- most folks doing this barely use source control. Alot of exactly what to use depends on which stack(s) you use. Can you share that?
Anyhow, running down your list:

SCM: really depends on environment. If you are on windows, Mercurial
tends to make a lot more sense as you aren't a 2nd class citizen. I
would seriously consider using a hosted solution here if your
software isn't too top secret and you've got solid bandwidth to take
advantage of it. One other side to this -- SVN isn't really that bad
in internal scenarios where you know you have connectivity and
central control make sense. And it has the advantage of being much
easer to grok for the uninitiated. I can get my art department to
somewhat use SVN. Good luck with git.
Bug Tracking/Documentation: I'm lumping these together because I'd
generally contend you want them in the same system. For small teams,
the best choice IMHO is Redmine (or Chili depending on
which fork you want to back). They both handle bugs and do
wiki/discussion type stuff. Moreover, it is easy to link from bugs
to the discussion or wiki and vice-versa. They can also easily take
tickets over email and hook up to LDAP, which makes it pretty easy
to get your end users submitting trackable tickets rather than
random emails to the wrong person at 2am on a sunday. Oh, and it
will talk to your SCM too.
You didn't mention Continuous Integration but I'd argue that is
perhaps more important than anything here but source control -- it
keeps you honest. To some extent what to use depends on what you are
building, but in general the best option out there IMHO is
TeamCity. The free SKU probably works for most internal uses as
20 projects and users is typically more than enough. The beauty of
it is it is so disturbingly easy to setup it is scary -- you can go
from zero to continuously integrated goodness in 5 minutes. 4 of
which are spent watching the installer go.

The other angle here would be to ask your developers what they want to use. Or setup some sort of slushy tools fund budget for them. New stuff pops up all the time and it is very, very app/platform/language specific what people want.

A:

I can suggest you Redmine .
Redmine is a flexible project management web application, that support these features : 

Multiple projects support
Flexible role based access control
Flexible issue tracking system
Gantt chart and calendar
News, documents & files management
Feeds & email notifications
Per project wiki
Per project forums
Time tracking
Custom fields for issues, time-entries, projects and users
SCM integration (SVN, CVS, Git, Mercurial, Bazaar and Darcs)
Issue creation via email
Multiple LDAP authentication support
User self-registration support
Multilanguage support
Multiple databases support

As you can see from the feature list, it is a complete development environment that can be integrated with several SCM program, if you feel comfortable with Mercurial you can use Mercurial perfectly integrated with Redmine .
Personally i'm using Redmine from 2 years and i never found something similar in this area, it is simply the best !

