I am currently working with -I suppose- a standard workflow :
- Master branch : Stable code
- Development branch : Development features
- XXX branchs : new_features branch
With following workflow :
*--*--*--*--*--*--*--*--*--*--*- (master)
\
*--*--*--*--*--*--*- (development)
\
- *--*--*--*--*- (new feature X)
My master branch includes documentation, examples and tutorials for all modules of my project
Project TOTO
|
|
--- Module pepito
| |
| ----Submodule alpha (src, docs, tutorials, examples)
| |
| ----Submodule beta (src, docs, tutorials, examples)
--- Module pepita
| |
| ----Submodule gamma (src, docs, tutorials, examples)
| |
| ---- Submodule delta (src, docs, tutorials, examples)
---- Module pepiti (src, docs, tutorials, examples)
This workflow is fine, but i would like a new branch "light" without docs, tutorials and examples like this :
Project TOTO
|
|
--- Module pepito
| |
| ----Submodule alpha (src only)
| |
| ----Submodule beta (src only)
--- Module pepita
| |
| ----Submodule gamma (src only)
| |
| ---- Submodule delta (src only)
---- Module pepiti (src only)
Since all my project have the same structure :
Main directory
- src
- docs
- examples
- tutorials
I would like to define a sort of "gitignore" that excludes pattern "docs", "examples" and "tutorials" when I merge from master to new "light" branch. Is it possible ?
I found some ressources like these : ignore a directory while merging or setupd a git driver to ignore a folder
But they don't fit my workflow (1st link) or seems to be an overkill (2nd link)
Is there a simple way to get the requested behavior or should I change my workflow ? Thank you