SlideShare a Scribd company logo
Git Basics
Undoing Changes
git init
<directory>
git clone <repo>
git config
user.name <name>
git add
<directory>
git commit -m
"<message>"
git status
git log
git diff
Create empty Git repo in specified directory. Run with no arguments to
initialize the current directory as a git repository.
Clone repo located at <repo> onto local machine. Original repo can be
located on the local filesystem or on a remote machine via HTTP or SSH.
Define author name to be used for all commits in current repo. Devs
commonly use --global flag to set config options for current user.
Stage all changes in <directory> for the next commit. Replace <directory>
with a <file> to change a specific file.
Commit the staged snapshot, but instead of launching a text editor, use
<message> as the commit message.
List which files are staged, unstaged, and untracked.
Display the entire commit history using the default format. For
customization see additional options.
Show unstaged changes between your index and working
directory
Create new commit that undoes all of the changes made in
<commit>, then apply it to the current branch.
git revert
<commit>
Remove <file> from the staging area, but leave the working directory
unchanged. This unstages a file without overwriting any changes.
git reset <file>
Shows which files would be removed from working directory. Use the -f
flag in place of the -n flag to execute the clean.
git clean -n
+
Git Branches
Remote Repositories
Rewriting Git History
Replace the last commit with the staged changes and last commit
combined. Use with nothing staged to edit the last commit’s message.
git commit --amend
Rebase the current branch onto <base>. <base> can be a commit
ID, a branch name, a tag, or a relative reference to HEAD.
git rebase <base>
Show a log of changes to the local repository's HEAD. Add --relative-
date flag to show date info or --all to show all refs.
git reflog
List all of the branches in your repo. Add a <branch> argument to
create a new branch with the name <branch>.
git branch
Create and check out a new branch named <branch>. Drop the -b
flag to checkout an existing branch.
git checkout -b
<branch>
Merge <branch> into the current branch.git merge <branch>
Create a new connection to a remote repo. After adding a remote, you
can use <name> as a shortcut for <url> in other commands.
git remote add
<name> <url>
Fetches a specific <branch>, from the repo. Leave off <branch> to
fetch all remote refs.
git fetch
<remote> <branch>
Fetch the specified remote’s copy of current branch and immediately
merge it into the local copy.
git pull <remote>
Push the branch to <remote>, along with necessary commits and
objects. Creates named branch in the remote repo if it doesn’t exist.
git push <remote>
<branch>
Git Cheat Sheet
Visit atlassian.com/git for more information, training, and tutorials page 1
+
+
+
+ +
+
+
git config git diff
git log
git reset
git rebase
git pull
git push
Additional Options +
Define the author name to be used for all commits by the current user.
git config --global
user.name <name>
Define the author email to be used for all commits by the current user.
git config --global
user.email <email>
Create shortcut for a Git command. E.g. alias.glog "log --graph
--oneline" will set "git glog" equivalent to "git log --graph --oneline"
git config --global
alias.<alias-name>
<git-command>
Set text editor used by commands for all users on the machine. <editor>
arg should be the command that launches the desired editor (e.g., vi).
git config --system
core.editor
<editor>
Open the global configuration file in a text editor for manual editing.git config --global
--edit
git log -<limit>
git log --oneline
git log --stat
git log -p
git log
--author="<pattern>"
git log
--grep="<pattern>"
git log
<since>..<until>
git log -- <file>
git log --graph
--decorate
Limit number of commits by <limit> . E.g. "git log -5" will limit to 5
commits
Condense each commit to a single line.
Include which files were altered and the relative number of lines that
were added or deleted from each of them.
Display the full diff of each commit.
Search for commits by a particular author.
Search for commits with a commit message that matches
<pattern>.
Show commits that occur between <since> and <until>. Args can be a
commit ID, branch name, HEAD, or any other kind of revision reference.
Show difference between working directory and last commit.
Only display commits that have the specified file.
--graph flag draws a text based graph of commits on left side of commit
msgs. --decorate adds names of branches or tags of commits shown.
git diff HEAD
Show difference between staged changes and last commit.git diff --cached
Reset staging area to match most recent commit, but leave the working
directory unchanged.
git reset
Reset staging area and working directory to match most recent commit
and overwrites all changes in the working directory.
git reset --hard
Move the current branch tip backward to <commit>, reset the staging
area to match, but leave the working directory alone.git reset <commit>
Same as previous, but resets both the staging area & working directory to
match. Deletes uncommitted changes, and all commits after <commit>.
git reset --hard
<commit>
Interactively rebase current branch onto <base>. Launches editor to enter
commands for how each commit will be transferred to the new base.
git rebase -i
<base>
Fetch the remote’s copy of current branch and rebases it into the local
copy. Uses git rebase instead of merge to integrate the branches.
git pull --rebase
<remote>
Forces the git push even if it results in a non-fast-forward merge. Do not
use the --force flag unless you’re absolutely sure you know what you’re doing.
git push <remote>
--force
Push all of your local branches to the specified remote.git push <remote>
--all
Tags aren’t automatically pushed when you push a branch or use the
--all flag. The --tags flag sends all of your local tags to the remote repo.
git push <remote>
--tags
Visit atlassian.com/git for more information, training, and tutorials page 2
Ad

