SlideShare a Scribd company logo
Git for Force.com Developers
Managing code and Collaborating on projects
John Stevenson
Developer Evangelist
Salesforce.com
@jr0cket
Safe harbor
Safe harbor statement under the Private Securities Litigation Reform Act of 1995:
This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties
materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results
expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be
deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other
financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any
statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.
The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new
functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our
operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any
litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our
relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of
our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to
larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is
included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent
fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor
Information section of our Web site.
Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently
available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions
based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these
forward-looking statements.
What is this talk about
Understanding the value of Git
Taking your first steps Git
Using Git for Force.com projects
Collaborating with Git & Github
The value of Git
Understanding the value of Git
Manage your code changes over time
- understanding which version of your code is deployed
- rollback & compare to earlier versions
Experiment with code using branching
- branches are easily thrown away or merged if they are valuable
Collaborate easily
- share code commits using distributed nature of Git
Getting Started with Git
Taking your first steps Git
Install Git

http://git-scm.com/

Identify
yourself to git

git config --global user.name “”

Create your
first repository

git config --global user.email “”
git init
Dreamforce 13 developer session: Git for Force.com developers
Salesforce Git Cheat Sheet available in the
Developer Library
Dreamforce 13 developer session: Git for Force.com developers
The common Git commands
Creating a Git repository locally
Create a place to manage your changes
- stored in a folder called .git

git init
Removing the .git folder from your project removes any version
control and you will loose your change history
Adding files
You can tell git which file(s) you want to make
part of the next commit (version)
- either a specific file name or pattern, or using . every change
is added
git add filename
git add .
Understanding what has changed
Git Status gives an overview of local file changes
- you will use this command very often

git status
Git status helps you keep track of your changes and which ones
to make part of the next commit.
Creating a commit (version)
Create a commit with all the files in staging
- providing a message to describe this commit

git commit -m “useful commit message”
Commit messages help the team quickly review changes and
versions
Tracing your commits with Git log
Quickly review your change history
- this is where good commit messages speed things up

git log
git log --oneline --graph --decorate
The default output of Git Log is basic, if you use the command
line then create an alias with your preferred options
Create an alias for git log
Save yourself some typing by creating aliases
- these are saved in the file ~/.gitconfig

git config alias.lg
“log –oneline --graph –decorate”
You can also edit the ~/.gitconf file directly (if you are careful)
Seeing what code has changed
Compare your working files with existing commits
- helps you understand what changed, what should be committed next

git diff
git diff --cached
The --cached option compares the working directory with the
staged files rather than committed changes.
Dreamforce 13 developer session: Git for Force.com developers
Staging and committing
Staging allows you to group changes across multiple files easily
- easier to un-stage files than remove from a commit
- gives another step to manage and compare changes
A Staged file is over-written when you “git add” the same file
- staging does not create a version
- commit when you have a meaningful (set of) change(s)
Share your changes with others
We work in teams, so we can share our commits
- via Github, an internal Git server or directly between developers

git push repository branch
git archive my-project.zip
An archive file (.tar or .zip) will contain the entire history of your
code by default
Using Git with Force.com IDE
Getting Force.com IDE
Download Eclipse version 4.2 or 4.3
- get the Java Developer edition

Add the Force.com IDE plugin
Eclipse uses a plugin called EGit to work with local and remote
repositories, this is part of the Java Developer version
Identifying yourself to Git with Force.com IDE
You will be prompted for your user information when you create
your first commit
Identifying yourself to Git with Force.com IDE
Force.com IDE will use ~/.gitconfig if it already exists
Using Git for Force.com projects
Window > Open Perspective > Git repository exploring
Creating a repository with Force.com IDE
Creating a repository with Force.com IDE
Provide the location and name for your local repository

