SlideShare ist ein Scribd-Unternehmen logo
1 von 184
Downloaden Sie, um offline zu lesen
Getting Git Right
Who knows 
?
Facts 
500 Developers
1000+ Nerds 
Facts
working on 9 products 
Facts
or in just 3 words 
We Software
We SoftwareTeams
they know what’s going on! 
really small team 
Let’s 
do it! 
Great 
idea! Productivity++
Productivity? 
team is growing 
Let’s 
do it! 
Great! Why? 
Who will 
do it? 
Is it done? 
Have you 
talked to QA? 
I have no time 
for this!
Productivity?? 
we’re not alone 
Is it 
profitable? 
When is it 
done?
Devel ping S ftware 
is a 
S cial Challenge
happy developers & 
productive teams Ship software 
Tools 
faster & smarter
Ship software 
faster & smarter 
happy developers & 
productive teams
Getting Git Right
All sorts of teams 
are on 
&
All sort of 
teams
Migrating soon? 
http://atlassian.com/git/
is just a tool!
Getting Git Right
Happier Developer 
with 
Be a
Getting Git Right
Time machine without paradoxes?
Why does make you happy? 
2 Freedom & Safety 
Explore & Understand 
1 
3 
Fast & Compact 
4 Control and Assemble
But Why? 
Or How?
A lot of the “Why” can 
be explained at the 
Conceptual model
Written in C by Linux kernel 
and filesystem developers
5 minutes dive into 
internals
Git is fundamentally a content-addressable 
filesystem with a VCS user interface written 
on top of it 
Pro Git Book, Section: Git Inter nals ” 
“
cba0a.. 
commit 
tree 
blob 
content 
blob 
content 
blob 
content 
98ca9.. 
92ec2.. 
5b1d3.. 
911e7.. 
cba0a.. 
tree 92ec2.. 
blob 5b1d3.. 
blob 911e7.. 
blob 
author 
committer 
README 
LICENSE 
test.rb 
size 
size 
size 
size 
size 
parent 
data model 
r34ti..
$> tree .git/objects 
.git/objects 
├── info 
└── pack 
2 directories
git add some-file.txt
$> tree .git/objects 
.git/objects 
├── e4 
│ └── 3a6ac59164adadac854d591001bbb10086f37d 
├── info 
└── pack 
3 directories, 1 file 
zlib compressed 
SHA1
git commit -m "First commit"
$> tree .git/objects 
.git/objects 
├── 13 
│ └── 1e360ae1a0c08acd18182c6160af6a83e0d22f 
├── 31 
│ └── 995f2d03aa31ee97ee2e814c9f0b0ffd814316 
├── e4 
│ └── 3a6ac59164adadac854d591001bbb10086f37d 
├── info 
└── pack 
5 directories, 3 files 
Commit 
Tree 
Blob
cba0a.. 
commit 
tree 
blob 
content 
blob 
content 
blob 
content 
98ca9.. 
92ec2.. 
5b1d3.. 
911e7.. 
cba0a.. 
tree 92ec2.. 
blob 5b1d3.. 
blob 911e7.. 
blob 
author 
committer 
README 
LICENSE 
test.rb 
size 
size 
size 
size 
size 
parent 
data model 
r34ti..
data model 
commit 
tree c4d.. 
author 
message: 1st! 
tree 
blob 5b1d3.. 
blob 911e7.. 
blob 
cba0a.. 
size 
size 
READM 
LICENS 
test.rb 
parent 
… 
commit 
tree c4d.. 
author 
message: Update! 
parent 8efc8.. 
tree 
blob 5b1d3.. 
blob 911e7.. 
blob 
cba0a.. 
size 
size 
READM 
LICENS 
test.rb 
… 
commit 
tree c4d.. 
author 
message: More! 
parent bc5e7.. 
tree 
blob 5b1d3.. 
blob 911e7.. 
blob 
cba0a.. 
size 
size 
READM 
LICENS 
test.rb 
… 
…
echo "// Comment" >> some-file.txt
git add some-file.txt
$> tree .git/objects 
.git/objects 
├── 13 
│ └── 1e360ae1a0c08acd18182c6160af6a83e0d22f 
├── 31 
│ └── 995f2d03aa31ee97ee2e814c9f0b0ffd814316 
├── c1 
│ └── 9e6823e34980033917b6427f3e245ce2102e6e 
├── e4 
│ └── 3a6ac59164adadac854d591001bbb10086f37d 
6 directories, 4 files 
Entirely new BLOB
wat?
git gc
$> tree .git/objects 
.git/objects 
├── info 
│ └── packs 
└── pack 
├── pack-7475314b451a882d77b1535d215def8bad0f4306.idx 
└── pack-7475314b451a882d77b1535d215def8bad0f4306.pack 
2 directories, 3 files
Loose Objects Packfile 
1. zlib compressed 
2. Delta encoded
Fast and Compact
Everything is local 
Except push & pull
Read: FAST
But what if my repo is big? 
2 12,000 non-merge commits 
446k lines of code added 
1 
3 
Linux Kernel release has 15+ million LOC 
4 1,339 contributors 
source lwn.net
Control and Assemble
What is a merge? 
merges keep the context of 
the feature’s commits 
M 
Merge commit 
feature 
master 
feature 
master
Anatomy of a merge 
.git/objects/36/80d8c8fd182f97cb0e75045e2fed5c7b7613ed 
tree f362c42032aff677c1a09c3f070454df5b411239 
parent 49a906f5722ad446a131778cea52e3fda331b706 
parent bd1174cd0f30fe9be9efdd41dcd56256340f230e 
author Marcus Bertrand <mbertrand@atlassian.com> 1409002123 -0700 
committer Marcus Bertrand <mbertrand@atlassian.com> 1409002123 -0700 
Merge branch 'foo/mybranch' 
commit
merge is better in git 
git knows the ancestry 
1 
2 
The merge is local 
3 powerful merge strategies
Let’s talk about merge strategies! 
git has breadth of choice on 
how to merge changes! 
resolve recursive octopus 
ours subtree yours?
What is a fast-forward merge? 
It will just shift the HEAD tag 
master 
feature 
master 
feature
merge strategy: resolve 
Three-way merge of the ancestors 
feature 
Common ancestor 
master M 
Merge commit
merge strategy: recursive 
3-way merge but climbs the ancestry tree 
recursively if there are multiple ancestors 
M 
M 
master 
feature 
ancestor 1 
ancestor 3 
ancestor 2
merge strategy: ours 
Records a merge but skips incoming changes 
feature 
master M 
IGNORE!
use “ours” to promote 
more recent branches
merge becomes a 
non-event
rebase: Rewrite history 
with safety belts on
What is a rebase? 
It’s a way to replay commits, 
one by one, on top of a branch 
master 
feature
When you use merge… 
You pollute your feature branch with 
non-meaningful merge commits 
not really part 
of feature… 
feature 
master 
meaningful 
merge
What is a rebase? 
It can be used to keep a feature 
branch up to date with master 
feature 
master
What is an 
--interactive rebase? 
Helps you clean up your private 
branches before publishing them 
reword 
fixup 
pick 
squash 
edit 
exec
CUSTOMARY 
WARNING! 
rebase rewrites history! 
Treat this power with great care. Only 
rewrite history of local branches or…
So what do I use? 
merge or rebase?
Merge Commit Rebase (FF) Rebase (Squash) 
No merge commits 
Verbose history 
Easy to read 
Can be more difficult 
to trace changes 
Which should I use? 
“Ugly” history 
Full traceability 
Hard to screw up 
mostly 
some
Read more on the topic! 
bit.do/merge-or-rebase
Pro tips for the road
Everyone has their favorite, but! 
Liquid prompt is awesome 
http://bit.do/liquid-prompt
Get all the alias goodness on Bitbucket 
http://bit.do/git-aliases
Getting Git Right
Why does make you happy? 
2 Freedom & Safety 
Explore & Understand 
1 
3 
Fast & Compact 
4 Control and Assemble
Happy Developerwith 
A
Productive Teamwith 
A
Why makes a team great! 
2 Improving Code Quality 
Protect Code 
1 
3 
Efficient Workflows 
4 Git & Your Toolchain
Efficient Workflows
Can we still fix a bug for the 
upcoming Release ? 
Is the code for that 
Feature 
complete? 
How do we do Hotfix 
for the current version? 
Has everyoneReviewed 
the code for this feature ?
We don’t know! 
What’s the best 
Git workflow?
different cultures 
+ different products 
+ different teams 
= different workflows 
What’s the best 
Git workflow?
Design 
your own 
Workflows
Issues Code
Issues Code 
JIRA-123 JIRA-123 
JIRA-456 
JIRA-456
Can’t be released right now 
Unfinished features in your trunk / master branch
Branch per issue First: 
feature/JIRA-30 
stable master branch 
isolated feature work 
master
Branch per issue First: 
feature/JIRA-30-user-avatars 
branch type 
issue key 
description
Branch per issue First: 
bugfix/JIRA-31-oauth-3lo-NPE 
branch type 
issue key 
description
Branch per issue First: 
hotfix/JIRA-32-broke-ie8-again 
branch type 
issue key 
description
Typos happne! 
Tool switching sucks
Getting Git Right
Getting Git Right
Is the branch green? 
Branch name 
pre-populated
Confounding build breakages 
master
Confounding build breakages 
bugfix/JRA-1 
master
Is the branch green? 
Branch name 
pre-populated
SAAS Workflow 
1 Atlassian Marketplace 
Workflow
Simplest Workflow 
release from here 
master 
feature/JIRA-30 
feature/JIRA-45
Simplest Workflow 
release from here 
master 
develop 
feature/JIRA-30 
feature/JIRA-45 
integrate here
Installable software 
2 Atlassian Stash 
Workflow
Multiple Product Versions 
v 1.1 
v 1.2 
master 
feature/JIRA-30
Multiple Product Versions 
v 1.1 
bugfix/JIRA-41 
v 1.2 
master
Multiple Product Versions 
v 1.1 
bugfix/JIRA-41 
v 1.2 
master
Multiple Product Versions 
bugfix/JIRA-45 
v 1.1 
v 1.2 
master
Multiple Product Versions 
bugfix/JIRA-45 
v 1.1 
v 1.2 
master
Multiple Product Versions 
bugfix/JIRA-45 
v 1.1 
v 1.2 
master 
boring work
Automatic merges 
with a Git hook 
https://bitbucket.org/durdn/automatic-merge-hook
Automatic merges 
with Stash
Nearly everything is possible with 
Design your workflow
Improving 
Code Quality
Photo: Yogi (Flickr) 
RCeovdieew
Have you ever been sitting in a long review session?
Felt uncomfortable when your code was discussed?
Better 
Code 
Shared 
Knowledge 
Team 
Ownership 
Code Review
Developer guilt 
G = 
1 
R+1
Code Reviews
Pull Requests 