More Related Content

What's hot (15)

git - the basics
git - the basicsgit - the basics
git - the basics
Arnelle Balane
 
Undoing Things in Git
Undoing Things in GitUndoing Things in Git
Undoing Things in Git
gittower
 
Github git-cheat-sheet
Github git-cheat-sheetGithub git-cheat-sheet
Github git-cheat-sheet
Augusto Gabriel Luna Bardales
 
GIT - GOOD PRACTICES
GIT - GOOD PRACTICESGIT - GOOD PRACTICES
GIT - GOOD PRACTICES
Rodolfo Spalenza
 
Git
GitGit
Git
Omar Al-Sabek
 
Hacktoberfest intro to Git and GitHub
Hacktoberfest intro to Git and GitHubHacktoberfest intro to Git and GitHub
Hacktoberfest intro to Git and GitHub
DSC GVP
 
Advanced Web Development in PHP - Code Versioning and Branching with Git
Advanced Web Development in PHP - Code Versioning and Branching with GitAdvanced Web Development in PHP - Code Versioning and Branching with Git
Advanced Web Development in PHP - Code Versioning and Branching with Git
Rasan Samarasinghe
 
Git Intermediate Course
Git Intermediate CourseGit Intermediate Course
Git Intermediate Course
Ali Abbasi
 
Git basic
Git basicGit basic
Git basic
Akbar Uddin
 
Git commands
Git commandsGit commands
Git commands
Viyaan Jhiingade
 
Git flow cheatsheet
Git flow cheatsheetGit flow cheatsheet
Git flow cheatsheet
Funato Takashi
 
Honestly Git Playground 20190221
Honestly Git Playground 20190221Honestly Git Playground 20190221
Honestly Git Playground 20190221
Shinho Kang
 
Git
GitGit
Git
Parag Gupta
 
Version Control Systems with git (and github) as an example
Version Control Systems with git (and github) as an exampleVersion Control Systems with git (and github) as an example
Version Control Systems with git (and github) as an example
Gaurav Kumar Garg
 
Git 入门与实践
Git 入门与实践Git 入门与实践
Git 入门与实践
Terry Wang
 
Undoing Things in Git
Undoing Things in GitUndoing Things in Git
Undoing Things in Git
gittower
 
Hacktoberfest intro to Git and GitHub
Hacktoberfest intro to Git and GitHubHacktoberfest intro to Git and GitHub
Hacktoberfest intro to Git and GitHub
DSC GVP
 
Advanced Web Development in PHP - Code Versioning and Branching with Git
Advanced Web Development in PHP - Code Versioning and Branching with GitAdvanced Web Development in PHP - Code Versioning and Branching with Git
Advanced Web Development in PHP - Code Versioning and Branching with Git
Rasan Samarasinghe
 
Git Intermediate Course
Git Intermediate CourseGit Intermediate Course
Git Intermediate Course
Ali Abbasi
 
Honestly Git Playground 20190221
Honestly Git Playground 20190221Honestly Git Playground 20190221
Honestly Git Playground 20190221
Shinho Kang
 
Version Control Systems with git (and github) as an example
Version Control Systems with git (and github) as an exampleVersion Control Systems with git (and github) as an example
Version Control Systems with git (and github) as an example
Gaurav Kumar Garg
 
