Git/Github & Salesforce

18

Click here to load reader

Transcript of Git/Github & Salesforce

Page 1: Git/Github & Salesforce

Git/Github &

SalesforceGordon Bockus 03/27/2017

Page 2: Git/Github & Salesforce

• Git overview

• Github overview

• Should I use this as a Salesforce developer?

• What about SFDX?

• Questions

Page 3: Git/Github & Salesforce

What is Git?

• Who has used Git?

• Version Control System for tracking changes and

coordinating work on files among multiple people

Page 4: Git/Github & Salesforce

What?

• A tool for helping multiple people all work on the

same code base without losing their minds.

Page 5: Git/Github & Salesforce

Maybe a picture will help

Branches, commits, and merges….oh my

Page 6: Git/Github & Salesforce

What again?

• Branches

• Commits

• Merges

• Pull request

• Rebase

Page 7: Git/Github & Salesforce

Distributed Version Control

System

• Remote (Github) - Merges happen here (mostly)

• branches

• commits

• Local (your machine) - Edits happen here (mostly)

• branches

• commit

Page 8: Git/Github & Salesforce

Distributed Version Control

System

Page 9: Git/Github & Salesforce

Demo

Page 10: Git/Github & Salesforce

Github and friends

• Github

• BitBucket

• Stash

• ??????

Page 11: Git/Github & Salesforce

Github like service

• User access control

• Pull Requests

• Ticketing system

• and more…..

Page 12: Git/Github & Salesforce

Do I need this?

• Yes, yes you do

• Let computers do their thing

Page 13: Git/Github & Salesforce

• Made a change to code, realized it was a mistake and wanted to revert back?

• Lost code or had a backup that was too old?

• Had to maintain multiple versions of a product?

• Wanted to see the difference between two (or more) versions of your code?

• Wanted to prove that a particular change broke or fixed a piece of code?

• Wanted to review the history of some code?

• Wanted to submit a change to someone else's code?

• Wanted to share your code, or let other people work on your code?

• Wanted to see how much work is being done, and where, when and by whom?

• Wanted to experiment with a new feature without interfering with working code?

• In these cases, and no doubt others, a version control system should make your life easier.

• To misquote a friend: A civilized tool for a civilized age.

Page 14: Git/Github & Salesforce

Salesforce

• Org is the final say in what code/configs exists

• Can be manually altered

• Sandboxes are…well sandboxes

• Hard to tell what was changed when

Page 15: Git/Github & Salesforce

SF + git (Today)

• Force migration tool (Ant)

• Illuminated Cloud

• Eclipse

• jsforce

• …lots of options

Page 16: Git/Github & Salesforce

Changes from Admins

• Create branch off master and deploy to org

• Changes are made form SF UI

• pull in changes from org

• Merge with latest from master and open PR

Page 17: Git/Github & Salesforce

Salesforce DX

• Automated deployments from GitHub

repositories

• Continuous integration triggered by repository

activity

• Basically takes some things that are hard but

possible today and makes them simple

Page 18: Git/Github & Salesforce

Final Word

• Git is Awesome (and free)

• You should be using it

• Come on…everybody's doing it