From 2f2ee7e4fc76bb09c2fa8c02b278052072353329 Mon Sep 17 00:00:00 2001 From: Whisker Jones Date: Fri, 10 May 2024 21:27:03 -0600 Subject: [PATCH] git --- tech_docs/git_overview.md | 43 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 tech_docs/git_overview.md diff --git a/tech_docs/git_overview.md b/tech_docs/git_overview.md new file mode 100644 index 0000000..e6258f5 --- /dev/null +++ b/tech_docs/git_overview.md @@ -0,0 +1,43 @@ +Understanding Git lingo is a crucial step toward mastering version control with Git. Here's a breakdown of some essential terms, including `checkout`, and how they fit into the Git workflow: + +### 1. Checkout +- **What It Is:** The `git checkout` command is used to switch between branches or revert files in your working directory to a previous state. +- **How It Fits:** If you want to switch your focus from one branch to another, or if you need to restore previous versions of files, you'll use `checkout`. + +### 2. Pull +- **What It Is:** `git pull` is a command that fetches the latest changes from a remote repository and integrates them into your current branch. +- **How It Fits:** This is commonly used to synchronize your local repository with updates from others in your team. + +### 3. Push +- **What It Is:** `git push` uploads your local branch updates to a remote repository. +- **How It Fits:** After committing your changes locally, use `push` to share your changes with teammates or to backup your commits on a remote server. + +### 4. Clone +- **What It Is:** `git clone` is used to create a local copy of a remote repository. +- **How It Fits:** This is typically the first step when you start working on a project that's stored in a remote repository. + +### 5. Commit +- **What It Is:** A `git commit` takes a snapshot of your staged changes. It’s like saving a version of your files at a specific point. +- **How It Fits:** Commits form the backbone of your project’s history. Before you can `push` updates to a remote repository, you need to `commit` them locally. + +### 6. Branch +- **What It Is:** Branching means diverging from the main line of development and continuing to work without messing up that main line. +- **How It Fits:** Branches are used to develop features isolated from each other. The master branch (now commonly called the main branch) is the "default" branch when you create a repository. + +### 7. Merge +- **What It Is:** `git merge` integrates changes from one branch into another. This can be a feature branch into the main branch, for example. +- **How It Fits:** After a feature is developed in a branch, it is merged back into the main branch. + +### 8. Fetch +- **What It Is:** `git fetch` downloads commits, files, and refs from a remote repository into your local repo. +- **How It Fits:** Fetching allows you to see what others have done, without merging those changes into your own branch. + +### 9. Stash +- **What It Is:** `git stash` temporarily shelves (or stashes) changes you've made to your working directory so you can work on something else, then come back and re-apply them later on. +- **How It Fits:** Stashing is useful if you need to quickly switch context and work on something else, but you're not ready to commit your work. + +### 10. Rebase +- **What It Is:** `git rebase` is a way to move or combine a sequence of commits to a new base commit. +- **How It Fits:** Rebasing is used to maintain a clean project history by integrating changes from one branch into another through a series of patches. + +Understanding these terms and how they fit into the Git lifecycle will help you effectively manage your projects and collaborate with others. Each command plays a specific role in the workflow of version control, enabling a smooth development process across different branches and with multiple collaborators.