Don’t select a bare repository as you will not be able to use a working directory
Creating a repository with Force.com IDE
Using Git & Force.com IDE
with an Apex project
Using the Apex Workbook as the example project
Creating a Developer Org
Create a new developer Org
- via developer.force.com
Install a package to create the custom objects our Apex code is
going to work with
- http://bit.ly/ApexWorkbookPackage1_4
Load data into your Developer Org
Open the Developer Console
1) click Debug > Open Execute Anonymous Window
2) the Enter Apex Code window is displayed
3) Enter the following apex code and execute
ApexWorkbook.loadData();
Creating a new project in Force.com IDE
Change to the Force.com Perspective
See the newly created project
Create your first Apex class
Code your Apex class
New Class files marked as untracked
New files and their parent folders are marked with ?
Adding the HelloWorld class to Git
Switch to Git Repository Exploring perspective
Right-click the file name and select Add to Git index
Comparing additional changes with staging
Committing your new code locally
Enter a useful commit message and press commit
Syncronize your changes with your Org
View the local commit history
View details of a commit
Github
Social Coding
Collaborating with Github
Collaborate as a team
Work on Open Source projects
Get contributions from anyone in the world
Include code review into your change management
Dreamforce 13 developer session: Git for Force.com developers
Creating, Forking & Cloning
Creating a repository & Forking a repository
- via the Github website
Cloning a repository (get a local copy)
git clone alias repository-address
Sharing changes back to Github
Git Push sends all commits that are only in your local
repository to Github
Specify with repository (alias name) and branch you want to share
git push alias branch
Cloning a repository in Force.com IDE
Tips when using
Github & Force.com IDE
Be wary of what you name your project
Project & Git repository names should match
A repository on Github has a web address (URL)
- avoid using spaces and special characters
Suggested approach
- create your repository on Github first
- clone your github repository to your laptop
- create a project in Force.com
Commit changes before sync’ing
Commit changes before syncing or merging with your org
- ensure you don’t loose local changes
- commit before using “Save to Server” or “Synchronize with
Server”
Create a branch if you are not sure you want to keep your code
changes
- or use “git stash” if you have many unrelated changes
Drive all changes locally
Avoid making changes directly on the Org
- or sync changes to locally as soon as you make them
Changes on the server are too easy to forget
- can make merging changes more complicated
- more likelihood of merge conflicts, meaning more work for the
team
Where to go next
try.git.com – free online interactive training
Git Visual Cheetsheet – interactive command reference
Salesforce Git Cheatsheet - available at Dreamforce in the
Developer Library
Practice !
Dreamforce 13 developer session: Git for Force.com developers
Thank you
John Stevenson
Developer Evangelist
@jr0cket

git-scm.com
try.github.com
developer.force.com
blog.jr0cket.co.uk
Dreamforce 13 developer session: Git for Force.com developers

More Related Content

