Expand the 101 series by adding a post about managing a project's source tree.
Salient points to cover:
- Pitchfork layout (quick brief + hyperlink)
- Include paths and directories
- Why
#include <> and not #include ""
- How to add include paths for a CMake target
- How to organize include paths and subdirectories for modular and portable
#includes
- Why lowercase filenames
.gitignore setup
out/, build/, .vscode/, .cache/ etc
compile_commands.json
- Branching strategies
- Continuous vs versioned software; C++ projects are the latter
- "The" git branching model vs GitHub flow
- All branches must converge to a "common future"; only exception is automated branches like
gh-pages (not applicable for C++ projects)
- Minimize number of persistent branches
- Use short lived feature / topic branches for development
- Use tags to mark versions on commits (useful for releases and libraries)
Expand the 101 series by adding a post about managing a project's source tree.
Salient points to cover:
#include <>and not#include ""#includes.gitignoresetupout/,build/,.vscode/,.cache/etccompile_commands.jsongh-pages(not applicable for C++ projects)