Git 入门与实践
Git 入门与实践Git 入门与实践
Git 入门与实践
Terry Wang
 

Similar to Atlassian git cheatsheet (20)

GIT Basics
GIT BasicsGIT Basics
GIT Basics
Tagged Social
 
SVN 2 Git
SVN 2 GitSVN 2 Git
SVN 2 Git
Marco De Stefano
 
Git and github 101
Git and github 101Git and github 101
Git and github 101
Senthilkumar Gopal
 
Version Control & Git
Version Control & GitVersion Control & Git
Version Control & Git
Jason Byrne
 
Git like a pro EDD18 - Full edition
Git like a pro EDD18 - Full editionGit like a pro EDD18 - Full edition
Git like a pro EDD18 - Full edition
Jesús Miguel Benito Calzada
 
Git github
Git githubGit github
Git github
Anurag Deb
 
Git basics for beginners
Git basics for beginnersGit basics for beginners
Git basics for beginners
PravallikaTammisetty
 
Git cheatsheet
Git cheatsheetGit cheatsheet
Git cheatsheet
Weghlis Azzariou
 
Github git-cheat-sheet
Github git-cheat-sheetGithub git-cheat-sheet
Github git-cheat-sheet
Jae Nwawe
 
Github git-cheat-sheet
Github git-cheat-sheetGithub git-cheat-sheet
Github git-cheat-sheet
leo_priv00
 
Github git-cheat-sheet
Github git-cheat-sheetGithub git-cheat-sheet
Github git-cheat-sheet
Adeel Munir
 
Git tutorial
Git tutorialGit tutorial
Git tutorial
Ananth Kumar
 
Git rewriting git history
Git   rewriting git  historyGit   rewriting git  history
Git rewriting git history
LearningTech
 
Git-ing out of your git messes
Git-ing out of  your git messesGit-ing out of  your git messes
Git-ing out of your git messes
Katie Sylor-Miller
 
Git basic introduction & tutorial for begginer
Git basic introduction & tutorial for begginerGit basic introduction & tutorial for begginer
Git basic introduction & tutorial for begginer
AnDiLestiAnto2
 
Collaborative development with Git | Workshop
Collaborative development with Git | WorkshopCollaborative development with Git | Workshop
Collaborative development with Git | Workshop
Anuchit Chalothorn
 
Github git-cheat-sheet
Github git-cheat-sheetGithub git-cheat-sheet
Github git-cheat-sheet
jaehyok Song
 
Linux GIT commands
Linux GIT commandsLinux GIT commands
Linux GIT commands
RajKumar Rampelli
 
Git cheat sheet with diagram-5.pdf
Git cheat sheet with diagram-5.pdfGit cheat sheet with diagram-5.pdf
Git cheat sheet with diagram-5.pdf
NiranjanKumarGanjiku1
 
Git cheat sheet__grey
Git cheat sheet__greyGit cheat sheet__grey
Git cheat sheet__grey
King Hom
 
Ad

More from Abdul Basit (20)

White box testing
White box testingWhite box testing
White box testing
Abdul Basit
 
Web testing
Web testingWeb testing
Web testing
Abdul Basit
 
Testing the documentation
Testing the documentationTesting the documentation
Testing the documentation
Abdul Basit
 
Testing software security
Testing software securityTesting software security
Testing software security
Abdul Basit
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
Abdul Basit
 
Test planning
Test planningTest planning
Test planning
Abdul Basit
 
Test cases planning
Test cases planningTest cases planning
Test cases planning
Abdul Basit
 
Software Testing
Software TestingSoftware Testing
Software Testing
Abdul Basit
 
Software Compatibility testing
Software Compatibility testingSoftware Compatibility testing
Software Compatibility testing
Abdul Basit
 
Black box testing
Black box testingBlack box testing
Black box testing
Abdul Basit
 
Software Automated testing and tools
Software Automated testing and toolsSoftware Automated testing and tools
Software Automated testing and tools
Abdul Basit
 
Why test software
Why test softwareWhy test software
Why test software
Abdul Basit
 
Static white box testing lecture 12
Static white box testing lecture 12Static white box testing lecture 12
Static white box testing lecture 12
Abdul Basit
 
Software testing lecture 10
Software testing lecture 10Software testing lecture 10
Software testing lecture 10
Abdul Basit
 