Pull Requests
Pull Requests 
do it before merge
Pull Request Creation
Pull Request Creation
Pull Request Creation
Pull Request Creation 
Discuss
Discuss your changes
Side by side diff the choice is yours
Merge
Merge wait!
Pull Request Merge Checks
Who would be the best to review 
my code?
Auto Suggest Reviewers 
Free Add On For
Suggestions: 
committed code to this 
Pull Request 
contributed files that 
were modified
Make 
Code Reviews 
part of your daily work 
asynchronously 
less painful
Protect Code 
without slowing you down
Control access to your repositories
Permissions for Repositories 
 
 
  
  
 
 
 
Users & Groups 
Repositories
Permissions for Repositories 
 
 
  
  
 
 
 
Projects 
Users & Groups
Permissions for Repositories 
 
 
  
  
 
 
 
Projects 
Users & Groups
Permissions for Repositories 
 
 
  
  
 
 
 
Projects 
Users & Groups
Pure 
Permissions for Repositories 
Repository Manger 
- visual interface 
- role based 
- file system access 
- SSH 
- HTTPS
Repository Manger 
Less time configuring 
and waiting 
more time to code
People can change code - You control the input
Forks 
The way to allow changes 
& protect your code
Server side clone of the repository 
 

Server side clone of the repository 
 