PDF
Manage Org Changes Using the Force.com Migration Tool and Git
PDF
Team Development on Force.com with Github and Ant
PPTX
Team Development & Continuous Integration on the Salesforce Platform
PDF
Continuous Integration - Software development lifecycle for Force.com projects
PPTX
Automating Deployment Between Orgs Using Git & Continuous Integration
PDF
Automating the Impossible: End to End Team Development for ISVs (October 14, ...
PDF
Fun with Jenkins & Salesforce
PDF
TDX19 - Untangle Your Org with Salesforce Developer Tools
Manage Org Changes Using the Force.com Migration Tool and Git
Team Development on Force.com with Github and Ant
Team Development & Continuous Integration on the Salesforce Platform
Continuous Integration - Software development lifecycle for Force.com projects
Automating Deployment Between Orgs Using Git & Continuous Integration
Automating the Impossible: End to End Team Development for ISVs (October 14, ...
Fun with Jenkins & Salesforce
TDX19 - Untangle Your Org with Salesforce Developer Tools

What's hot (20)

PDF
TDX19 - Accelerate DevOps with GitLab and Salesforce
PPTX
Continuous Integration In The Cloud Final (1)
PDF
Best Practices for Successful Deployment
PDF
Managing Change With A Sensible Sandbox Architecture
PPTX
Scaling Continuous Integration for Puppet
PPTX
Dependency Injection with the Force DI Framework
PDF
Continuous Integration and Testing with Branch Orgs
PDF
Salesforce API Series: Release Management with the Metadata API webinar
PPTX
Design patterns for salesforce app decomposition
PDF
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
PDF
5 Essentials for Simplifiied Release Management and Continuous Delivery
PDF
Salesforce Release Management - Best Practices and Tools for Deployment
PPTX
How Open Source Embiggens Salesforce.com
PPTX
The definitive guide to salesforce sandbox flosum
PPTX
DevOps in Salesforce AppCloud
PPTX
Salesforce Continuous Integration with AutoRABIT
PDF
Introduction to Enterprise-Release Engineering on the Salesforce Platform
PDF
CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...
PDF
Continuous Delivery (Internet-Briefing 2012-04-03)
PPT
Under the Hood of Sandbox Templates
TDX19 - Accelerate DevOps with GitLab and Salesforce
Continuous Integration In The Cloud Final (1)
Best Practices for Successful Deployment
Managing Change With A Sensible Sandbox Architecture
Scaling Continuous Integration for Puppet
Dependency Injection with the Force DI Framework
Continuous Integration and Testing with Branch Orgs
Salesforce API Series: Release Management with the Metadata API webinar
Design patterns for salesforce app decomposition
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
5 Essentials for Simplifiied Release Management and Continuous Delivery
Salesforce Release Management - Best Practices and Tools for Deployment
How Open Source Embiggens Salesforce.com
The definitive guide to salesforce sandbox flosum
DevOps in Salesforce AppCloud
Salesforce Continuous Integration with AutoRABIT
Introduction to Enterprise-Release Engineering on the Salesforce Platform
CodeLive with Adam Daw - Building a mobile friendly geolocation aware candy t...
Continuous Delivery (Internet-Briefing 2012-04-03)
Under the Hood of Sandbox Templates
Ad

Similar to Dreamforce 13 developer session: Git for Force.com developers (20)

PPT
Dreamforce14 Metadata Management with Git Version Control
PPTX
Git/Github & Salesforce
PPTX
Code repository management
PDF
Git Version Control for the Complete N00b by Adam LaBarge
PDF
Git Mastery
PDF
[Perforce] Git Fusion
PDF
Git & version control crash course
PPTX
Git Series - Part 1
PPTX
Basics of git
PPTX
EdTechJoker Spring 2020 - Lecture 2 - Git
PPTX
Git and Github.pptx
PPTX
Version Control with Git
PPT
Open up your platform with Open Source and GitHub
PDF
Intro to Gitflow
PPTX
Git Basics for Software Version Management
PPTX
Do you git it
PPTX
Sample From Ramesh
PPTX
Introduction to Git
PDF
Harvard ABCD-WWW Git presentation
PDF
The Junior Developer Survival Guide - GDI Ann Arbor 2/10/15
Dreamforce14 Metadata Management with Git Version Control
Git/Github & Salesforce
Code repository management
Git Version Control for the Complete N00b by Adam LaBarge
Git Mastery
[Perforce] Git Fusion
Git & version control crash course
Git Series - Part 1
Basics of git
EdTechJoker Spring 2020 - Lecture 2 - Git
Git and Github.pptx
Version Control with Git
Open up your platform with Open Source and GitHub
Intro to Gitflow
Git Basics for Software Version Management
Do you git it
Sample From Ramesh
Introduction to Git
Harvard ABCD-WWW Git presentation
The Junior Developer Survival Guide - GDI Ann Arbor 2/10/15
Ad

More from John Stevenson (20)

PDF
ClojureX Conference 2017 - 10 amazing years of Clojure
PDF
Confessions of a developer community builder
PDF
Progscon 2017: Taming the wild fronteer - Adventures in Clojurescript
PDF
Introduction to Functional Reactive Web with Clojurescript
PDF
Thinking Functionally with Clojure
PDF
Communication improbable
PDF
Getting into public speaking at conferences
PDF
Functional web with clojure
PDF
Get into Functional Programming with Clojure
PDF
Guiding people into Clojure
PDF
Git and github - Verson Control for the Modern Developer
PDF
Get Functional Programming with Clojure
PDF
So you want to run a developer event, are you crazy?
PPTX
Trailhead live - Overview of Salesforce App Cloud
PDF
Clojure for Java developers
PPTX
Introducing the Salesforce platform
ODP
Getting started with Clojure
PPT
Salesforce Summer of Hacks London - Introduction
PPTX
Heroku Introduction: Scaling customer facing apps & services
PPT
Developers guide to the Salesforce1 Platform
ClojureX Conference 2017 - 10 amazing years of Clojure
Confessions of a developer community builder
Progscon 2017: Taming the wild fronteer - Adventures in Clojurescript
Introduction to Functional Reactive Web with Clojurescript
Thinking Functionally with Clojure
Communication improbable
Getting into public speaking at conferences
Functional web with clojure
Get into Functional Programming with Clojure
Guiding people into Clojure
Git and github - Verson Control for the Modern Developer
Get Functional Programming with Clojure
So you want to run a developer event, are you crazy?
Trailhead live - Overview of Salesforce App Cloud
Clojure for Java developers
Introducing the Salesforce platform
Getting started with Clojure
Salesforce Summer of Hacks London - Introduction
Heroku Introduction: Scaling customer facing apps & services
Developers guide to the Salesforce1 Platform

Recently uploaded (20)

PDF
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
PDF
How Onsite IT Support Drives Business Efficiency, Security, and Growth.pdf
PDF
HCSP-Presales-Campus Network Planning and Design V1.0 Training Material-Witho...
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
GamePlan Trading System Review: Professional Trader's Honest Take
PDF
KodekX | Application Modernization Development
PDF
Advanced IT Governance
PPTX
Comunidade Salesforce São Paulo - Desmistificando o Omnistudio (Vlocity)
PPTX
Cloud computing and distributed systems.
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Telecom Fraud Prevention Guide | Hyperlink InfoSystem
PDF
madgavkar20181017ppt McKinsey Presentation.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Modernizing your data center with Dell and AMD
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
How Onsite IT Support Drives Business Efficiency, Security, and Growth.pdf
HCSP-Presales-Campus Network Planning and Design V1.0 Training Material-Witho...
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
GamePlan Trading System Review: Professional Trader's Honest Take
KodekX | Application Modernization Development
Advanced IT Governance
Comunidade Salesforce São Paulo - Desmistificando o Omnistudio (Vlocity)
Cloud computing and distributed systems.
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
Chapter 3 Spatial Domain Image Processing.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Telecom Fraud Prevention Guide | Hyperlink InfoSystem
madgavkar20181017ppt McKinsey Presentation.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Advanced methodologies resolving dimensionality complications for autism neur...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Modernizing your data center with Dell and AMD

Dreamforce 13 developer session: Git for Force.com developers

  • 1. Git for Force.com Developers Managing code and Collaborating on projects John Stevenson Developer Evangelist Salesforce.com @jr0cket
  • 2. Safe harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 3. What is this talk about Understanding the value of Git Taking your first steps Git Using Git for Force.com projects Collaborating with Git & Github
  • 5. Understanding the value of Git Manage your code changes over time - understanding which version of your code is deployed - rollback & compare to earlier versions Experiment with code using branching - branches are easily thrown away or merged if they are valuable Collaborate easily - share code commits using distributed nature of Git
  • 7. Taking your first steps Git Install Git http://git-scm.com/ Identify yourself to git git config --global user.name “” Create your first repository git config --global user.email “” git init
  • 9. Salesforce Git Cheat Sheet available in the Developer Library
  • 11. The common Git commands
  • 12. Creating a Git repository locally Create a place to manage your changes - stored in a folder called .git git init Removing the .git folder from your project removes any version control and you will loose your change history
  • 13. Adding files You can tell git which file(s) you want to make part of the next commit (version) - either a specific file name or pattern, or using . every change is added git add filename git add .
  • 14. Understanding what has changed Git Status gives an overview of local file changes - you will use this command very often git status Git status helps you keep track of your changes and which ones to make part of the next commit.
  • 15. Creating a commit (version) Create a commit with all the files in staging - providing a message to describe this commit git commit -m “useful commit message” Commit messages help the team quickly review changes and versions
  • 16. Tracing your commits with Git log Quickly review your change history - this is where good commit messages speed things up git log git log --oneline --graph --decorate The default output of Git Log is basic, if you use the command line then create an alias with your preferred options
  • 17. Create an alias for git log Save yourself some typing by creating aliases - these are saved in the file ~/.gitconfig git config alias.lg “log –oneline --graph –decorate” You can also edit the ~/.gitconf file directly (if you are careful)
  • 18. Seeing what code has changed Compare your working files with existing commits - helps you understand what changed, what should be committed next git diff git diff --cached The --cached option compares the working directory with the staged files rather than committed changes.
  • 20. Staging and committing Staging allows you to group changes across multiple files easily - easier to un-stage files than remove from a commit - gives another step to manage and compare changes A Staged file is over-written when you “git add” the same file - staging does not create a version - commit when you have a meaningful (set of) change(s)
  • 21. Share your changes with others We work in teams, so we can share our commits - via Github, an internal Git server or directly between developers git push repository branch git archive my-project.zip An archive file (.tar or .zip) will contain the entire history of your code by default
  • 22. Using Git with Force.com IDE
  • 23. Getting Force.com IDE Download Eclipse version 4.2 or 4.3 - get the Java Developer edition Add the Force.com IDE plugin Eclipse uses a plugin called EGit to work with local and remote repositories, this is part of the Java Developer version
  • 24. Identifying yourself to Git with Force.com IDE You will be prompted for your user information when you create your first commit
  • 25. Identifying yourself to Git with Force.com IDE Force.com IDE will use ~/.gitconfig if it already exists
  • 26. Using Git for Force.com projects Window > Open Perspective > Git repository exploring
  • 27. Creating a repository with Force.com IDE
  • 28. Creating a repository with Force.com IDE Provide the location and name for your local repository Don’t select a bare repository as you will not be able to use a working directory
  • 29. Creating a repository with Force.com IDE
  • 30. Using Git & Force.com IDE with an Apex project Using the Apex Workbook as the example project
  • 31. Creating a Developer Org Create a new developer Org - via developer.force.com Install a package to create the custom objects our Apex code is going to work with - http://bit.ly/ApexWorkbookPackage1_4
  • 32. Load data into your Developer Org Open the Developer Console 1) click Debug > Open Execute Anonymous Window 2) the Enter Apex Code window is displayed 3) Enter the following apex code and execute ApexWorkbook.loadData();
  • 33. Creating a new project in Force.com IDE
  • 34. Change to the Force.com Perspective See the newly created project
  • 35. Create your first Apex class
  • 36. Code your Apex class
  • 37. New Class files marked as untracked New files and their parent folders are marked with ?
  • 38. Adding the HelloWorld class to Git Switch to Git Repository Exploring perspective Right-click the file name and select Add to Git index
  • 40. Committing your new code locally Enter a useful commit message and press commit
  • 41. Syncronize your changes with your Org
  • 42. View the local commit history
  • 43. View details of a commit
  • 45. Collaborating with Github Collaborate as a team Work on Open Source projects Get contributions from anyone in the world Include code review into your change management
  • 47. Creating, Forking & Cloning Creating a repository & Forking a repository - via the Github website Cloning a repository (get a local copy) git clone alias repository-address
  • 48. Sharing changes back to Github Git Push sends all commits that are only in your local repository to Github Specify with repository (alias name) and branch you want to share git push alias branch
  • 49. Cloning a repository in Force.com IDE
  • 50. Tips when using Github & Force.com IDE
  • 51. Be wary of what you name your project Project & Git repository names should match A repository on Github has a web address (URL) - avoid using spaces and special characters Suggested approach - create your repository on Github first - clone your github repository to your laptop - create a project in Force.com
  • 52. Commit changes before sync’ing Commit changes before syncing or merging with your org - ensure you don’t loose local changes - commit before using “Save to Server” or “Synchronize with Server” Create a branch if you are not sure you want to keep your code changes - or use “git stash” if you have many unrelated changes
  • 53. Drive all changes locally Avoid making changes directly on the Org - or sync changes to locally as soon as you make them Changes on the server are too easy to forget - can make merging changes more complicated - more likelihood of merge conflicts, meaning more work for the team
  • 54. Where to go next try.git.com – free online interactive training Git Visual Cheetsheet – interactive command reference Salesforce Git Cheatsheet - available at Dreamforce in the Developer Library Practice !
  • 56. Thank you John Stevenson Developer Evangelist @jr0cket git-scm.com try.github.com developer.force.com blog.jr0cket.co.uk

