From b3ea354a9c3b27ab973318f88a404b6c41a29cd7 Mon Sep 17 00:00:00 2001 From: Dimitrios Theodorakis Date: Thu, 19 Dec 2024 14:49:59 +0000 Subject: [PATCH] Capitalise Git and GitHub --- .github/workflows/README.md | 2 +- episodes/01-basics.md | 2 +- episodes/03-create.md | 2 +- episodes/04-changes.md | 10 +++++----- episodes/05-history.md | 2 +- episodes/06-ignore.md | 2 +- episodes/07-github.md | 8 ++++---- episodes/09-branches.md | 8 ++++---- episodes/10-open.md | 6 +++--- episodes/10-pull-requests.md | 2 +- episodes/14-supplemental-rstudio.md | 2 +- episodes/Break.md | 4 ++-- instructors/instructor-notes.md | 2 +- learners/discuss.md | 6 +++--- learners/reference.md | 2 +- learners/setup.md | 4 ++-- profiles/learner-profiles.md | 16 ++++++++-------- 17 files changed, 40 insertions(+), 40 deletions(-) diff --git a/.github/workflows/README.md b/.github/workflows/README.md index 7076ddd9f6..7e591bc7aa 100644 --- a/.github/workflows/README.md +++ b/.github/workflows/README.md @@ -86,7 +86,7 @@ This workflow ensures that the workflow files are up-to-date. The way it work is to download the update-workflows.sh script from GitHub and run it. The script will do the following: -1. check the recorded version of sandpaper against the current version on github +1. check the recorded version of sandpaper against the current version on GitHub 2. update the files if there is a difference in versions After the files are updated, if there are any changes, they are pushed to a diff --git a/episodes/01-basics.md b/episodes/01-basics.md index a203b9ec37..5ea71700bc 100644 --- a/episodes/01-basics.md +++ b/episodes/01-basics.md @@ -183,7 +183,7 @@ the same files concurrently. If you currently use [FCM](https://metomi.github.io/fcm/doc/user_guide/getting_started.html) (a wrapper around Subversion, SVN) then look out for the following dropdowns. -They contain the FCM equivalent for git commands. +They contain the FCM equivalent for Git commands. ::: spoiler diff --git a/episodes/03-create.md b/episodes/03-create.md index 64ea2713c8..cdf4577fd7 100644 --- a/episodes/03-create.md +++ b/episodes/03-create.md @@ -229,7 +229,7 @@ fatal: Not a git repository (or any of the parent directories): .git ## Correcting `git init` Mistakes A colleague explains to you how a nested repository is redundant and may cause confusion -down the road. You would like to go back to a single git repository. +down the road. You would like to go back to a single Git repository. How can you undo the last `git init` in the `clouds` subdirectory? ::::::::::::::: solution diff --git a/episodes/04-changes.md b/episodes/04-changes.md index b6d47f0933..a06716fc47 100644 --- a/episodes/04-changes.md +++ b/episodes/04-changes.md @@ -185,7 +185,7 @@ Our repository now looks like this: ```mermaid gitGraph - accDescr {A git graph showing the root-commit on the main branch and a new forecast branch, branching off the root-commit, with one commit.} + accDescr {A Git graph showing the root-commit on the main branch and a new forecast branch, branching off the root-commit, with one commit.} commit id: 'Initial commit' branch forecast commit id: 'Create a md file with the forecast' @@ -441,7 +441,7 @@ Our repository now looks like this: ```mermaid gitGraph - accDescr {A git graph showing the root-commit on the main branch and a new forecast branch, branching off the root-commit, with two commits.} + accDescr {A Git graph showing the root-commit on the main branch and a new forecast branch, branching off the root-commit, with two commits.} commit id: 'Initial commit' branch forecast commit id: 'Create a md file with the forecast' @@ -557,7 +557,7 @@ Our repository now looks like this: ```mermaid gitGraph - accDescr {A git graph showing the root-commit on the main branch and a new forecast branch, branching off the root-commit, with three commits.} + accDescr {A Git graph showing the root-commit on the main branch and a new forecast branch, branching off the root-commit, with three commits.} commit id: 'Initial commit' branch forecast commit id: 'Create a md file with the forecast' @@ -604,7 +604,7 @@ Two important facts you should know about directories in Git. you can add all files in the directory at once by: ```bash - git add + $ git add ``` Try it for yourself: @@ -801,7 +801,7 @@ $ mkdir bio $ cd bio ``` -Initialise git: +Initialise the repository: ```bash $ git init diff --git a/episodes/05-history.md b/episodes/05-history.md index fc0229e50a..fe0fe82ab2 100644 --- a/episodes/05-history.md +++ b/episodes/05-history.md @@ -150,7 +150,7 @@ $ git log --decorate --oneline --graph ``` `--decorate` ensures commits with reference names[^refs] are displayed -when using older versions of git. +when using older versions of Git. [^refs]: [References](https://git-scm.com/book/ms/v2/Git-Internals-Git-References) in Git are user friendly links to specific commits. diff --git a/episodes/06-ignore.md b/episodes/06-ignore.md index 22bf49a737..8e73e44ad6 100644 --- a/episodes/06-ignore.md +++ b/episodes/06-ignore.md @@ -342,7 +342,7 @@ none of them will be ignored, and all `.csv` files will be tracked. ## Log Files You wrote a script that creates many intermediate log-files of the form `log_01`, `log_02`, `log_03`, etc. -You want to keep them but you do not want to track them through `git`. +You want to keep them but you do not want to track them through Git. 1. Write **one** `.gitignore` entry that excludes files of the form `log_01`, `log_02`, etc. diff --git a/episodes/07-github.md b/episodes/07-github.md index a66cb82633..a6a7632d60 100644 --- a/episodes/07-github.md +++ b/episodes/07-github.md @@ -68,7 +68,7 @@ As soon as the repository is created, GitHub displays a page with a URL and some information on how to configure your local repository. Ignore the suggested commands for now as we will run these later. -![](fig/github-create-repo-03.png){alt='The summary page displayed by GitHub after a new repository has been created. It contains instructions for configuring the new GitHub repository as a git remote'} +![](fig/github-create-repo-03.png){alt='The summary page displayed by GitHub after a new repository has been created. It contains instructions for configuring the new GitHub repository as a Git remote'} This effectively does the following on GitHub's servers: @@ -86,7 +86,7 @@ which looked like this: Now that we have two repositories, we need a diagram like this: -![](fig/git-freshly-made-github-repo.svg){alt='A diagram illustrating how the GitHub "weather" repository is also a git repository like our local repository, but that it is currently empty'} +![](fig/git-freshly-made-github-repo.svg){alt='A diagram illustrating how the GitHub "weather" repository is also a Git repository like our local repository, but that it is currently empty'} Note that our local repository still contains our earlier work on `forecast.md`, but the remote repository on GitHub appears empty as it doesn't contain any files yet. @@ -124,7 +124,7 @@ Make sure to use the URL for your repository: the only difference should be your username instead of `mo-eormerod`. `origin` is a local name used to refer to the remote repository. It could be called -anything, but `origin` is a convention that is often used by default in git +anything, but `origin` is a convention that is often used by default in Git and GitHub, so it's helpful to stick with this unless there's a reason not to. We can check that the command has worked by running `git remote -v`: @@ -366,7 +366,7 @@ Host github.com IdentityFile ~/.ssh/id_ed25519_github ``` -This explicitly states which key to use for github.com +This explicitly states which key to use for `github.com` and is needed if you have many SSH keys already for other hosts. ::: diff --git a/episodes/09-branches.md b/episodes/09-branches.md index 67156c4340..95d33b854a 100644 --- a/episodes/09-branches.md +++ b/episodes/09-branches.md @@ -21,7 +21,7 @@ exercises: 10 Branching is a feature available in most modern version control systems. Branching in other version control systems can be an expensive operation in both time and disk space. -In git, branches are a part of your everyday development process. +In Git, branches are a part of your everyday development process. So far we have been working on the `main` branch and have made one commit, the **root-commit**. @@ -38,7 +38,7 @@ config: showCommitLabel: false --- gitGraph - accDescr {A git graph showing the root-commit on the main branch and a new forecast branch with one commit branched off the root-commit. This branch is then merged back into main via a merge commit on GitHub.} + accDescr {A Git graph showing the root-commit on the main branch and a new forecast branch with one commit branched off the root-commit. This branch is then merged back into main via a merge commit on GitHub.} commit id: '6f12a47' branch forecast commit id: '8136c6f Add in a seasonal forecasts file' @@ -93,7 +93,7 @@ Our current repository looks something like this: ```mermaid gitGraph - accDescr {A git graph showing one commit, the root-commit on the main branch.} + accDescr {A Git graph showing one commit, the root-commit on the main branch.} commit id: '6f12a47' ``` @@ -176,7 +176,7 @@ so our repository looks like this: ```mermaid gitGraph - accDescr {A git graph showing the root-commit on the main branch and a new forecast branch with no commits.} + accDescr {A Git graph showing the root-commit on the main branch and a new forecast branch with no commits.} commit id: '6f12a47' branch forecast ``` diff --git a/episodes/10-open.md b/episodes/10-open.md index 53d2c43421..f1255f09ae 100644 --- a/episodes/10-open.md +++ b/episodes/10-open.md @@ -152,12 +152,12 @@ approach for your current project and explain why. ## How to Track Large Data or Image Files using Git? Large data or image files such as `.md5` or `.psd` file types can be tracked within -a github repository using the [Git Large File Storage](https://git-lfs.github.com) +a GitHub repository using the [Git Large File Storage](https://git-lfs.github.com) open source extension tool. This tool automatically uploads large file contents to -a remote server and replaces the file with a text pointer within the github repository. +a remote server and replaces the file with a text pointer within the GitHub repository. Try downloading and installing the Git Large File Storage extension tool, then add -tracking of a large file to your github repository. Ask a colleague to clone your +tracking of a large file to your GitHub repository. Ask a colleague to clone your repository and describe what they see when they access that large file. diff --git a/episodes/10-pull-requests.md b/episodes/10-pull-requests.md index 8519fad6a8..000d54e8e8 100644 --- a/episodes/10-pull-requests.md +++ b/episodes/10-pull-requests.md @@ -232,7 +232,7 @@ The Git & GitHub Working Practices training will help you decide which option is best for your teams repositories. For now we will use the [`fast-forward only` strategy](https://blog.sffc.xyz/post/185195398930/why-you-should-use-git-pull-ff-only). To use this strategy run the following command to -select it as the default thing git should do. +select it as the default thing Git should do. ```bash $ git config pull.ff only diff --git a/episodes/14-supplemental-rstudio.md b/episodes/14-supplemental-rstudio.md index 7574865545..c5571a707f 100644 --- a/episodes/14-supplemental-rstudio.md +++ b/episodes/14-supplemental-rstudio.md @@ -61,7 +61,7 @@ If there is no version of Git on your computer, please follow the [Git installation instructions](https://swcarpentry.github.io/git-novice/#installing-git) in the setup of this lesson to install Git now. Next open your shell or command prompt and type `which git` (macOS, Linux), or `where git` (Windows). -Copy the path to the git executable. +Copy the path to the Git executable. On one Windows computer which had GitHub Desktop installed on it, the path was: `C:/Users/UserName/AppData/Local/GitHubDesktop/app-1.1.1/resources/app/git/cmd/git.exe` diff --git a/episodes/Break.md b/episodes/Break.md index caabcb2254..530e77ae16 100644 --- a/episodes/Break.md +++ b/episodes/Break.md @@ -4,7 +4,7 @@ teaching: 0 exercises: 0 --- -This marks the end of the git section. +This marks the end of the Git section. Take a break and remember to fill out your minute card feedback. ## Summary @@ -20,7 +20,7 @@ config: showCommitLabel: false --- gitGraph - accDescr {A git graph showing the root-commit on the main branch and a new forecast branch with five commits.} + accDescr {A Git graph showing the root-commit on the main branch and a new forecast branch with five commits.} commit id: 'Initial commit' branch forecast commit id: 'Create a md file with the forecast' diff --git a/instructors/instructor-notes.md b/instructors/instructor-notes.md index bf09b28bf4..e2a2a2a8eb 100644 --- a/instructors/instructor-notes.md +++ b/instructors/instructor-notes.md @@ -174,7 +174,7 @@ particular set of files in `.gitignore`. involved. - When pushing to a remote, the output from Git can vary slightly depending on - what leaners execute. The lesson displays the output from git if a learner + what leaners execute. The lesson displays the output from Git if a learner executes `git push origin main`. However, some learners might use syntax suggested by GitHub for pushing to a remote with an existing repository, which is `git push -u origin main`. Learners using syntax from GitHub, diff --git a/learners/discuss.md b/learners/discuss.md index a0fc3eef59..7945ee12f9 100644 --- a/learners/discuss.md +++ b/learners/discuss.md @@ -426,7 +426,7 @@ The final step, as before, is to commit our change to the repository: $ git commit -m 'Correct the cloud type' ``` -This works because git can tell that the file was only re-named, +This works because Git can tell that the file was only re-named, they contain the same content. If you are renaming files add this change as a separate small commit before you make changes to the file contents. @@ -434,7 +434,7 @@ before you make changes to the file contents. ## Further .gitignore concepts For additional documentation on .gitignore, please reference -[the official git documentation](https://git-scm.com/docs/gitignore). +[the official Git documentation](https://git-scm.com/docs/gitignore). In the ignore exercise, learners were presented with two variations of ignoring nested files. Depending on the organization of your repository, one may suit @@ -442,7 +442,7 @@ your needs over another. Keep in mind that the way that Git travels along directory paths can be confusing. Sometimes the `**` pattern comes in handy, too, which matches multiple -directory levels. E.g. `**/results/plots/*` would make git ignore the +directory levels. E.g. `**/results/plots/*` would make Git ignore the `results/plots` directory in any root directory. ::::::::::::::::::::::::::::::::::::::: challenge diff --git a/learners/reference.md b/learners/reference.md index 7d0669922b..c5baa2dee7 100644 --- a/learners/reference.md +++ b/learners/reference.md @@ -14,7 +14,7 @@ title: 'Git Cheatsheets for Quick Reference' ## Glossary [branch]{#branch} -: A git branch is a pointer to a commit. Branches are used to develop +: A Git branch is a pointer to a commit. Branches are used to develop changes in parallel, isolated from each other. [Centralised Version Control System]{#cvc} diff --git a/learners/setup.md b/learners/setup.md index 4b2963d208..a4c8dd6930 100644 --- a/learners/setup.md +++ b/learners/setup.md @@ -78,7 +78,7 @@ Git provides a script which lets us display the version control status in your terminal prompt. The following instructions have been tested on **Linux**. If you are using MacOS or Windows please consult the -[git autocomplete instructions](https://github.com/git/git/blob/master/contrib/completion/git-prompt.sh) +[Git autocomplete instructions](https://github.com/git/git/blob/master/contrib/completion/git-prompt.sh) at the top of the linked file. Your instructor may point you to another online resource for your OS. To enable this script add the following to a new `~/.bashrc.d/git.bash` @@ -131,7 +131,7 @@ The following paths are for Met Office colleagues. If you are external to the Met Office please consult your institutions IT services or download your own copy of the `git-prompt.sh` script. Download the latest version from the -[git repository contrib directory](https://github.com/git/git/blob/master/contrib/completion/git-prompt.sh). +[Git repository contrib directory](https://github.com/git/git/blob/master/contrib/completion/git-prompt.sh). Ensure the `GIT_PROMPT_PATH` matches where you decide to store the `git-prompt.sh` file. For Azure Spice, the path in the snippet above is correct: diff --git a/profiles/learner-profiles.md b/profiles/learner-profiles.md index cccaee4f28..e95f3750f5 100644 --- a/profiles/learner-profiles.md +++ b/profiles/learner-profiles.md @@ -31,27 +31,27 @@ Profiles can be used to test whether the product or service meets the specific n ## Profiles -Amina is a researcher collaborating with the office to develop Jules. She uses fcm and svn because she has to. When the JULES docs moved to git/GitHub she tried to start learning git/GitHub to contribute to the docs but was unsure where to start and what courses to take. Amina and her colleagues frequently use the JASMIN computer and want to know how the new ways of working with Git and GitHub will apply to their use of JASMIN. +Amina is a researcher collaborating with the office to develop Jules. She uses fcm and svn because she has to. When the JULES docs moved to Git/GitHub she tried to start learning Git/GitHub to contribute to the docs but was unsure where to start and what courses to take. Amina and her colleagues frequently use the JASMIN computer and want to know how the new ways of working with Git and GitHub will apply to their use of JASMIN. Joshua is a scientific software engineer working on LFRic in the CCD team. He uses fcm mainly and doesn't really touch svn. Joshua is comfortable using GitHub as some of his projects are already on GitHub. He has questions about working practices after the big codes have migrated. When working on the GitHub hosted LFRic documentation he uses the version control features of his IDE, PyCharm. -Carlton is a scientific software engineer in Ocean Forecasting R&D. He is already thinking about the migration and supporting colleagues learning git basics. Carlton has a need for git/GitHub documentation and training, he is considering making his own. Carlton has questions about working practices after the big codes have migrated. He wants more bite sized and modular training on advanced Git/GitHub topics which could be delivered together in a days session for his team. +Carlton is a scientific software engineer in Ocean Forecasting R&D. He is already thinking about the migration and supporting colleagues learning Git basics. Carlton has a need for Git/GitHub documentation and training, he is considering making his own. Carlton has questions about working practices after the big codes have migrated. He wants more bite sized and modular training on advanced Git/GitHub topics which could be delivered together in a days session for his team. -Mina is a scientist working on JEDI related projects. Her team has already migrated most of their code to git/GitHub and is dual using fcm and git whilst migrating their last few repositories. Mina is learning about more advanced features of git/GitHub and exclusively uses the command line to interact with any JEDI git repositories. She would prefer to learn from short videos that she can access anytime. +Mina is a scientist working on JEDI related projects. Her team has already migrated most of their code to Git/GitHub and is dual using fcm and Git whilst migrating their last few repositories. Mina is learning about more advanced features of Git/GitHub and exclusively uses the command line to interact with any JEDI Git repositories. She would prefer to learn from short videos that she can access anytime. Alexis is a Science Manager. They manage a large team and several projects with technical and scientific documentation currently spread between trac pages, SharePoint, and OneNote. Alexis needs to work out how documentation will be migrated and would like to learn how to use GitHub to effectively manage her projects and team. They have also requested dedicated support for their team to help them migrate. Cora is an apprentice studying climate policy and has little to no experience with programming / computer science. She will be running various climate workflows and codes as part of Alexis' team. Cora doesn't know what version control is and would like to take an in person course and to have the materials available online so she can refer back anytime. She has been picking up bits of fcm as she starts her apprenticeship. -Clarabella is a new starter to the office in Technology. They only know how to use git/GitHub but have had some very basic srs/fcm training. Clarabella needs to learn how we use GitHub at the Met Office and her manager suggested they find more advanced training on topics such as GitHub actions for their project. She's proficient with Linux and has some experience with VSCode but not its version control features and extensions. +Clarabella is a new starter to the office in Technology. They only know how to use Git/GitHub but have had some very basic srs/fcm training. Clarabella needs to learn how we use GitHub at the Met Office and her manager suggested they find more advanced training on topics such as GitHub actions for their project. She's proficient with Linux and has some experience with VSCode but not its version control features and extensions. -Maxine is a scientist mainly working on climate policy. They use fcm once in a blue moon to contribute to small repos / scripts that they maintain. Maxine needs training on git/GitHub but is very bust so has little time to engage with training or the migration project. She would like a demonstration or walkthrough of how to migrate her repositories and scripts, preferably from an expert and in-person. +Maxine is a scientist mainly working on climate policy. They use fcm once in a blue moon to contribute to small repos / scripts that they maintain. Maxine needs training on Git/GitHub but is very bust so has little time to engage with training or the migration project. She would like a demonstration or walkthrough of how to migrate her repositories and scripts, preferably from an expert and in-person. -Ziki is a prolific developer of core Met Office codes. He has limited experience of git/GitHub and needs to know how development processes will work when the code migrates to git/GitHub. Ziki has very little CPD time that could be used for training due to other science commitments. Ziki is nervous about making mistakes due to his time constraints and would like to know where to look to troubleshoot problems. +Ziki is a prolific developer of core Met Office codes. He has limited experience of Git/GitHub and needs to know how development processes will work when the code migrates to Git/GitHub. Ziki has very little CPD time that could be used for training due to other science commitments. Ziki is nervous about making mistakes due to his time constraints and would like to know where to look to troubleshoot problems. -Raven is a scientist working on the UM at a MOAP partner organisation. They only learn via written documentation with clear examples. Raven is currently working on several grant proposals and papers so has limited time to engage with us. Raven needs the benefits of migration emphasised and clear written documentation/training on how to use git/GitHub both in general and for the UM. +Raven is a scientist working on the UM at a MOAP partner organisation. They only learn via written documentation with clear examples. Raven is currently working on several grant proposals and papers so has limited time to engage with us. Raven needs the benefits of migration emphasised and clear written documentation/training on how to use Git/GitHub both in general and for the UM. -Tatsuya is a PhD student working on a regional UM configuration. Their supervisor has asked them to get the UM model running on their HPC and doesn't know where to start. They learnt git/GitHub at university but are unsure what our working practices are and where to look for help. Tatsuya hates learning through videos and would like to attend hand on support sessions to supplement any written documentation. +Tatsuya is a PhD student working on a regional UM configuration. Their supervisor has asked them to get the UM model running on their HPC and doesn't know where to start. They learnt Git/GitHub at university but are unsure what our working practices are and where to look for help. Tatsuya hates learning through videos and would like to attend hand on support sessions to supplement any written documentation. Carmine is a scientist working at a MOAP partner institution in Oceania and does her data analysis primarily with R on Windows. They want to learn how to use Git and GitHub effectively on Windows with RStudio. They have very little experience with SVN and trac and no experience with Git and GitHub. She would like to understand more about version control and why it is important. They aren't comfortable asking questions in a public forum so would like a private support channel to ask questions.