git-novice icon indicating copy to clipboard operation
git-novice copied to clipboard

explain branches

Open jorobledo opened this issue 1 year ago • 10 comments

How could the content be improved?

Hi, I read the content of the course, which I found very good! Nice job on that. But I found an omission (at least from what I could inspect) in explaining what branches are and how to use them. Is this on purpose? I think it is a very useful feature that git provides and that it should also be taught. I would be willing to develop some content for the course if there is interest.

Please let me know you opinion!

jorobledo avatar Oct 14 '24 14:10 jorobledo

Hi, thanks for this. I am personally in favour of adding branches, however this is an issue that has been debated and is currently controversial. We can keep this issue open for further discussion.

martinosorb avatar Oct 22 '24 19:10 martinosorb

I am still very much of the opinion that git users should know branching.

Would it make sense to do an initial PR to put the discussion forward and work on top of this initial version?

jorobledo avatar Mar 31 '25 06:03 jorobledo

@swcarpentry/git-novice-maintainers : I would be in favour of adding an 'extra' episode that could give an overview of branching, in a way that could be skipped if needed, so that the instructors can mix and match based on how much time they have and on what specific needs their audience has. Would that be possible?

martinosorb avatar Mar 31 '25 17:03 martinosorb

I agree that adding an episode on branching would be very valuable. Given the interest and previous requests (issue #827, issue #918 [closed]), it makes sense to move forward with this. Toby noted there is a lesson in the incubator that might be a suitable starting point. And perhaps @davidwilby, @aragilar, and @marcodelapierre are still willing to help?

erinmgraham avatar Apr 01 '25 00:04 erinmgraham

At this stage I don't have bandwidth to contribute to this, apologies.

marcodelapierre avatar Apr 01 '25 00:04 marcodelapierre

Then we can probably do an extra material at the moment, where we explain what branching is, and then we can decide where to put it and what to trim from the current curricula so that it fits with the expected time (as suggested in those other issues). Also this would give instructors the possibility to refer to a carpentries material in case of questions or interest about branching from the audience (has happened to me).

For me, explaining collaborating through GitHub and not branching is just not right at the moment, because they will need it to contribute to others repositories.

jorobledo avatar Apr 01 '25 05:04 jorobledo

@erinmgraham Absolutely, I agree that the incubator lesson you link is a good starting point, I've taught this lesson a few times in order to include branching.

davidwyld avatar Apr 01 '25 08:04 davidwyld

I'm going to get started having a go at this and will open a PR if that's alright with you folks?

davidwyld avatar Apr 09 '25 16:04 davidwyld

I've opened a draft PR as a starting point for discussion: #1083

Just to reiterate the discussion points in case this is a better place to cover some of them:

  • Timing: I'm reluctant to contribute to the bloat of lessons, though I think this is a very important topic to include in this lesson.
  • Should pull requests also be covered in this lesson? They are already covered with a good example in the incubator lesson linked above.
  • How/should the originators of the material used from the incubator lesson be credited here?
  • This branching episode uses examples of a python and a bash version of an analysis as its branches - would it be preferable to use something more aligned with the food/recipe themes instead?

davidwyld avatar Apr 16 '25 15:04 davidwyld

@jorobledo @aragilar do either of you have time to take a look at David's PR and provide feedback?

erinmgraham avatar May 14 '25 03:05 erinmgraham