Software testing lecture 9
Software testing lecture 9Software testing lecture 9
Software testing lecture 9
Abdul Basit
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1
Abdul Basit
 
Software measurement lecture 7
Software measurement lecture 7Software measurement lecture 7
Software measurement lecture 7
Abdul Basit
 
Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6
Abdul Basit
 
Managing software quality in an organization lecture 3
Managing software quality in an organization lecture 3Managing software quality in an organization lecture 3
Managing software quality in an organization lecture 3
Abdul Basit
 
Function of software quality assurance lecture 2
Function of software quality assurance lecture 2Function of software quality assurance lecture 2
Function of software quality assurance lecture 2
Abdul Basit
 
White box testing
White box testingWhite box testing
White box testing
Abdul Basit
 
Testing the documentation
Testing the documentationTesting the documentation
Testing the documentation
Abdul Basit
 
Testing software security
Testing software securityTesting software security
Testing software security
Abdul Basit
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
Abdul Basit
 
Test cases planning
Test cases planningTest cases planning
Test cases planning
Abdul Basit
 
Software Testing
Software TestingSoftware Testing
Software Testing
Abdul Basit
 
Software Compatibility testing
Software Compatibility testingSoftware Compatibility testing
Software Compatibility testing
Abdul Basit
 
Black box testing
Black box testingBlack box testing
Black box testing
Abdul Basit
 
Software Automated testing and tools
Software Automated testing and toolsSoftware Automated testing and tools
Software Automated testing and tools
Abdul Basit
 
Why test software
Why test softwareWhy test software
Why test software
Abdul Basit
 
Static white box testing lecture 12
Static white box testing lecture 12Static white box testing lecture 12
Static white box testing lecture 12
Abdul Basit
 
Software testing lecture 10
Software testing lecture 10Software testing lecture 10
Software testing lecture 10
Abdul Basit
 
Software testing lecture 9
Software testing lecture 9Software testing lecture 9
Software testing lecture 9
Abdul Basit
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1
Abdul Basit
 
Software measurement lecture 7
Software measurement lecture 7Software measurement lecture 7
Software measurement lecture 7
Abdul Basit
 
Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6
Abdul Basit
 
Managing software quality in an organization lecture 3
Managing software quality in an organization lecture 3Managing software quality in an organization lecture 3
Managing software quality in an organization lecture 3
Abdul Basit
 
Function of software quality assurance lecture 2
Function of software quality assurance lecture 2Function of software quality assurance lecture 2
Function of software quality assurance lecture 2
Abdul Basit
 
Ad

Recently uploaded (20)

Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Image processinglab image processing image processing
Image processinglab image processing  image processingImage processinglab image processing  image processing
Image processinglab image processing image processing
RaghadHany
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Automation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From AnywhereAutomation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From Anywhere
Lynda Kane
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from AnywhereAutomation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Lynda Kane
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Learn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step GuideLearn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step Guide
Marcel David
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your UsersAutomation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Lynda Kane
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Image processinglab image processing image processing
Image processinglab image processing  image processingImage processinglab image processing  image processing
Image processinglab image processing image processing
RaghadHany
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
Automation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From AnywhereAutomation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From Anywhere
Lynda Kane
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from AnywhereAutomation Hour 1/28/2022: Capture User Feedback from Anywhere
Automation Hour 1/28/2022: Capture User Feedback from Anywhere
Lynda Kane
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx2025-05-Q4-2024-Investor-Presentation.pptx
2025-05-Q4-2024-Investor-Presentation.pptx
Samuele Fogagnolo
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Learn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step GuideLearn the Basics of Agile Development: Your Step-by-Step Guide
Learn the Basics of Agile Development: Your Step-by-Step Guide
Marcel David
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your UsersAutomation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Lynda Kane
 