Pull request to contribute changes 
 

Protect your repo
No protection 
The Git Dude
master <deploy on green build to production> branch 
everyone can read & branch 
master 
feature/IRKD-30 
Branch Permissions with
Branch Permissions with 
master <deploy on green build to production> branch 
master 
feature/IRKD-30 
only allowed by trusted devs
Branch Permissions with
Know your priorities 
Security DevSpeed
Git and your 
Toolchain
& CI
Running builds on feature branches 
experiment on your feature branch
Running builds on feature branches 
keep your master branch green 
experiment on your feature branch
try to remember 
You’ll forget to set up the build in your feature branch!
Auto detect branches
x developer 
times 
x push to remote 
= lots of builds (waiting)
Running builds on feature branches 
automatically 
v 1.2 
master 
feature/IRKD-30 manually
branch pull merge
Report the status!
branch pull merge 
IN PROGRESS IN REVIEW DONE
JUST LET ME CODE!
branch pull merge 
IN PROGRESS IN REVIEW DONE
TO DO IN PROGRESS IN REVIEW DONE 
Branch 
Commit 
Pull Request 
Open… Pull Request 
… Merged
Getting Git Right
What’s the status? 
Issue Status Issue Tracker 
Pull Request 
Build Status 
Git Manager 
Build Server 
Deploy Status Config Manager
Getting Git Right
Development Info
Development Info 
Branch
Development Info 
Branch 
Commit 
Build 
Failed…
Development Info 
Branch 
Commit 
Build 
Failed… Successful 
Pull request 
Open…
Development Info 
Branch 
Commit 
Build 
Failed… Successful 
Pull request 
Open… Merged
Development Info 
Branch 
Commit 
Build 
Failed… Successful 
Pull request 
Open… Merged 
Deploy
JUST LET ME CODE!
JUST LET ME CODE!
All Development Info 
Real Time 
Notification 
History Discussions
Getting Git Right
See what’s going on 
with
See what’s going on 
Builds 
with
Bots 
See what’s going on 
with
Pages 
See what’s going on 
with
Why Git?Everything is awesome
Why Git?Everything is awesome 
Doesn’t convince everyone
Why Git? 
More time to code 
Better collaboration 
Dev productivity 
The future 
Economics 
Deliver software faster 
Less bugs 
Happy customers
Why Git? 
Ship software faster & smarter

