you were hacked? want to prevent next one?

Good to see there's a group trying to maintain the valuable Truecrypt project. What's left of it. I myself do high assurance security engineering work, research, etc. Only kind that beats TLA's. Commercial work is NDA'd, but I post many designs & evaluations on Schneier's blog to help people learn *real* security. The problem you are having is luckily one I've covered a few dozen times: a combination of endpoint, network, and SCM security. Yours appears to be a distributed project without much resources, limited personnel for custom SCM work, and plenty of untrustworthy machines between you. So, my old methods might be too heavyweight for this project. I've modified them into three barebones solutions to your problem if you're interested.
High Assurance & Cheap, But Laborious
This is a variant of my old KVM-based MLS system that works very similarly to TinfoilChat. You essentially use three computers. The Receiver can be something cheap like a NetTop or hand-me-down PC. It just needs to display code people send you and do initial GPG checks. The Sender is has a compiler, IDE, and signing mechanism. The code is typed by hand into the Sender. The source and/or binary are archived, signed, and sent to third PC via one-way media. Such media can be a data diode (see Tinfoil's version), CD-R or anything else that's ultra simple to demonstrate one-way property. The third PC is internet connected, maybe your default PC. Development happens by signed code or messages exchanged among project members. Each member looks at Receiver, verifies the code, ensures everyone has about the same version, and manually types it into Sender. Sender keeps the master copy. Now, issues like whitespace can keep the hashes/signatures from syncing. Code guidelines can help here but it comes down to two main options: work extra to ensure documents are all exactly the same, releasing one thing; each person releases their copy, verifying others are at least semantically equivalent, and user downloads one of many releases at random. Extra security measures can be put into Receiver or Network systems to increase availability of the system.
Medium Assurance and Cheap, Less Painful
Another option involves a trusted third party, likely a hosted server. The host might even be a dev, preferrably the best at secure configuration + with a good WAN. The server runs a hardened OS with firewall configured to only accept authenticated, encrypted connections (eg SSH) from dev team members. The developers machines, Windows or otherwise, go through a hardened proxy device that only communicates with the SSH server. The machines never get unrestricted access to Internet. Proxy might be a stripped down Linux or BSD. Firewall or VPN distro's exist that might make this easier. Developers exclusively share source, documentation and messages through the SSH proxies and server. The software installers or updates for development machines are hashed, verified and checked on many (non-Developer) machines before being put onto Development machines. Critical information about them, such as hashes and behavior during testing, is shared among the team via SSH channel. The code is transferred via a one-way media.
Just remember that the goal is that the Trusted Computing Base of the solution, hardware to software, must be simple enough to estimate a level of confidence in the method. And the kind of attackers hitting you mean mainstream COTS/FOSS configurations aren't good enough. You need Medium at the least, with High if you can stand it. You can create a hybrid, as well, where you do most of the development on Medium-rated systems and networking, but critical parts with a High-rated method. So, you'd have the Medium assurance build above with an extra dedicated PC that you manually typed the info in, made the hashes match, did the build, signed it, and released it onto one-way media. Everyone's release should agree. The Medium assurance portion is for rapid development & communication. The high assurance addition keeps the release key safe, eliminates most of the your development TCB, is redundant for hardware, and is a check against malicious/unreliable project members.
Hope these tips get you all in the right direction far as securing your development and release process.
High Assurance & Cheap, But Laborious
This is a variant of my old KVM-based MLS system that works very similarly to TinfoilChat. You essentially use three computers. The Receiver can be something cheap like a NetTop or hand-me-down PC. It just needs to display code people send you and do initial GPG checks. The Sender is has a compiler, IDE, and signing mechanism. The code is typed by hand into the Sender. The source and/or binary are archived, signed, and sent to third PC via one-way media. Such media can be a data diode (see Tinfoil's version), CD-R or anything else that's ultra simple to demonstrate one-way property. The third PC is internet connected, maybe your default PC. Development happens by signed code or messages exchanged among project members. Each member looks at Receiver, verifies the code, ensures everyone has about the same version, and manually types it into Sender. Sender keeps the master copy. Now, issues like whitespace can keep the hashes/signatures from syncing. Code guidelines can help here but it comes down to two main options: work extra to ensure documents are all exactly the same, releasing one thing; each person releases their copy, verifying others are at least semantically equivalent, and user downloads one of many releases at random. Extra security measures can be put into Receiver or Network systems to increase availability of the system.
Medium Assurance and Cheap, Less Painful
Another option involves a trusted third party, likely a hosted server. The host might even be a dev, preferrably the best at secure configuration + with a good WAN. The server runs a hardened OS with firewall configured to only accept authenticated, encrypted connections (eg SSH) from dev team members. The developers machines, Windows or otherwise, go through a hardened proxy device that only communicates with the SSH server. The machines never get unrestricted access to Internet. Proxy might be a stripped down Linux or BSD. Firewall or VPN distro's exist that might make this easier. Developers exclusively share source, documentation and messages through the SSH proxies and server. The software installers or updates for development machines are hashed, verified and checked on many (non-Developer) machines before being put onto Development machines. Critical information about them, such as hashes and behavior during testing, is shared among the team via SSH channel. The code is transferred via a one-way media.
Just remember that the goal is that the Trusted Computing Base of the solution, hardware to software, must be simple enough to estimate a level of confidence in the method. And the kind of attackers hitting you mean mainstream COTS/FOSS configurations aren't good enough. You need Medium at the least, with High if you can stand it. You can create a hybrid, as well, where you do most of the development on Medium-rated systems and networking, but critical parts with a High-rated method. So, you'd have the Medium assurance build above with an extra dedicated PC that you manually typed the info in, made the hashes match, did the build, signed it, and released it onto one-way media. Everyone's release should agree. The Medium assurance portion is for rapid development & communication. The high assurance addition keeps the release key safe, eliminates most of the your development TCB, is redundant for hardware, and is a check against malicious/unreliable project members.
Hope these tips get you all in the right direction far as securing your development and release process.