I want all project files like source code to be part of the repository. For simplicity reasons all work is done on the development branch. Furthermore, I want to include additional project material like pdf files. I do not want to add them to the development branch. Until now I came up with the following strategies.
- Strategy 1 is to create a separate branch material and add the pdfs. The branch shares some history with its parent branch.
- Strategy 2 adapts the first strategy but also merges the commits of the material branch into the development branch from time to time. (I do not want this, and it is a pita.)
- Strategy 3 is to create an orphan branch that does not share the history of the source code, for example.
- Strategy 4 is to follow strategy 1 or 3 and additionally create a submodule that represents only the material branch of the "main" repository. If this is possible the working directory would show the development branch and the material branch at the same time.
The disadvantage to all strategies is that I can not access the files in the working directory when I checked out another branch.
How can I work on the development branch and at the same time have the material available in the working directory? If it is easier to you to imagine, the material could also be the documentation.
Edit: I added strategy 4. after reading Seth Robertson's answer.