Weitere ähnliche Inhalte

Was ist angesagt?

The everyday developer's guide to version control with Git
The everyday developer's guide to version control with GitThe everyday developer's guide to version control with Git
The everyday developer's guide to version control with GitE Carter
 
Git-flow workflow and pull-requests
Git-flow workflow and pull-requestsGit-flow workflow and pull-requests
Git-flow workflow and pull-requestsBartosz Kosarzycki
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsLee Hanxue
 
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Simplilearn
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hubVenkat Malladi
 
Gitlab flow solo
Gitlab flow soloGitlab flow solo
Gitlab flow soloviniciusban
 
Git Tutorial I
Git Tutorial IGit Tutorial I
Git Tutorial IJim Yeh
 
Git Started With Git
Git Started With GitGit Started With Git
Git Started With GitNick Quaranto
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash CourseNilay Binjola
 
Git hub ppt presentation
Git hub ppt presentationGit hub ppt presentation
Git hub ppt presentationAyanaRukasar
 
Git - An Introduction
Git - An IntroductionGit - An Introduction
Git - An IntroductionBehzad Altaf
 

Was ist angesagt? (20)

Git and Github
Git and GithubGit and Github
Git and Github
 
Github basics
Github basicsGithub basics
Github basics
 
Git 101 for Beginners
Git 101 for Beginners Git 101 for Beginners
Git 101 for Beginners
 
Git and github 101
Git and github 101Git and github 101
Git and github 101
 
Intro to Git and GitHub
Intro to Git and GitHubIntro to Git and GitHub
Intro to Git and GitHub
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
The everyday developer's guide to version control with Git
The everyday developer's guide to version control with GitThe everyday developer's guide to version control with Git
The everyday developer's guide to version control with Git
 
Git-flow workflow and pull-requests
Git-flow workflow and pull-requestsGit-flow workflow and pull-requests
Git-flow workflow and pull-requests
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: Foundations
 
git and github
git and githubgit and github
git and github
 
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hub
 
Gitlab flow solo
Gitlab flow soloGitlab flow solo
Gitlab flow solo
 
