SlideShare a Scribd company logo
1 of 59
Download to read offline
Culture of git as roots of your CI
Maksym Vlasov, PDFfiller, Ukraine
About @maxymvlasov
About @maxymvlasov
About @maxymvlasov
About @maxymvlasov
About @maxymvlasov
t.me/catops
Why I'm here?
Why I'm here?
Why I'm here?
1 week
8workdays
Why I'm here?
1 week
8workdays
Styleguide
• Commit messages
https://chris.beams.io/posts/git-commit/
Styleguide
• Commit messages
https://chris.beams.io/posts/git-commit/
Styleguide
• Commit messages
https://chris.beams.io/posts/git-commit/
Styleguide
• Commit messages https://chris.beams.io/posts/git-commit/
• Branch naming
Styleguide
• Commit messages https://chris.beams.io/posts/git-commit/
• Branch naming
issue_type / [ path_to_folder /]
( short_description | Jira issue ID | GitHub issue # )
Debug/fix commits
1. Use WIP bot https://github.com/apps/wip
2. Fixed new functionality? Use git rebase -> fixup
Debug/fix commits
1. Use WIP bot https://github.com/apps/wip
2. Fixed new functionality? Use git rebase -> fixup
3. Yes, you CAN change history in your branch
4. Found bug for old functional? Fix it in new branch
Debug/fix commits
1. Use WIP bot https://github.com/apps/wip
2. Fixed new functionality? Use git rebase -> fixup
3. Yes, you CAN change history in your branch
4. Found bug for old functional? Fix it in new branch
5. Use --force-with-lease instead of --force
6. MUST NOT fix/debug/change history in master.
I also make this mistakes, so...
?
Do review your code yourself
Do review your code yourself
Yet another
23 commits here
Do review your code yourself
Yet another
23 commits here 4,5 hours
Do review your code yourself
Yet another
23 commits here 4,5 hours
8k lines
Restructured
2 branches to 1
81 commits to 23
w/o lossing informative
How I did it?
• git rebase -i functional (link)
• Spliting commits (link)
• git branch -m, git branch -D
• Few tea cups and good music :)
Useful links
Please, read it:
• habr.com/company/flant/blog/419733
• codementor.io/citizen428/git-tutorial-10-common-git-problems-and-
how-to-fix-them-aajv0katd
• gist.github.com/wayspurrchen/940a21127b77ac1a9720
• git-scm.com/doc
Link to presentation: tinyurl.com/stage-git
Git tags
> tag specific points in history as being important
https://git-scm.com/book/en/v2/Git-Basics-Tagging
Git tags
Git submodules
Git submodules
• Submodules, like subtrees, aim to reuse
code from another repo somewhere inside
your own repo’s tree
https://medium.com/@porteneuve/mastering-git-submodules-34c65e940407
Git submodules
[status]
submoduleSummary = true
[diff]
submodule = log
[push]
recurseSubmodules = on-demand
[alias]
spull = "__git_spull() { git pull "$@" && git
submodule sync -recursive && git submodule update
--init --recursive; }; __git_spull"
https://medium.com/@porteneuve/mastering-git-submodules-34c65e940407
git subtrees approach
https://medium.com/@porteneuve/mastering-git-subtrees-943d29a798ec
git subtrees approach
https://medium.com/@porteneuve/mastering-git-subtrees-943d29a798ec
git submodules/subtrees
Work efficiency time!
Work efficiency time!
• Use aliases
Work efficiency time!
• Use aliases
– Oh-my-zsh: Cheatsheet
– Other:
• Look at oh-my-zsh aliases :)
Work efficiency time!
• Use aliases
– Oh-my-zsh: Cheatsheet
– Other:
• Look at oh-my-zsh aliases :)
• g = git
• gb = git branch
• gc = git commit -v
• gc! = git commit -v --amend
• gcb = git checkout -b
• gco = git checkout
• gss = git status -s
Work efficiency time!
b = branch -vv
bb = branch -vv --all
bbb = "!git for-each-ref --format='%(committerdate) %09
%(authorname) %09 %(refname:short)' | sort"
More here
Work efficiency time!
stsv = !git stash save $(date "+%F_%T")
la = "!git config -l | grep alias| cut -c 7-"
s = "!f() { [ -z "$GIT_PREFIX" ] || cd "$GIT_PREFIX" && git diff --color "$@" |
diff-so-fancy | less --tabs=4 -RFX; }; f"
More here
Work efficiency time!
• Use aliases
• Use git hooks
Work efficiency time!
• Use aliases
• Use git hooks
– Client-Side
– Server-Side
Work efficiency time!
pre-commit (by default)
Work efficiency time!
pre-commit
Work efficiency time!
prepare-commit-msg
Work efficiency time!
And many others:
https://www.atlassian.com/git/tutorials/git-hooks
https://www.kernel.org/pub/software/scm/git/docs/githooks.html
Work efficiency time!
• Use aliases
• Use git hooks
• Read git history
Work efficiency time!
glog = git log --oneline --decorate --color --graph
Work efficiency time!
lg = log --graph --pretty=format:"%C(yellow)[%h]%Creset
%Cred[%ar]%Creset%Cblue[%an]%Creset%s"
Work efficiency time!
l = log --pretty=format:"%C(yellow)[%h]%Creset
%Cred[%ar]%Creset%Cblue[%an]%Creset%s" --since=1.weeks
Work efficiency time!
ls = log --pretty=format:"%C(yellow)%h%Cred%d
%Cblue[%an]%Creset%s" --decorate --numstat
Work efficiency time!
lss = log -p --pretty=format:"%C(yellow)[%h]%Creset
%Cred[%ar]%Creset%Cblue[%an]%Creset%s"
Work efficiency time!
• Use aliases
• Use git hooks
• Read git history
• Use global .gitignore
Work efficiency time!
• Use aliases
• Use git hooks
• Read git history
• Use global .gitignore
– ~/.config/git/ignore
– [core]
excludesfile = ~/git/ignore_global
Work efficiency time!
• Use aliases
• Use git hooks
• Read git history
• Use global .gitignore
• Sign all with GPG
Work efficiency time!
[user]
signingkey = D17008C3CDCF957F
[gpg]
program = /usr/bin/gpg
[commit]
gpgsign = true
https://git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work
https://help.github.com/articles/managing-commit-signature-verification/
Work efficiency time!
• Use aliases
• Use git hooks
• Read git history
• Use global .gitignore
• Sign all with GPG
• And use your own ...
Work efficiency time!
• Use aliases
• Use git hooks
• Read git history
• Use global .gitignore
• Sign all with GPG
• And use your own to conquer
Dimension X
More useful links
• Useful Git Techniques
gist.github.com/wayspurrchen/940a
21127b77ac1a9720
• The rabbit hole with hooks
github.com/git-hooks/git-hooks
• And git-scm.com/doc (:
Link to presentation: tinyurl.com/stage-git

More Related Content

What's hot

Git session day 2
Git session day 2Git session day 2
Git session day 2Mosaab Ehab
 
15年前に作ったアプリを現在に蘇らせてみた話
15年前に作ったアプリを現在に蘇らせてみた話15年前に作ったアプリを現在に蘇らせてみた話
15年前に作ったアプリを現在に蘇らせてみた話Naoki Nagazumi
 
Contributing to rails
Contributing to railsContributing to rails
Contributing to railsLukas Eppler
 
APIテストあれこれ
APIテストあれこれAPIテストあれこれ
APIテストあれこれtzm_freedom
 
C初心者がbyebugにPR出した話
C初心者がbyebugにPR出した話C初心者がbyebugにPR出した話
C初心者がbyebugにPR出した話tzm_freedom
 
Git session day 1
Git session day 1Git session day 1
Git session day 1Mosaab Ehab
 
ChatOps meetup: les humains parlent aux robots
ChatOps meetup: les humains parlent aux robotsChatOps meetup: les humains parlent aux robots
ChatOps meetup: les humains parlent aux robotsOlivier Jacques
 
Advanced Git Presentation By Swawibe
Advanced Git Presentation By SwawibeAdvanced Git Presentation By Swawibe
Advanced Git Presentation By SwawibeMd Swawibe Ul Alam
 
GOTO Paris | @see Gopher
GOTO Paris | @see GopherGOTO Paris | @see Gopher
GOTO Paris | @see GopherJan Klat
 
Deploying distributed software services to the cloud without breaking a sweat
Deploying distributed software services to the cloud without breaking a sweatDeploying distributed software services to the cloud without breaking a sweat
Deploying distributed software services to the cloud without breaking a sweatSusan Potter
 

What's hot (13)

Git session day 2
Git session day 2Git session day 2
Git session day 2
 
15年前に作ったアプリを現在に蘇らせてみた話
15年前に作ったアプリを現在に蘇らせてみた話15年前に作ったアプリを現在に蘇らせてみた話
15年前に作ったアプリを現在に蘇らせてみた話
 
Contributing to rails
Contributing to railsContributing to rails
Contributing to rails
 
Git Internals
Git InternalsGit Internals
Git Internals
 
APIテストあれこれ
APIテストあれこれAPIテストあれこれ
APIテストあれこれ
 
C初心者がbyebugにPR出した話
C初心者がbyebugにPR出した話C初心者がbyebugにPR出した話
C初心者がbyebugにPR出した話
 
Git session day 1
Git session day 1Git session day 1
Git session day 1
 
ChatOps meetup: les humains parlent aux robots
ChatOps meetup: les humains parlent aux robotsChatOps meetup: les humains parlent aux robots
ChatOps meetup: les humains parlent aux robots
 
Advanced Git Presentation By Swawibe
Advanced Git Presentation By SwawibeAdvanced Git Presentation By Swawibe
Advanced Git Presentation By Swawibe
 
Koji and pulp
Koji and pulpKoji and pulp
Koji and pulp
 
GOTO Paris | @see Gopher
GOTO Paris | @see GopherGOTO Paris | @see Gopher
GOTO Paris | @see Gopher
 
Deploying distributed software services to the cloud without breaking a sweat
Deploying distributed software services to the cloud without breaking a sweatDeploying distributed software services to the cloud without breaking a sweat
Deploying distributed software services to the cloud without breaking a sweat
 
ChatOps
ChatOpsChatOps
ChatOps
 

Similar to maksym vlasov - culture of git as roots of your ci

Git - An Introduction
Git - An IntroductionGit - An Introduction
Git - An IntroductionBehzad Altaf
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Gitatishgoswami
 
Git isthenewsexy
Git isthenewsexyGit isthenewsexy
Git isthenewsexyAilsa126
 
The Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubThe Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubBigBlueHat
 
Git for Android Developers
Git for Android DevelopersGit for Android Developers
Git for Android DevelopersTack Mobile
 
Git Magic: Versioning Files like a Boss
Git Magic: Versioning Files like a BossGit Magic: Versioning Files like a Boss
Git Magic: Versioning Files like a Bosstmacwilliam
 
GR8CONF Contributing Back To Grails
GR8CONF Contributing Back To GrailsGR8CONF Contributing Back To Grails
GR8CONF Contributing Back To Grailsbobbywarner
 
JAZOON'13 - Thomas Hug & Bartosz Majsak - Git Workshop -Essentials
JAZOON'13 - Thomas Hug & Bartosz Majsak - Git Workshop -EssentialsJAZOON'13 - Thomas Hug & Bartosz Majsak - Git Workshop -Essentials
JAZOON'13 - Thomas Hug & Bartosz Majsak - Git Workshop -Essentialsjazoon13
 
Git for folk who like GUIs
Git for folk who like GUIsGit for folk who like GUIs
Git for folk who like GUIsTim Osborn
 
Git Tutorial I
Git Tutorial IGit Tutorial I
Git Tutorial IJim Yeh
 
An introduction to Git
An introduction to GitAn introduction to Git
An introduction to GitMuhil Vannan
 
Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivityGregg Coppen
 

Similar to maksym vlasov - culture of git as roots of your ci (20)

Git - An Introduction
Git - An IntroductionGit - An Introduction
Git - An Introduction
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Git 基础
Git 基础Git 基础
Git 基础
 
Git isthenewsexy
Git isthenewsexyGit isthenewsexy
Git isthenewsexy
 
The Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubThe Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHub
 
Working with Git
Working with GitWorking with Git
Working with Git
 
Introduction to Git and Github
Introduction to Git and GithubIntroduction to Git and Github
Introduction to Git and Github
 
Git for Android Developers
Git for Android DevelopersGit for Android Developers
Git for Android Developers
 
Git Magic: Versioning Files like a Boss
Git Magic: Versioning Files like a BossGit Magic: Versioning Files like a Boss
Git Magic: Versioning Files like a Boss
 
GR8CONF Contributing Back To Grails
GR8CONF Contributing Back To GrailsGR8CONF Contributing Back To Grails
GR8CONF Contributing Back To Grails
 
JAZOON'13 - Thomas Hug & Bartosz Majsak - Git Workshop -Essentials
JAZOON'13 - Thomas Hug & Bartosz Majsak - Git Workshop -EssentialsJAZOON'13 - Thomas Hug & Bartosz Majsak - Git Workshop -Essentials
JAZOON'13 - Thomas Hug & Bartosz Majsak - Git Workshop -Essentials
 
Gitlikeapro 2019
Gitlikeapro 2019Gitlikeapro 2019
Gitlikeapro 2019
 
Git for folk who like GUIs
Git for folk who like GUIsGit for folk who like GUIs
Git for folk who like GUIs
 
Git Tutorial I
Git Tutorial IGit Tutorial I
Git Tutorial I
 
git.pptx
git.pptxgit.pptx
git.pptx
 
3 Git
3 Git3 Git
3 Git
 
Git_Git_Lab_1664715263.pdf
Git_Git_Lab_1664715263.pdfGit_Git_Lab_1664715263.pdf
Git_Git_Lab_1664715263.pdf
 
An introduction to Git
An introduction to GitAn introduction to Git
An introduction to Git
 
Git Real
Git RealGit Real
Git Real
 
Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivity
 

More from Dariia Seimova

Chris Homer - Moving the entire stack to k8s within a year – lessons learned
Chris Homer - Moving the entire stack to k8s within a year – lessons learnedChris Homer - Moving the entire stack to k8s within a year – lessons learned
Chris Homer - Moving the entire stack to k8s within a year – lessons learnedDariia Seimova
 
juliya tkachova - dev ops on scale from philosophy to toolset
juliya tkachova - dev ops on scale from philosophy to toolsetjuliya tkachova - dev ops on scale from philosophy to toolset
juliya tkachova - dev ops on scale from philosophy to toolsetDariia Seimova
 
rohit sharma - dev ops virtual assistant - automate devops stuffs using nlp a...
rohit sharma - dev ops virtual assistant - automate devops stuffs using nlp a...rohit sharma - dev ops virtual assistant - automate devops stuffs using nlp a...
rohit sharma - dev ops virtual assistant - automate devops stuffs using nlp a...Dariia Seimova
 
ostap soroka - aws architecture and a human body
ostap soroka - aws architecture and a human bodyostap soroka - aws architecture and a human body
ostap soroka - aws architecture and a human bodyDariia Seimova
 
victoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform developmentvictoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform developmentDariia Seimova
 
sveta smirnova - my sql performance schema in action
sveta smirnova - my sql performance schema in actionsveta smirnova - my sql performance schema in action
sveta smirnova - my sql performance schema in actionDariia Seimova
 
faisal mushtaq - an enterprise cloud cost management framework
faisal mushtaq - an enterprise cloud cost management frameworkfaisal mushtaq - an enterprise cloud cost management framework
faisal mushtaq - an enterprise cloud cost management frameworkDariia Seimova
 
mykola marzhan - jenkins on aws spot instance
mykola marzhan - jenkins on aws spot instancemykola marzhan - jenkins on aws spot instance
mykola marzhan - jenkins on aws spot instanceDariia Seimova
 
vitaly davidoff - end 2 end containers secure sdlc process
vitaly davidoff - end 2 end containers secure sdlc processvitaly davidoff - end 2 end containers secure sdlc process
vitaly davidoff - end 2 end containers secure sdlc processDariia Seimova
 
yegor maksymchuk - open shift as a cloud for data science
yegor maksymchuk - open shift as a cloud for data scienceyegor maksymchuk - open shift as a cloud for data science
yegor maksymchuk - open shift as a cloud for data scienceDariia Seimova
 

More from Dariia Seimova (10)

Chris Homer - Moving the entire stack to k8s within a year – lessons learned
Chris Homer - Moving the entire stack to k8s within a year – lessons learnedChris Homer - Moving the entire stack to k8s within a year – lessons learned
Chris Homer - Moving the entire stack to k8s within a year – lessons learned
 
juliya tkachova - dev ops on scale from philosophy to toolset
juliya tkachova - dev ops on scale from philosophy to toolsetjuliya tkachova - dev ops on scale from philosophy to toolset
juliya tkachova - dev ops on scale from philosophy to toolset
 
rohit sharma - dev ops virtual assistant - automate devops stuffs using nlp a...
rohit sharma - dev ops virtual assistant - automate devops stuffs using nlp a...rohit sharma - dev ops virtual assistant - automate devops stuffs using nlp a...
rohit sharma - dev ops virtual assistant - automate devops stuffs using nlp a...
 
ostap soroka - aws architecture and a human body
ostap soroka - aws architecture and a human bodyostap soroka - aws architecture and a human body
ostap soroka - aws architecture and a human body
 
victoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform developmentvictoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform development
 
sveta smirnova - my sql performance schema in action
sveta smirnova - my sql performance schema in actionsveta smirnova - my sql performance schema in action
sveta smirnova - my sql performance schema in action
 
faisal mushtaq - an enterprise cloud cost management framework
faisal mushtaq - an enterprise cloud cost management frameworkfaisal mushtaq - an enterprise cloud cost management framework
faisal mushtaq - an enterprise cloud cost management framework
 
mykola marzhan - jenkins on aws spot instance
mykola marzhan - jenkins on aws spot instancemykola marzhan - jenkins on aws spot instance
mykola marzhan - jenkins on aws spot instance
 
vitaly davidoff - end 2 end containers secure sdlc process
vitaly davidoff - end 2 end containers secure sdlc processvitaly davidoff - end 2 end containers secure sdlc process
vitaly davidoff - end 2 end containers secure sdlc process
 
yegor maksymchuk - open shift as a cloud for data science
yegor maksymchuk - open shift as a cloud for data scienceyegor maksymchuk - open shift as a cloud for data science
yegor maksymchuk - open shift as a cloud for data science
 

Recently uploaded

Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...jaredbarbolino94
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxEyham Joco
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 

Recently uploaded (20)

Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptx
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 

maksym vlasov - culture of git as roots of your ci