Я бы серьезно подумал о Mercurial. Это распределенная система управления исходным кодом, обеспечивающая те же функциональные возможности, что и любая из систем, но поддерживающая среду без установления соединения. Что это значит? Классически существует один общий сервер, источник. Клиент подключается к сети, создает снимки, изменяет файлы и снова возвращает их на сервер. Это означает, что вы должны быть в сети, а сервер должен быть в сети.
С Mercurial все по-другому. Да, там все еще есть мастер-копия. Однако, прежде чем идти туда, код на самом деле проверяется локально. Это означает, что существует абсолютная свобода в том, сколько изменений вы внесли до того, как код окажется повсюду. Ветвление также очень простое и эффективное ... Ну, я просто предлагаю, прежде чем вы сделаете свой выбор и выберете SVN или CVS или Perforce или, не дай Бог, TFS, также внимательно рассмотрите Mercurial.
Что касается отслеживания ошибок, Jira - система, широко используемая большинством небольших компаний. Очень эффективный, настраиваемый, подходит для SCRUM, поддерживает рабочий процесс, множество плагинов и простую интеграцию с Fisheye и т. Д.