Git Tutorial I
Git Tutorial IGit Tutorial I
Git Tutorial I
 
Git Started With Git
Git Started With GitGit Started With Git
Git Started With Git
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash Course
 
Git hub ppt presentation
Git hub ppt presentationGit hub ppt presentation
Git hub ppt presentation
 
GIT INTRODUCTION
GIT INTRODUCTIONGIT INTRODUCTION
GIT INTRODUCTION
 
Git & GitLab
Git & GitLabGit & GitLab
Git & GitLab
 
Git - An Introduction
Git - An IntroductionGit - An Introduction
Git - An Introduction
 

Ähnlich wie Getting Git Right

Be a Happier Developer with Git / Productive Team #gettinggitright
Be a Happier Developer with Git / Productive Team #gettinggitright Be a Happier Developer with Git / Productive Team #gettinggitright
Be a Happier Developer with Git / Productive Team #gettinggitright Shunsuke (Sean) Osawa
 
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...hamidsamadi
 
Git Ready! Workflows
Git Ready! WorkflowsGit Ready! Workflows
Git Ready! WorkflowsAtlassian
 
That's (g)it! par Sébastien Dawans CETIC
That's (g)it! par Sébastien Dawans CETICThat's (g)it! par Sébastien Dawans CETIC
That's (g)it! par Sébastien Dawans CETICLa FeWeb
 
Geecon11 - Git: a Gentle InTroduction
Geecon11 -  Git: a Gentle InTroductionGeecon11 -  Git: a Gentle InTroduction
Geecon11 - Git: a Gentle InTroductionBruno Bossola
 
GIT: a Gentle InTroduction
GIT: a Gentle InTroductionGIT: a Gentle InTroduction
GIT: a Gentle InTroductionCodemotion
 
Gerrit linuxtag2011
Gerrit linuxtag2011Gerrit linuxtag2011
Gerrit linuxtag2011thkoch
 
Git_tutorial.pdf
Git_tutorial.pdfGit_tutorial.pdf
Git_tutorial.pdfAliaaTarek5
 
Git 101, or, how to sanely manage your Koha customizations
Git 101, or, how to sanely manage your Koha customizationsGit 101, or, how to sanely manage your Koha customizations
Git 101, or, how to sanely manage your Koha customizationsIan Walls
 
Practical git for developers
Practical git for developersPractical git for developers
Practical git for developersWim Godden
 
Chenli linux-kerne-community
Chenli linux-kerne-communityChenli linux-kerne-community
Chenli linux-kerne-community力 陈
 
Version Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part IVersion Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part ISergey Aganezov
 
Git essential training & sharing self
Git essential training & sharing selfGit essential training & sharing self
Git essential training & sharing selfChen-Tien Tsai
 
Git workshop 33degree 2011 krakow
Git workshop 33degree 2011 krakowGit workshop 33degree 2011 krakow
Git workshop 33degree 2011 krakowLuca Milanesio
 
Git basics a starter on git and its ecosystem
Git basics  a starter on git and its ecosystemGit basics  a starter on git and its ecosystem
Git basics a starter on git and its ecosystemFrançois D'Agostini
 

Ähnlich wie Getting Git Right (20)

Be a Happier Developer with Git / Productive Team #gettinggitright
Be a Happier Developer with Git / Productive Team #gettinggitright Be a Happier Developer with Git / Productive Team #gettinggitright
Be a Happier Developer with Git / Productive Team #gettinggitright
 
Ultimate Git Workflow - Seoul 2015
Ultimate Git Workflow - Seoul 2015Ultimate Git Workflow - Seoul 2015
Ultimate Git Workflow - Seoul 2015
 
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
Git workflows á la-carte, Presenation at jdays2013 www.jdays.se by Nicola Pao...
 
Git Ready! Workflows
Git Ready! WorkflowsGit Ready! Workflows
Git Ready! Workflows
 
That's (g)it! par Sébastien Dawans CETIC
That's (g)it! par Sébastien Dawans CETICThat's (g)it! par Sébastien Dawans CETIC
That's (g)it! par Sébastien Dawans CETIC
 
3 Git
3 Git3 Git
3 Git
 
