I\'ve looked into many open source software repositories, and I\'ve found some c
ID: 660092 • Letter: I
Question
I've looked into many open source software repositories, and I've found some common elements and somethings people do in different fashion from one another.
For example, every repository has a README file, a INSTALL file, a COPYING file and stuff like that.
Other things differ:
Some projects, like git, have their source code in the root level, while others have the source code in a src/ folder and others, like the Linux kernel, have the source code spread in different folders in root level, that divide code by areas;
Some have their tests in a t/ folder, while others in a tests/ folder, or named otherwise;
Some have files about submitting patches and who the maintainers are, and those might be inside some Documentation/ or in the root level.
Are there recommendations? A best practice?
For example: personally, I don't like the code in the root level, git-fashion. It looks messy and confuses one trying to start as a contributor (especially because they have some code inside folders, and scripts in the root level as well, it's really messy).
If I were to start a project of my own and wanted to start right from the start, are there recommendations? Best practices? How can I make a clean and clear structure?
Explanation / Answer
Reserve your root for misc bits (so you have a place for misc related directories and files which may be valuable to store in your repository), start your source tree one level down. To accommodate a place for multiple components perhaps add a second level for your first component.
If your are using git you can always reshape later, don't worry about it too much.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.