swcarpentry / git-novice

Version Control with Git

Home Page:http://swcarpentry.github.io/git-novice/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Checklist: Replace `master` with `main`

kekoziar opened this issue · comments

There are several, sometimes overlapping, issues and PRs regarding replacing master with main to align with GitHub's terminology. GitHub made this change last year, but git has yet to follow suit.

I think it’s a good idea to make the change in line with GitHub’s create new repository CLI commands. I think the changes can be implemented without having to explain a lot about branches and creating cognitive overload by saying that as a beginning learner in git,

  1. it’s enough that learners know branches exist, but we’re only using one branch (main) in the lesson;
  2. branches in an existing repository that are in use by other collaborators should not be renamed w/o discussion with the group (per https://git-scm.com/book/en/v2/Git-Branching-Branch-Management; perhaps this content can go in instructors notes); and,
  3. branch management is an advanced topic.

As an inventory of changes which have been suggested and must take place to reflect the replacement

  • Add command line instruction to update master with main. (git checkout -b main)
  • Create call-out that includes some background why this change happened.
  • Replace references of master with main.
  • Update screenshots which reference master
  • References in extras section updated

current issues:
#761, #775, #776, #805

Thank you for opening up this issue @kekoziar. As you mentioned, the transition to main has already taken place on GitHub and in several other places (e.g. GitLab, Git for Windows), and (as many contributors have noted in the other issues and pull requests around this topic) this is a shift that reflects the values of The Carpentries. There are multiple Pull Requests open (#793 #788 #804 and #808) to update the language in the lesson. The Carpentries Curriculum Team would be delighted if you and/or the other @swcarpentry/git-novice-maintainers can take some time to review them, merge, request changes, close duplicates, as you consider best for the flow of the lesson. If there is anything that the Core Team can do to support you in this, please let me know here.

I will try my best to outline what has been tackled in each of those open Pull Requests:

  • #788 & #793: changing mentions of master to main
  • #804: update the default branch name in episode 3; configure the default (depending on Git version) and explain the change on the lesson Setup page
  • #808: a combination of the above, including chances to branch names in the Instructor Notes but without a discussion of the differences between versions of Git (provided in #804).

I believe some combination of these would cover items 1-3 + 5 on your checklist.

Thanks for the update, @tobyhodges!

Thanks both for caring 💯. I'd be happy to complete the work if other contributors do not have the bandwidth to do so in the earliest PRs that proposed some of the changes.

Concerning:

without a discussion of the differences between versions of Git

related to

  • Create call-out that includes some background why this change happened.

I did not provide a reference or a link to such background since I ignore where this was proposed for the first time across modern version control systems; I think at the time the debate made an impact and lead to the effective change I read that this was many years old already (and not necessarily originating in the context of version control). And I did not want to point to any thread (whether it was on git, GitHub or any other channel) with an endless, controversial or heated debate either, which many of us have read. But if you happen to have a good information source, happy to add that !

Thanks, @jhlegarreta! I made some minor changes to your PR, which was the most comprehensive. Thank you very much for your submissions.

Thanks, @jhlegarreta! I made some minor changes to your PR, which was the most comprehensive. Thank you very much for your submissions.

My pleasure. Thanks to the rest of the people that also proposed changes earlier !

Hi, @jhlegarreta. If you have the time, http://swcarpentry.github.io/git-novice/discuss/index.html needs to have master replaced with main. Thanks for offering the assistance.

Hi, @jhlegarreta. If you have the time, http://swcarpentry.github.io/git-novice/discuss/index.html needs to have master replaced with main. Thanks for offering the assistance.

@kekoziar Sorry, I completely missed that in PR #808. Done in PR #813.

Thanks for the hard work to finish all items @kekoziar 💯 !