Geecon11 - Git: a Gentle InTroduction
Geecon11 -  Git: a Gentle InTroductionGeecon11 -  Git: a Gentle InTroduction
Geecon11 - Git: a Gentle InTroduction
 
GIT: a Gentle InTroduction
GIT: a Gentle InTroductionGIT: a Gentle InTroduction
GIT: a Gentle InTroduction
 
Gerrit linuxtag2011
Gerrit linuxtag2011Gerrit linuxtag2011
Gerrit linuxtag2011
 
Git_tutorial.pdf
Git_tutorial.pdfGit_tutorial.pdf
Git_tutorial.pdf
 
Git 101, or, how to sanely manage your Koha customizations
Git 101, or, how to sanely manage your Koha customizationsGit 101, or, how to sanely manage your Koha customizations
Git 101, or, how to sanely manage your Koha customizations
 
Practical git for developers
Practical git for developersPractical git for developers
Practical git for developers
 
Chenli linux-kerne-community
Chenli linux-kerne-communityChenli linux-kerne-community
Chenli linux-kerne-community
 
Version Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part IVersion Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part I
 
Git essential training & sharing self
Git essential training & sharing selfGit essential training & sharing self
Git essential training & sharing self
 
Git workshop 33degree 2011 krakow
Git workshop 33degree 2011 krakowGit workshop 33degree 2011 krakow
Git workshop 33degree 2011 krakow
 
Git basics a starter on git and its ecosystem
Git basics  a starter on git and its ecosystemGit basics  a starter on git and its ecosystem
Git basics a starter on git and its ecosystem
 
Gitting better
Gitting betterGitting better
Gitting better
 
How to use git without rage
How to use git without rageHow to use git without rage
How to use git without rage
 
M.Mozūras - git
M.Mozūras - gitM.Mozūras - git
M.Mozūras - git
 

Mehr von Sven Peters

Team Shaping - Building a shared understanding
Team Shaping - Building a shared understandingTeam Shaping - Building a shared understanding
Team Shaping - Building a shared understandingSven Peters
 
Developer Joy - How great teams get s%*t done
Developer Joy - How great teams get s%*t doneDeveloper Joy - How great teams get s%*t done
Developer Joy - How great teams get s%*t doneSven Peters
 
Teams Flow, Stay in sync, async
Teams Flow, Stay in sync, asyncTeams Flow, Stay in sync, async
Teams Flow, Stay in sync, asyncSven Peters
 
The Hitchhiker's Guide to a Great Developer Career
The Hitchhiker's Guide to a Great Developer CareerThe Hitchhiker's Guide to a Great Developer Career
The Hitchhiker's Guide to a Great Developer CareerSven Peters
 
The Effective Developer - Work Smarter, not Harder
The Effective Developer - Work Smarter, not HarderThe Effective Developer - Work Smarter, not Harder
The Effective Developer - Work Smarter, not HarderSven Peters
 
How to Become a Conference Speaker
How to Become a Conference SpeakerHow to Become a Conference Speaker
How to Become a Conference SpeakerSven Peters
 
The Effective Developer - Work Smarter, Not Harder
The Effective Developer - Work Smarter, Not HarderThe Effective Developer - Work Smarter, Not Harder
The Effective Developer - Work Smarter, Not HarderSven Peters
 
5 Things: How to Rock Remote Work
5 Things: How to Rock Remote Work5 Things: How to Rock Remote Work
5 Things: How to Rock Remote WorkSven Peters
 
A Career Advice: Change is the Only Constant
A Career Advice: Change is the Only ConstantA Career Advice: Change is the Only Constant
A Career Advice: Change is the Only ConstantSven Peters
 
Be More Productive with Confluence
Be More Productive with ConfluenceBe More Productive with Confluence
Be More Productive with ConfluenceSven Peters
 
Less Process, more Guidance with a Team Playbook
Less Process, more Guidance with a Team PlaybookLess Process, more Guidance with a Team Playbook
Less Process, more Guidance with a Team PlaybookSven Peters
 
The Secret Sauce of Successful Teams
The Secret Sauce of Successful TeamsThe Secret Sauce of Successful Teams
The Secret Sauce of Successful TeamsSven Peters
 
Rise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentRise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentSven Peters
 