Atlassian git cheatsheet

  • 1. Git Basics Undoing Changes git init <directory> git clone <repo> git config user.name <name> git add <directory> git commit -m "<message>" git status git log git diff Create empty Git repo in specified directory. Run with no arguments to initialize the current directory as a git repository. Clone repo located at <repo> onto local machine. Original repo can be located on the local filesystem or on a remote machine via HTTP or SSH. Define author name to be used for all commits in current repo. Devs commonly use --global flag to set config options for current user. Stage all changes in <directory> for the next commit. Replace <directory> with a <file> to change a specific file. Commit the staged snapshot, but instead of launching a text editor, use <message> as the commit message. List which files are staged, unstaged, and untracked. Display the entire commit history using the default format. For customization see additional options. Show unstaged changes between your index and working directory Create new commit that undoes all of the changes made in <commit>, then apply it to the current branch. git revert <commit> Remove <file> from the staging area, but leave the working directory unchanged. This unstages a file without overwriting any changes. git reset <file> Shows which files would be removed from working directory. Use the -f flag in place of the -n flag to execute the clean. git clean -n + Git Branches Remote Repositories Rewriting Git History Replace the last commit with the staged changes and last commit combined. Use with nothing staged to edit the last commit’s message. git commit --amend Rebase the current branch onto <base>. <base> can be a commit ID, a branch name, a tag, or a relative reference to HEAD. git rebase <base> Show a log of changes to the local repository's HEAD. Add --relative- date flag to show date info or --all to show all refs. git reflog List all of the branches in your repo. Add a <branch> argument to create a new branch with the name <branch>. git branch Create and check out a new branch named <branch>. Drop the -b flag to checkout an existing branch. git checkout -b <branch> Merge <branch> into the current branch.git merge <branch> Create a new connection to a remote repo. After adding a remote, you can use <name> as a shortcut for <url> in other commands. git remote add <name> <url> Fetches a specific <branch>, from the repo. Leave off <branch> to fetch all remote refs. git fetch <remote> <branch> Fetch the specified remote’s copy of current branch and immediately merge it into the local copy. git pull <remote> Push the branch to <remote>, along with necessary commits and objects. Creates named branch in the remote repo if it doesn’t exist. git push <remote> <branch> Git Cheat Sheet Visit atlassian.com/git for more information, training, and tutorials page 1 + + + + + + +
  • 2. git config git diff git log git reset git rebase git pull git push Additional Options + Define the author name to be used for all commits by the current user. git config --global user.name <name> Define the author email to be used for all commits by the current user. git config --global user.email <email> Create shortcut for a Git command. E.g. alias.glog "log --graph --oneline" will set "git glog" equivalent to "git log --graph --oneline" git config --global alias.<alias-name> <git-command> Set text editor used by commands for all users on the machine. <editor> arg should be the command that launches the desired editor (e.g., vi). git config --system core.editor <editor> Open the global configuration file in a text editor for manual editing.git config --global --edit git log -<limit> git log --oneline git log --stat git log -p git log --author="<pattern>" git log --grep="<pattern>" git log <since>..<until> git log -- <file> git log --graph --decorate Limit number of commits by <limit> . E.g. "git log -5" will limit to 5 commits Condense each commit to a single line. Include which files were altered and the relative number of lines that were added or deleted from each of them. Display the full diff of each commit. Search for commits by a particular author. Search for commits with a commit message that matches <pattern>. Show commits that occur between <since> and <until>. Args can be a commit ID, branch name, HEAD, or any other kind of revision reference. Show difference between working directory and last commit. Only display commits that have the specified file. --graph flag draws a text based graph of commits on left side of commit msgs. --decorate adds names of branches or tags of commits shown. git diff HEAD Show difference between staged changes and last commit.git diff --cached Reset staging area to match most recent commit, but leave the working directory unchanged. git reset Reset staging area and working directory to match most recent commit and overwrites all changes in the working directory. git reset --hard Move the current branch tip backward to <commit>, reset the staging area to match, but leave the working directory alone.git reset <commit> Same as previous, but resets both the staging area & working directory to match. Deletes uncommitted changes, and all commits after <commit>. git reset --hard <commit> Interactively rebase current branch onto <base>. Launches editor to enter commands for how each commit will be transferred to the new base. git rebase -i <base> Fetch the remote’s copy of current branch and rebases it into the local copy. Uses git rebase instead of merge to integrate the branches. git pull --rebase <remote> Forces the git push even if it results in a non-fast-forward merge. Do not use the --force flag unless you’re absolutely sure you know what you’re doing. git push <remote> --force Push all of your local branches to the specified remote.git push <remote> --all Tags aren’t automatically pushed when you push a branch or use the --all flag. The --tags flag sends all of your local tags to the remote repo. git push <remote> --tags Visit atlassian.com/git for more information, training, and tutorials page 2