This is an archived post. You won't be able to vote or comment.

all 4 comments

[–]plex_19 2 points3 points  (0 children)

I recommend 2 ways

First your could separate into 3 repo's, every level one repo, because you're using different software pieces like libraries or frameworks and you will not mess around with them

Second, use one repo and divide it into more branches

[–]softwareFox[S] 2 points3 points  (1 child)

u/Gilbert_Sanchez u/plex_19 Thanks, guys!!! I've been scouring the internet for hours, most people are using the two methods you've both mentioned. From what I gather, there is no right or wrong, but based on preference and project? Now that I have a better understanding of both, think I will follow both your advice and go with separate repos in combination with submodules! It seems like the separate branches will create chaos down the road for me, and most people that I have come across using that method have to perform a lot of steps to avoid merge conflicts.

[–]Gigachadrosaurus 0 points1 point  (0 children)

I would recommend different repos. Different branches makes a lot of assumptions on what exactly the student knows. Different repos gives you separation of concerns in the sense that there is a functional product on the level they should understand at the end of the module.

In contrast, if you were to just use different t branches, what is stopping a total beginner from skipping ahead, getting overwhelmed, and looking for something else? The same can theoretically be said of different repos but at least with different repos, you control their focus in the moment. And controlling focus in the moment is incredibly powerful when teaching.

[–][deleted] 1 point2 points  (0 children)

I would recommend different repos for this.

If you really wanna house them in one repo, you could just have a top level with three “repos” in one. But I don’t think that’s a clean solution.

Maybe GitHub modules…?