Kick-@$$ Sofware Development
Kick-@$$ Sofware DevelopmentKick-@$$ Sofware Development
Kick-@$$ Sofware DevelopmentSven Peters
 
The 5 Hottest Atlassian News from Summit 2014
The 5 Hottest Atlassian News from Summit 2014The 5 Hottest Atlassian News from Summit 2014
The 5 Hottest Atlassian News from Summit 2014Sven Peters
 
Atlassian - Software For Every Team
Atlassian - Software For Every TeamAtlassian - Software For Every Team
Atlassian - Software For Every TeamSven Peters
 
It's the culture, but not as you know it
It's the culture, but not as you know itIt's the culture, but not as you know it
It's the culture, but not as you know itSven Peters
 
Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014Sven Peters
 
Build Better Software Together
Build Better Software TogetherBuild Better Software Together
Build Better Software TogetherSven Peters
 

Mehr von Sven Peters (20)

Team Shaping - Building a shared understanding
Team Shaping - Building a shared understandingTeam Shaping - Building a shared understanding
Team Shaping - Building a shared understanding
 
Developer Joy - How great teams get s%*t done
Developer Joy - How great teams get s%*t doneDeveloper Joy - How great teams get s%*t done
Developer Joy - How great teams get s%*t done
 
Teams Flow, Stay in sync, async
Teams Flow, Stay in sync, asyncTeams Flow, Stay in sync, async
Teams Flow, Stay in sync, async
 
The Hitchhiker's Guide to a Great Developer Career
The Hitchhiker's Guide to a Great Developer CareerThe Hitchhiker's Guide to a Great Developer Career
The Hitchhiker's Guide to a Great Developer Career
 
The Effective Developer - Work Smarter, not Harder
The Effective Developer - Work Smarter, not HarderThe Effective Developer - Work Smarter, not Harder
The Effective Developer - Work Smarter, not Harder
 
How to Become a Conference Speaker
How to Become a Conference SpeakerHow to Become a Conference Speaker
How to Become a Conference Speaker
 
The Effective Developer - Work Smarter, Not Harder
The Effective Developer - Work Smarter, Not HarderThe Effective Developer - Work Smarter, Not Harder
The Effective Developer - Work Smarter, Not Harder
 
5 Things: How to Rock Remote Work
5 Things: How to Rock Remote Work5 Things: How to Rock Remote Work
5 Things: How to Rock Remote Work
 
A Career Advice: Change is the Only Constant
A Career Advice: Change is the Only ConstantA Career Advice: Change is the Only Constant
A Career Advice: Change is the Only Constant
 
Be More Productive with Confluence
Be More Productive with ConfluenceBe More Productive with Confluence
Be More Productive with Confluence
 
Less Process, more Guidance with a Team Playbook
Less Process, more Guidance with a Team PlaybookLess Process, more Guidance with a Team Playbook
Less Process, more Guidance with a Team Playbook
 
The Secret Sauce of Successful Teams
The Secret Sauce of Successful TeamsThe Secret Sauce of Successful Teams
The Secret Sauce of Successful Teams
 
Rise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentRise of the Machines - Automate your Development
Rise of the Machines - Automate your Development
 
Kick-@$$ Sofware Development
Kick-@$$ Sofware DevelopmentKick-@$$ Sofware Development
Kick-@$$ Sofware Development
 
The 5 Hottest Atlassian News from Summit 2014
The 5 Hottest Atlassian News from Summit 2014The 5 Hottest Atlassian News from Summit 2014
The 5 Hottest Atlassian News from Summit 2014
 
Coding Culture
Coding CultureCoding Culture
Coding Culture
 
Atlassian - Software For Every Team
Atlassian - Software For Every TeamAtlassian - Software For Every Team
Atlassian - Software For Every Team
 
It's the culture, but not as you know it
It's the culture, but not as you know itIt's the culture, but not as you know it
It's the culture, but not as you know it
 
Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014
 
Build Better Software Together
Build Better Software TogetherBuild Better Software Together
Build Better Software Together
 

Kürzlich hochgeladen

Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6DianaGray10
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarPrecisely
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 

Kürzlich hochgeladen (20)

Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
 
20230104 - machine vision
20230104 - machine vision20230104 - machine vision
20230104 - machine vision
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity Webinar
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 

Getting Git Right