0% found this document useful (0 votes)
27 views

Git and GitHub

Uploaded by

Subrata Ray
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views

Git and GitHub

Uploaded by

Subrata Ray
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 61

Git and GitHub

What is Git?
● Version Control System
○ Keep careful track of changes in your files
○ Collaborate with others on your projects more easily
○ Test changes without losing the original versions
○ Revert back to older versions when/if needed
● GitHub: web-based hosting service for git
○ Provides a "remote" location for storing your git workspaces
○ Useful if you lose/break your computer, etc.
Using Git
● Installation
○ https://github.com/join
○ https://help.github.com/articles/set-up-git/
● How it works
○ Create a "repository" (workspace) for your project
○ Add/remove/save/edit files
○ Push local files online to GitHub / pull remote files from GitHub to your
local workspace
○ And more!
git clone <url>
● Downloads an existing repository from GitHub
● Creates a synced, local copy
git add <filename>
● Signals to git that the specified file should be “tracked” for
changes
○ Places modified file(s) in the “staging area”
● Files not added in this way are essentially ignored by git
● git add -A signals to git that it should track all existing files
git commit -m "message"
● Takes a "snapshot" of all files currently on the staging area and
commits it to git's memory
● The "snapshot" is captioned with the given message as a brief
description for the commit
git commit -am "message"
● Nearly identical to previous command, with the added step of
applying git add to all existing tracked files first
○ Ignores untracked files
git status
● Displays useful information about your repository (e.g., current
branch, tracked/untracked files, differences between local and
remote versions)
git push
● Uploads local commits to the remote repository (i.e., from your
computer to GitHub)
git pull
● Downloads remote commits to the local repository (i.e., from
GitHub to your computer)
Merge Conflicts
● When two collaborators make conflicting changes to the same
file, a merge conflict may arise
● Git will complain when you attempt to git pull and you will
need to manually resolve the conflict
git log
● Displays history of commits made in the repository from
newest to oldest
Branching
● Each repository by default has a "master" branch where all your
work lives
● Sometimes useful to create separate branches in your
repository (to test new features, separate work among
collaborators, etc.)
git branch
● By default, lists all of the branches in your repository, but has a
few other variations:
● git branch <branch>
○ Creates a new branch with the given name
● git branch -d <branch>
○ Deletes the specified branch
git checkout <branch>
● Switches from the current branch to the specified branch (must
already exist)
git checkout -b <branch>
● First creates a new branch with the given name, then switches
to it
git merge <branch>
● Merges the specified branch to the current branch
Open Source
● GitHub is a popular home for "open source" projects (i.e.,
projects whose source code is freely available online and may
be redistributed and modified).
Forking
● Create a copy of someone else’s repository on your profile so
that you can contribute to their project
Final questions?

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy