Skip to content

πŸ“š Repo to share and practice some GitHub shenanigans.

Notifications You must be signed in to change notification settings

raissamendonca/github-tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

46 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Let's practice some GitHub πŸ€“

This repo was created to share some basic GitHub lingo and website layout, while practicing some fundamental tasks in GitHub/GitHub Desktop. I've added resources at the end for anyone looking for more info than we were able to cover.


Here are some slides to go along with lab meeting that contains some key definitions (also shown below) and a bit of an activity.

By the end of the activity, we should have practiced:

βœ”οΈ Cloning a repository

βœ”οΈ Pulling from the remote repository

βœ”οΈ Writing a commit message and committing a change to a text file

βœ”οΈ Adding files to GitHub

βœ”οΈ Pushing changes from the local to the remote repository

βœ”οΈ Merging changes and resolving merge conflicts

βœ”οΈ Branching and pull request to merge into main branch


πŸ“£ FYI, what you're reading is a README file written in Markdown. These can be really useful for typing out general repository layout/ground rules, quick guides, intro pages, etc. They are especially important for documentation in public and highly collaborative repositories. In a perfect world, every repository (and sometimes directories) should have at least a simple README file describing the contents/purpose of that repo/dir.


Key Definitions

πŸ“š Several definitions were taken directly from the GitHub glossary also linked below.

git: Git is an open source program for tracking changes in text files. It was written by the author of the Linux operating system, and is the core technology that GitHub, the social and user interface, is built on top of.

repository: A repository (or "repo") is the most basic element of GitHub. They're easiest to imagine as a project's folder (public or private).

directory: A folder containing one or more files or folders

branch: Parallel version of a repository; allows you to work freely

remote: Version of a repository or branch that is hosted on a server. Remote versions can be connected to local clones so that changes can be synced.

clone: Copy of the remote repository on your local computer (or the act of making that copy)

fork: A fork is a personal copy of another user's repository that lives on your account. Forks allow you to freely make changes to a project without affecting the original upstream repository. You can also open a pull request in the upstream repository and keep your fork synced with the latest changes since both repositories are still connected.

merge: Merging takes the changes from one branch (in the same repository or from a fork), and applies them into another. This often happens as a "pull request" (which can be thought of as a request to merge), or via the command line.

merge conflict: Merge conflicts happen when people make different changes to the same line of the same file, or when one person edits a file and another person deletes the same file. The merge conflict must be resolved before you can merge the branches.

resolve: The action of fixing up manually what a failed automatic merge left behind.

pull request: Pull requests are proposed changes to a repository submitted by a user and accepted or rejected by a repository's collaborators.

commit: A commit, or "revision", is an individual change to a file (or set of files). When you make a commit to save your work, Git creates a unique ID (a.k.a. the "SHA" or "hash") that allows you to keep record of the specific changes committed along with who made them and when.

commit message: Short, descriptive text that accompanies a commit and communicates the change the commit is introducing (description of what changes were made).

ssh key: SSH keys are a way to identify yourself to an online server, using an encrypted message. It's as if your computer has its own unique password to another service.

push: To push means to send your committed changes to a remote repository on GitHub.com. For instance, if you change something locally, you can push those changes so that others may access them.

pull: Pull refers to when you are fetching in changes and merging them. For instance, if someone has edited the remote file you're both working on, you'll want to pull in those changes to your local copy so that it's up to date.

fetch: Checks if there are any changes in GitHub online not yet in local computer. When you use git fetch, you're adding changes from the remote repository to your local working branch without committing them. Unlike git pull, fetching allows you to review changes before committing them to your local branch.

diff: A diff is the difference in changes between two commits, or saved changes. The diff will visually describe what was added or removed from a file since its last commit.

Resources

About

πŸ“š Repo to share and practice some GitHub shenanigans.

Topics

Resources

Stars

Watchers

Forks

Languages