Editor's Notes

  • #9: You don’t need to remember all the commands I show you, there is a quickstart guide to give you a reference to all the common commands you will use first. There is a more detailed “Cheat sheet” available at Dreamforce
  • #11: Insert diagram
  • #12: To keep this nice and simple I am going to create some text files and capture different versions of those files in Git. This shows what each of these commands does, so even if only use Git via Force.com IDE you know what those commands are doing. This helps you make use of Force.com IDE more efficiently.
  • #13: Diff’ing
  • #14: Diff’ing
  • #15: Diff’ing
  • #16: Diff’ing
  • #17: Diff’ing
  • #18: Diff’ing
  • #19: Diff’ing
  • #20: TODO – fix diagram – git diff next to local repo shold not have the –cached option, it should be on the git diff against staging
  • #21: Diff’ing
  • #22: Diff’ing
  • #24: Add screenshots of using Eclipse and …
  • #25: Add screenshots of using Eclipse and …
  • #26: Add screenshots of using Eclipse and …
  • #27: Add screenshots of using Eclipse and …
  • #28: Add screenshots of using Eclipse and …
  • #29: A bare repository is one without a working directory. Files cannot be added, as the repository can only receive changes via a push to it.
  • #30: Add screenshots of using Eclipse and …
  • #32: Add screenshots of using Eclipse and …
  • #33: Add screenshots of using Eclipse and …
  • #34: Taking tips from the Blog Sandeep wrote on using Git.
  • #35: Taking tips from the Blog Sandeep wrote on using Git.
  • #36: Add screenshots of using Eclipse and …
  • #37: Add screenshots of using Eclipse and …
  • #38: Add screenshots of using Eclipse and …
  • #39: Add screenshots of using Eclipse and …
  • #40: Add screenshots of using Eclipse and …
  • #41: Add screenshots of using Eclipse and …
  • #42: Add screenshots of using Eclipse and …