Glossary (plain language)
The terms you meet during the pre-work and the workshop, in alphabetical order. Every definition on this page is written in everyday words, so you can read it once and understand it without knowing any other technical term first. Many definitions started from Glosario, a glossary for computing terms maintained by The Carpentries, and were rewritten in plainer words for this course. The link on a term leads to its Glosario entry, which also offers translations into other languages. If you are unsure which tool a term belongs to, see Which tool does what?
- branch
-
A branch is a separate line of work inside a repository. You create a branch when you want to change files without touching the main copy of the project. When the changes have been reviewed, you bring them back into the main copy. In the workshop you make your edits on a branch and bring them into
mainthrough a pull request. - clone
- To clone a repository means to download a full copy of it from GitHub onto your own computer, including the record of every change ever made to it. In RStudio you clone by creating a new project and choosing Version Control, then Git.
- commit
- A commit is a saved version of your project. When you commit, Git records the exact content of your files at that moment, together with a message that says what you changed and why. You can go back to any earlier commit at any time.
- commit message
- A commit message is the short note you attach to a commit. It tells your collaborators, and your future self, what you changed and why you changed it.
- default branch (
main) -
The default branch is the main copy of the project inside a repository, and it is usually called
main. It should always hold a version of the project that works. You make changes on other branches and bring them intomainafter someone has reviewed them. In older projects the default branch is calledmaster. - fork
- A fork is a personal copy of someone else’s repository, stored in your own GitHub account. You can change your fork freely, and you can offer your changes back to the original repository through a pull request. We do not use forks in the workshop, because our teams share one repository and work on branches inside it.
- Git
- Git is a program on your computer that keeps track of changes to your files. It saves the versions you tell it to save, shows you what changed between versions, and lets you go back to any earlier version. Git works without an internet connection.
- GitHub
- GitHub is a website that stores a copy of your Git repository online, so that other people can see your project, download it, and work on it with you. GitHub also adds tools that Git itself does not have, such as pull requests and issues.
- issue
- An issue is a to-do item for a project, posted on the repository’s page on GitHub. An issue can describe a problem, ask for something new, or hold a task. You can assign an issue to a person, and you can refer to it from commits and pull requests.
- local repository
- The local repository is the copy of a repository on your own computer, including the record of every change. Your commits are saved here first. Pushing then uploads them to the copy on GitHub.
- Markdown
-
Markdown is a simple way to add formatting, such as headings, links, and lists, to ordinary text. You type plain characters, e.g.
#in front of a heading, and the text is later shown with the formatting applied. GitHub uses Markdown in README files, issues, and pull requests, and Quarto uses it for the text in.qmddocuments. - merge
- To merge means to combine the changes from one branch into another, so that one branch now contains the work of both. In the workshop, the merge happens when a reviewer accepts a pull request on GitHub.
- merge conflict
- A merge conflict happens when two branches have changed the same lines of the same file, and Git cannot tell which version you want to keep. Git stops, marks both versions inside the file, and waits for you to choose or combine them. A conflict is not an error. It only means that Git will not guess which change you meant.
- origin
- Origin is the name your computer uses for the copy of your repository on GitHub. Git sets the name automatically when you clone, so that you can push and pull without typing the full web address every time.
- personal access token (PAT)
-
A personal access token is a long password that GitHub generates for you. Git sends it to GitHub when you push or pull, to prove that the request really comes from you. You created a token in pre-work step 4, and you save it on your computer by running
gitcreds::gitcreds_set()in the RStudio console. - pull
- To pull means to download the newest commits from GitHub into the copy on your own computer, so that both copies are the same again. Pulling is the first step of the commit cycle. Pull, then stage, then commit, then push.
- pull request
-
A pull request is a page on GitHub where you ask another person to review the changes on your branch and, if the changes are good, to merge the branch into
main. The reviewer can read every changed line, write comments, and suggest edits. A pull request is not the same as a pull. A pull downloads commits to your computer, and a pull request is a conversation about merging. - push
- To push means to upload your commits from your own computer to the copy of your repository on GitHub. Until you push, your commits exist only on your computer, and nobody else can see them.
- Quarto
-
Quarto is a program that turns a text file into a finished document, such as a report, a website, or slides. A Quarto file ends in
.qmdand contains ordinary text, code, and a few settings at the top. When you click Render, Quarto runs the code and builds the document. Quarto does not track versions and does not talk to GitHub. - README
-
A README is a text file that explains what a project is and how to use it. GitHub shows the file named
README.mdon the front page of the repository. - remote repository
- The remote repository is the copy of a repository that is not on your computer. For us, the remote repository is the copy on GitHub. Pull and push move commits between your local copy and the remote copy, so that everyone can share their work.
- render
-
To render means to have Quarto build the output document, e.g. a web page or a PDF, from a
.qmdfile. Rendering also runs the code inside the file. In RStudio you render by clicking the Render button. - repository
- A repository is the folder for one project, together with the full record of every change made to the files in it. Git keeps the record in a hidden part of the folder. As a rule, one project gets one repository.
- RStudio Git pane
-
The RStudio Git pane is the tab in RStudio that shows what has changed in your repository and holds the buttons for everyday Git work. It has the Pull button, the checkboxes for staging, the Commit button, the Push button, and the tools for branches. Every button runs a real Git command. Clicking Push runs
git push. - stage / staging area
-
To stage a file means to mark it for the next commit, and the staging area is where Git keeps the marked files until you commit. Git only commits the files you have staged, so you can change five files and commit only two of them. In the RStudio Git pane you stage a file by ticking its checkbox, which runs the command
git add. - version control
- Version control is a way of working where a program records every saved version of your files, so that you can see what changed, when, and why, and go back to any earlier version. Git is the version control program we use.
- YAML
-
YAML is a simple format for settings, written as names and values. The block between the two
---lines at the top of a Quarto file is written in YAML, and it holds settings such as the title and the output format.
Attribution
The definitions on this page were written for this course. Many of them started from Glosario by The Carpentries, which is licensed under CC-BY 4.0, and were then rewritten in plainer words. The link on each of those terms leads to the matching Glosario entry.