Nowadays, most FLOSS (free/libre/open-source software) projects have a public code repository, which everyone can browse. But historically this wasn't always the case.
Part of the reason was of course that in the early days of free software, the tools for version control weren't as good as they are today (CVS, the first freely available version control system that managed whole projects and not just individual files, only appeared in the late 1980s). Another reason was that many people didn't have enough bandwidth to download sources, they could only get sources on tape or CD. Since distribution was infrequent, there was little motivation to get the whole change history. It was common to include a summary of changes in a changelog file (a tradition that most projects either have abandoned, or keep going by generating the changelog from the VC history).
Beyond the technical issues, there were philosophical differences. It's been a long time, and I'm working from memory, so I'm afraid I don't have references; I'll try to find some (probably old mailing lists). There definitely have been disagreements as to the importance of making all development public. In particular, GNU projects did not do so, for a long time. For the first 20 years or so of the project, only new beta or release versions were released, not intermediate working revisions, and this was presented as a normal thing, not a technical limitation. The OpenBSD project, in particular, criticized this model, and claimed that it was important to make the whole project history public in real time. So transparency was a major virtue for OpenBSD, but irrelevant for GNU.
Some famous FLOSS projects that kept their development hidden for a long time include TrueCrypt and NetHack. With both of these effectively stopped, I can't think of any remaining major FLOSS project that develops behind closed doors, apart from projects maintained by companies as an enabler of their main business (such as Android), with open source chosen not for philosophical reasons but for practical reasons (ability to reuse existing open source code, encouragement for third parties to tune the software). I think that nowadays, most supporters of free software consider transparency during development the norm, whether they consider it philosophically important or not.