SlideShare une entreprise Scribd logo
1  sur  183
Télécharger pour lire hors ligne
Gitting Better
Gitting Better
kinda
Hats Off
Gitting Better
Hello,World!
Overview
Hats Off
Gitting Better
Hello,World!
Overview
Gitting Better
Hello,World!
What Git is ?
What Git is ?
NOT
Git is not...
... a convenient backup solution for your source code
Git is not...
... a convenient backup solution for your source code
but
 it
 is
 pretty
 good
 at
 it!
 :D
Git is not...
... another pain in the ass you have to deal with
Git is not...
... another pain in the ass you have to deal with
but
 it
 is
 pretty
 good
 at
 it!
 :(
What Git is...
... a distributed version control and
source code management system.
What Git is...
... a distributed version control and
source code management system.
First off, Git is a version control system,
a simple command line tool for keeping a history on
the state of your source code projects.
You use it as you might use something like
Subversion, CVS or Perforce.
First off, Git is a version control system,
a simple command line tool for keeping a history on
the state of your source code projects.
You use it as you might use something like
Subversion, CVS or Perforce.
First off, Git is a version control system,
a simple command line tool for keeping a history on
the state of your source code projects.
You use it as you might use something like
Subversion, CVS or Perforce.
“cli”
snapshots,
 not
 diffs!
Git allows groups of people to work on the same
documents (often code) at the same time, and without
stepping on each other’s toes.
Git allows groups of people to work on the same
documents (often code) at the same time, and without
stepping on each other’s toes.
Git allows groups of people to work on the same
documents (often code) at the same time, and without
stepping on each other’s toes.
NO
 MUTEX,
 YAY!
You tell it to track files in your project and
periodically commit the state of the project when
you want a saved point.
You can share that history with
other developers for collaboration,
merge between their work and yours, and
compare or revert to previous versions of
the project or individual files.
You tell it to track files in your project and
periodically commit the state of the project when
you want a saved point.
You can share that history with
other developers for collaboration,
merge between their work and yours, and
compare or revert to previous versions of
the project or individual files.
Git is fully distributed, which means that it can
work almost entirely offline.
In contrast toVCS tools like Perforce or Subversion,
Git does nearly all of its operations without needing a
network connection, including history viewing,
difference viewing and commiting.
This means that Git is very fast compared to other
systems partially due to the fact that none of these
operations has any dependency on network latency.
Git is fully distributed, which means that it can
work almost entirely offline.
In contrast toVCS tools like Perforce or Subversion,
Git does nearly all of its operations without needing a
network connection, including history viewing,
difference viewing and commiting.
This means that Git is very fast compared to other
systems partially due to the fact that none of these
operations has any dependency on network latency.
Git is also very space efficient.
It is even smaller than the Subversion checkout,
which is pretty amazing, considering that
the Git clone contains the entire history of the project
— every version of every file back to the first commit,
whereas the Subversion checkout is just the last
version of the project.
Git is also very space efficient.
It is even smaller than the Subversion checkout,
which is pretty amazing, considering that
the Git clone contains the entire history of the project
— every version of every file back to the first commit,
whereas the Subversion checkout is just the last
version of the project.
Probably the most compelling feature of Git is
Gits branching model.
Instead of the popularVCS branching method of
simply cloning into a separate directory for a branch,
Git lets you switch between branches in
a single working directory.
Creating and switching between branches is
nearly instant, not all of your branches need to
be shared, and it’s easy to
stash partially completed work.
Probably the most compelling feature of Git is
Gits branching model.
Instead of the popularVCS branching method of
simply cloning into a separate directory for a branch,
Git lets you switch between branches in
a single working directory.
Creating and switching between branches is
nearly instant, not all of your branches need to
be shared, and it’s easy to
stash partially completed work.
Instead of only having branches for
major development line departures,
Git developers routinely create, merge and destroy
multiple branches a week, or even per day.
Often each feature or bug you are working on can have
its own branch, merged in only when it is complete.This
model allows you to experiment quickly, easily and
safely - without having to go through hoops to get back
to where you where. It enables and encourages a non-
linear development cycle, where you can work on
multiple lines of thought in parallel without them
stepping on each other.
Instead of only having branches for
major development line departures,
Git developers routinely create, merge and destroy
multiple branches a week, or even per day.
Often each feature or bug you are working on can have
its own branch, merged in only when it is complete.This
model allows you to experiment quickly, easily and
safely - without having to go through hoops to get back
to where you where. It enables and encourages a non-
linear development cycle, where you can work on
multiple lines of thought in parallel without them
stepping on each other.
As it is primarily a command line tool,
most of the examples in this course will
show the command line versions of the functions.
As it is primarily a command line tool,
most of the examples in this course will
show the command line versions of the functions.
As it is primarily a command line tool,
most of the examples in this course will
show the command line versions of the functions.
on
 a
 Mac
 :D
help config
init
add
rm
mv
status
commit
log
diff
show
branch
checkout
merge
tag
clone
fetch
pull
push
remote
stash
clean
reset
rebase
bisect
grep
reflog
help
config
init
add
rm
mv
status
commit
log
diff
show
branch
checkout
merge
tag
clone
fetch
pull
push
remote
stash
clean
reset
rebase
bisect
grep
reflog
help
config
init
add
rm
mv
status
commit
log
diff
show
branch
checkout
merge
tag
clone
fetch
pull
push
remote
stash
clean
reset
rebase
bisect
grep
reflog
Getting
 Started
help
config
init
add
rm
mv
status
commit
log
diff
show
branch
checkout
merge
tag
clone
fetch
pull
push
remote
stash
clean
reset
rebase
bisect
grep
reflog
Basic
 stuff
help
config
init
add
rm
mv
status
commit
log
diff
show
branch
checkout
merge
tag
clone
fetch
pull
push
remote
stash
clean
reset
rebase
bisect
grep
reflog
History
help
config
init
add
rm
mv
status
commit
log
diff
show
branch
checkout
merge
tag
clone
fetch
pull
push
remote
stash
clean
reset
rebase
bisect
grep
reflog
Branching!
help
config
init
add
rm
mv
status
commit
log
diff
show
branch
checkout
merge
tag
clone
fetch
pull
push
remote
stash
clean
reset
rebase
bisect
grep
reflog
Remote
 (HUH?)
help
config
init
add
rm
mv
status
commit
log
diff
show
branch
checkout
merge
tag
clone
fetch
pull
push
remote
stash
clean
reset
rebase
bisect
grep
reflog
advanced
 stuff
help
config
init
add
rm
mv
status
commit
log
diff
show
branch
checkout
merge
tag
clone
fetch
pull
push
remote
Getting Started
help  config
$ git help verb
$ git verb --help
Display
 “HELP!”
 information
 about
 Git
demo
$ git config --system key value
$ git config --global key value
$ git config --local key value
Get
 and
 set
 repository
 or
 global
 options
$ git config --system key value
$ git config --global key value
$ git config --local key value
default!
$ git config --global user.name “John Doe”
$ git config --global user.email “johndoe@example.com”
demo
Basic Commands
init, add, rm, mv, status  commit
Working
 Copy
Repository
$ git init
Create
 an
 empty
 git
 repository
$ git init
$ git init
$ git init
Repository
Working
 Copy
$ git init
$ git init
Central
 Repository
demo
$ git add files
Add
 new
 or
 modified
 files
 to
 the
 staging
 area
$ git add files
Add
 new
 or
 modified
 files
 to
 the
 staging
 area
$ git add files
Add
 new
 or
 modified
 files
 to
 the
 staging
 area
(a.k.a.
 “index”
 or
 “cache”)
Now Pay Attention!
The Three States
This is the main thing to remember about Git if
you want the rest of your
learning process to go smoothly.
Git has three main states that your files can reside in:
committed, modified, and staged.
This is the main thing to remember about Git if
you want the rest of your
learning process to go smoothly.
Git has three main states that your files can reside in:
committed, modified, and staged.
1 2 3
Committed means that the data is
safely stored in your local database.
Modified means that you have changed the file but
have not committed it to your database yet.
Staged means that you have marked a
modified file in its current version to
go into your next commit snapshot.
Committed means that the data is
safely stored in your local database.
Modified means that you have changed the file but
have not committed it to your database yet.
Staged means that you have marked a
modified file in its current version to
go into your next commit snapshot.
Committed means that the data is
safely stored in your local database.
Modified means that you have changed the file but
have not committed it to your database yet.
Staged means that you have marked a
modified file in its current version to
go into your next commit snapshot.
Committed means that the data is
safely stored in your local database.
Modified means that you have changed the file but
have not committed it to your database yet.
Staged means that you have marked a
modified file in its current version to
go into your next commit snapshot.
Committed means that the data is
safely stored in your local database.
Modified means that you have changed the file but
have not committed it to your database yet.
Staged means that you have marked a
modified file in its current version to
go into your next commit snapshot.
Staging Area
Staging Area
Stage files
Staging Area
Stage files
Commit
Working Copy Staging Area Repository
git add$
Add
 new
 or
 modified
 files
 to
 the
 staging
 area
files
Remove
 files
 from
 the
 working
 directory
and
 staging
 area
git rm$ files
Working Copy Staging Area Repository
Move
 or
 rename
 a
 file,
 or
 a
 directory
git mv$ source destination
Working Copy Staging Area Repository
demo
$ git status
Show
 the
 status
 of
 the
 working
 directory
and
 staging
 area
demo

Contenu connexe

Tendances

Open Source Collaboration With Git And Git Hub
Open Source Collaboration With Git And Git HubOpen Source Collaboration With Git And Git Hub
Open Source Collaboration With Git And Git Hub
Nick Quaranto
 

Tendances (20)

Open Source Collaboration With Git And Git Hub
Open Source Collaboration With Git And Git HubOpen Source Collaboration With Git And Git Hub
Open Source Collaboration With Git And Git Hub
 
Hacktoberfest slides
Hacktoberfest slidesHacktoberfest slides
Hacktoberfest slides
 
Git and git workflow best practice
Git and git workflow best practiceGit and git workflow best practice
Git and git workflow best practice
 
Git hub party-20151008
Git hub party-20151008Git hub party-20151008
Git hub party-20151008
 
Intro to Git & GitHub
Intro to Git & GitHubIntro to Git & GitHub
Intro to Git & GitHub
 
How Git and Gerrit make you more productive
How Git and Gerrit make you more productiveHow Git and Gerrit make you more productive
How Git and Gerrit make you more productive
 
Git Lab Introduction
Git Lab IntroductionGit Lab Introduction
Git Lab Introduction
 
Git & Github
Git & GithubGit & Github
Git & Github
 
Github copilot
Github copilotGithub copilot
Github copilot
 
Continuous Delivery for Python Developers – PyCon Otto
Continuous Delivery for Python Developers – PyCon OttoContinuous Delivery for Python Developers – PyCon Otto
Continuous Delivery for Python Developers – PyCon Otto
 
Intro to Git & GitHub
Intro to Git & GitHubIntro to Git & GitHub
Intro to Git & GitHub
 
Hacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginnersHacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginners
 
Git Workshop
Git WorkshopGit Workshop
Git Workshop
 
Git
GitGit
Git
 
GitLab as an Alternative Development Platform for Github.com
GitLab as an Alternative Development Platform for Github.comGitLab as an Alternative Development Platform for Github.com
GitLab as an Alternative Development Platform for Github.com
 
Git and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overviewGit and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overview
 
Getting Started with GitHub
Getting Started with GitHubGetting Started with GitHub
Getting Started with GitHub
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hub
 
Git workshop
Git workshopGit workshop
Git workshop
 
用 Go 語言實戰 Push Notification 服務
用 Go 語言實戰 Push Notification 服務用 Go 語言實戰 Push Notification 服務
用 Go 語言實戰 Push Notification 服務
 

En vedette

LinkedIn competitor research presentation
LinkedIn competitor research presentationLinkedIn competitor research presentation
LinkedIn competitor research presentation
Jacob Halstead
 
Jacob Seller C2C3 portfolio
Jacob Seller C2C3 portfolioJacob Seller C2C3 portfolio
Jacob Seller C2C3 portfolio
Jacob Halstead
 
A_REVIEW_ON_FABRICATING_PROCEDURES_IN_RAPID_PROTOTYPING
A_REVIEW_ON_FABRICATING_PROCEDURES_IN_RAPID_PROTOTYPINGA_REVIEW_ON_FABRICATING_PROCEDURES_IN_RAPID_PROTOTYPING
A_REVIEW_ON_FABRICATING_PROCEDURES_IN_RAPID_PROTOTYPING
Ganzi Suresh
 
Qpass interview questions and answers
Qpass interview questions and answersQpass interview questions and answers
Qpass interview questions and answers
selinasimpson75
 

En vedette (13)

1ο Συνέδριο Αιγαιοπελαγίτικης Γαστρονομίας, Κυκλάδες Τιμώμενος Προορισμός
1ο Συνέδριο Αιγαιοπελαγίτικης Γαστρονομίας, Κυκλάδες Τιμώμενος Προορισμός1ο Συνέδριο Αιγαιοπελαγίτικης Γαστρονομίας, Κυκλάδες Τιμώμενος Προορισμός
1ο Συνέδριο Αιγαιοπελαγίτικης Γαστρονομίας, Κυκλάδες Τιμώμενος Προορισμός
 
Gitt (part 2 of 2)
Gitt (part 2 of 2)Gitt (part 2 of 2)
Gitt (part 2 of 2)
 
GITT (part 1 of 2)
GITT (part 1 of 2)GITT (part 1 of 2)
GITT (part 1 of 2)
 
Modul 3 ankis
Modul 3 ankisModul 3 ankis
Modul 3 ankis
 
Git–SVN
Git–SVNGit–SVN
Git–SVN
 
Primavara
PrimavaraPrimavara
Primavara
 
LinkedIn competitor research presentation
LinkedIn competitor research presentationLinkedIn competitor research presentation
LinkedIn competitor research presentation
 
Jacob Seller C2C3 portfolio
Jacob Seller C2C3 portfolioJacob Seller C2C3 portfolio
Jacob Seller C2C3 portfolio
 
Picture morgue
Picture morguePicture morgue
Picture morgue
 
A_REVIEW_ON_FABRICATING_PROCEDURES_IN_RAPID_PROTOTYPING
A_REVIEW_ON_FABRICATING_PROCEDURES_IN_RAPID_PROTOTYPINGA_REVIEW_ON_FABRICATING_PROCEDURES_IN_RAPID_PROTOTYPING
A_REVIEW_ON_FABRICATING_PROCEDURES_IN_RAPID_PROTOTYPING
 
Crisman_TCP_UDP
Crisman_TCP_UDPCrisman_TCP_UDP
Crisman_TCP_UDP
 
Qpass interview questions and answers
Qpass interview questions and answersQpass interview questions and answers
Qpass interview questions and answers
 
Foot binding, beauty in a lifetime of pain
Foot binding, beauty in a lifetime of painFoot binding, beauty in a lifetime of pain
Foot binding, beauty in a lifetime of pain
 

Similaire à Gitting better

Git Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfGit Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdf
uzair
 
Rc094 010d-git 2 - desconocido
Rc094 010d-git 2 - desconocidoRc094 010d-git 2 - desconocido
Rc094 010d-git 2 - desconocido
Luis Bertel
 
Version Control with Git
Version Control with GitVersion Control with Git
Version Control with Git
Sahil Agarwal
 

Similaire à Gitting better (20)

Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
 
Introduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech ArticleIntroduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech Article
 
Git Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfGit Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdf
 
Git Training
Git TrainingGit Training
Git Training
 
Git usage (Basics and workflow)
Git usage (Basics and workflow)Git usage (Basics and workflow)
Git usage (Basics and workflow)
 
Git Mastery
Git MasteryGit Mastery
Git Mastery
 
Git, github and the hacktober fest
Git, github and the hacktober festGit, github and the hacktober fest
Git, github and the hacktober fest
 
Git_tutorial.pdf
Git_tutorial.pdfGit_tutorial.pdf
Git_tutorial.pdf
 
Workshop on Git and GitHub
Workshop on Git and GitHubWorkshop on Git and GitHub
Workshop on Git and GitHub
 
Git Series - Part 1
Git Series - Part 1 Git Series - Part 1
Git Series - Part 1
 
Git Demo
Git DemoGit Demo
Git Demo
 
Getting Started with Git and GitHub
Getting Started with Git and GitHubGetting Started with Git and GitHub
Getting Started with Git and GitHub
 
setting up a repository using GIT
setting up a repository using GITsetting up a repository using GIT
setting up a repository using GIT
 
Rc094 010d-git 2 - desconocido
Rc094 010d-git 2 - desconocidoRc094 010d-git 2 - desconocido
Rc094 010d-git 2 - desconocido
 
Git and Markdown.pptx
Git and Markdown.pptxGit and Markdown.pptx
Git and Markdown.pptx
 
Git Session 2K23.pptx
Git Session 2K23.pptxGit Session 2K23.pptx
Git Session 2K23.pptx
 
Version Control with Git
Version Control with GitVersion Control with Git
Version Control with Git
 
git github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptxgit github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptx
 
GDSC ZHCET GitHub Session.pdf
GDSC ZHCET GitHub Session.pdfGDSC ZHCET GitHub Session.pdf
GDSC ZHCET GitHub Session.pdf
 
Git interview questions | Edureka
Git interview questions | EdurekaGit interview questions | Edureka
Git interview questions | Edureka
 

Dernier

introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Dernier (20)

Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 

Gitting better