Git for Teams
2h 16mIntermediate2018-09-13
Authors

Kevin Bowersox
Full-Stack Java Developer, Instructor
Course details
Development teams transitioning to distributed source control with Git often experience friction when initially adopting the tool. Often, the root cause is related to issues surrounding culture and practices as opposed to a technical learning curve. In this course, Kevin Bowersox covers collaboration strategies for teams using Git, discussing tools and techniques that can help you and your team circumvent the challenges that hinder the delivery of high-quality software. Kevin shares best practices and tips that can help you avoid common pitfalls that often cause teams to veer off track. Learn branching strategies, how to build a continuous integration pipeline, and more.
Learning objectives
Evaluate the reasons for implementing best practices when working with Git in teams.
Explain the different user roles when working with Git in teams.
Assess the impact on team workloads when using a central repository.
Distinguish between the different stages of the Git Flow standard.
Describe the different branching strategies in a Git Flow environment.
Analyze the effect of implementing a CI/CD pipeline to Git with teams.
Learning objectives
Evaluate the reasons for implementing best practices when working with Git in teams.
Explain the different user roles when working with Git in teams.
Assess the impact on team workloads when using a central repository.
Distinguish between the different stages of the Git Flow standard.
Describe the different branching strategies in a Git Flow environment.
Analyze the effect of implementing a CI/CD pipeline to Git with teams.
Skills covered
GitVersion ControlDevOps ToolsDevOpsLearningOpen SourceSoftware Development
Concepts
0. Introduction
- 01 - Using Git for team collaboration
- 02 - What you need to know
1. Fundamentals of Git Collaboration
- 03 - Fundamentals of Git collaboration overview
- 04 - Common pitfalls - Untracked pulls
- 05 - Common pitfalls - Force push
- 06 - Best practices - Committing and syncing
- 07 - Best practices - gitignore
- 08 - Standardize line endings with autocrlf
- 09 - Branch naming
- 10 - Write descriptive commit messages
- 11 - Team composition and members roles
2. Teaming with Remote Platforms
- 12 - Teaming with remote platforms overview
- 13 - Remote platform selection
- 14 - GitLab installation
- 15 - GitLab overview
- 16 - User account setup
- 17 - Account administration and preferences
- 18 - Branching strategies
- 19 - Git workflows
- 20 - Trunk-based development
- 21 - Git flow
- 22 - Protecting branches
- 23 - Issues
- 24 - Feature branches
- 25 - Code reviews
- 26 - Merging feature branches
- 27 - Git Flow wrap-up
3. Continuous Integration
- 28 - Continuous integration with Git
- 29 - Tools for continuous integration
- 30 - Install GitLab Runner
- 31 - Register GitLab Runner
- 32 - Building a CI pipeline
- 33 - Automating units tests for quality assurance
- 34 - Code quality with pipelines
- 35 - Building a DevOps foundation
Conclusion
- 36 - Next steps