Git and Patterns for Managing Source Code Branches. Merge BOTs
- Git Distributed Version-Control System
- Git stash
- Git Branches
- Git Aliases
- Git and GitHub Backup
- Git Submodules
- Design By Contract
- Git Cheat Sheets
- Monorepo VS Polyrepo
- Patterns for Managing Source Code Branches (Branching Models/Workflows)
- Git Commands
- Git Tools
- Azure DevOps (formerly known as VSTS)
- Pre Commit Hooks
- Merge BOTs
Git Distributed Version-Control System
- Wikipedia: Git
- tutorialzine.com: Learn git in 30 minutes 🌟
- 3 Git Commands I Use Every Day
- Git and Github in Plain English
- opensource.com: How to restore older file versions in Git
- 9 awesome git tricks
- Awesome Git 🌟
- dzone.com: intro git 🌟
- dzone.com: Top 20 git commands with examples 🌟
- dzone.com: 8 Useful But Not Well-Known Git Concepts These lesser-known Git tricks can help you solve problems that are not handled well by the GitHub and BitBucket GUIs
- dzone.com: Git Commands Tutorial - Part 1
- dzone.com: Git Commands Tutorial - Part 2
- Dzone refcard: Getting started with Git
- Oh shit, git!
- How to Get More Out of Your Git Commit Message
- 10 useful Git commands you wish existed – and their alternatives
- github.blog: How to undo (almost) anything with Git
- dev.to: Git Explained - The Basics
- medium: 7 Best Courses to Master Git and Github for Programmers These are the best courses to learn Git from scratch and also advanced concepts like branching and merging. It also includes a free course to learn git.
- medium: Top 7 Cloud Source Code Management Tools Features and Pricing Plans
- towardsdatascience.com: The 6 Git Commands Data Scientist Should Know An introduction to using Git for machine learning projects.
- dev.to: Git Concepts I Wish I Knew Years Ago 🌟
- opensource.com: 6 best practices for managing Git repos Resist the urge to add things in Git that will make it harder to manage; here’s what to do instead.
- codeburst.io: Debug your code using git bisect
- github.blog: Highlights from Git 2.28
- codeburst.io: A Resource for all Things Git
- Things You Want to Do in Git and How to Do Them
- livecodestream.dev: Git Concepts and Workflow for Beginners
- thenextweb.com: A beginner’s guide to the most popular Git commands
- devroom.io: Git Squash your latests commits into one
- julien.danjou.info: Stop merging your pull requests manually 🌟 -> mergify 🌟
- gitlab.com: How to keep your Git history clean with interactive rebase Interactive rebase is one of Git’s most versatile tools. Here’s how to use it to correct commit messages, fix mistakes, and more.
- gitkraken.com: Git Tutorials: Instructional Training Videos 🌟
- github.blog: Token authentication requirements for Git operations
- github.blog: Commits are snapshots, not diffs
- github.blog: Get up to speed with partial clone and shallow clone
- about.gitlab.com: How Git Partial Clone lets you fetch only the large file you need
- intellipaat.com: Git Tutorial - Learn Git 🌟
- freecodecamp.org: How to Use Multiple Git Configs on One Computer 🌟
- dev.to: Git for beginners
- blog.gitguardian.com: Rewriting your git history, removing files permanently - cheatsheet & guide
- smashingmagazine.com: Getting The Most Out Of Git
- thenewstack.io: Why Open Source Project Maintainers are Reluctant to use Digital Signatures, Two-Factor Authentication
- geeksforgeeks.org: How to Write Good Commit Messages in GitHub?
- freecodecamp.org: What is Git? A Beginner’s Guide to Git Version Control
- dev.to: ELI5: Git Rebase vs. Merge 🌟
- c-sharpcorner.com: 0 Git Commands You Should Know
- opensource.com: Find what changed in a Git commit Git offers several ways you can quickly see which files changed in a commit.
- freecodecamp.org: How to Use Git and Git Workflows – a Practical Guide
- about.gitlab.com: Why small merge requests are key to a great review 🌟
- dzone: GitOps: How to Ops Your Git the Right Way 🌟 In this article we’ll look into the specifics of creating Git repositories structures — the very core of the GitOps approach.
- honeybadger.io: Top Ten Git Tips & Tricks
- blog.balasundar.com: Automate Git Operations Using Python Automate your git operations using GitPython.
- cloudbees.com: Git Commands: The 13 You Must Know, In Order 🌟
- levelup.gitconnected.com: 5 Git Commands to Know Before Your First Tech Job or Internship
- dev.to: Master Git in 7 minutes 🌟
- blog.greenroots.info: How NOT to use Git in Practice. Ten Git usages, you should know to avoid
- integratn.io: My Git Worktree Workflow
- livecodestream.dev: Five Advanced Git Concepts that Make You Look Like a Pro Learn how to master GIT with these 5 advanced concepts
- cloudbees.com: Git Pull: How It Works With Detailed Examples
- midu.dev: Buenas prácticas para escribir commits en Git
- cloudbees.com: Git Squash: How to Condense Your Commit History
- cloudbees.com: Git Push: An In-Depth Tutorial With Examples
- blog.annamcdougall.com: Git Workflow Tutorial: Start Using Git TODAY with Basic Git Commands
- thenewstack.io: Git for Managing Small Projects 🌟
- netflixtechblog.medium.com: Improving Pull Request Confidence for the Netflix TV App
- cloudsavvyit.com: How to Use Git Hooks For Commit Automation 🌟
- simplilearn.com: How to Resolve Merge Conflicts in Git?
- towardsdatascience.com: How to Learn Git in Simple Words A playbook for protecting your job position as a data scientist
- blog.argoproj.io: 5 new Git commands and 1 tip you’ll use every day
- dev.to: Open Source: My first Pull Request
- blog.testproject.io: Git 101 From Scratch: The Ultimate Guide for QAs 🌟
- freecodecamp.org: Git for Professionals – Free Version Control Course 🌟
- towardsdatascience.com: A Git cheatsheet that all coders need Ever accidentally deleted files or necessary code? Or do you wish to look back at an older version of your code?
- r-bloggers.com: Git: Moving from Master to Main
- css-tricks.com: Advanced Git series. 1 Creating the Perfect Commit in Git
- css-tricks.com: Advanced Git series. 2 Branching Strategies in Git
- css-tricks.com: Advanced Git series. 3 Better Collaboration With Pull Requests
- css-tricks.com: Advanced Git series. 4 Merge Conflicts: What They Are and How to Deal with Them
- css-tricks.com: Advanced Git series. 5 Rebase vs. Merge: Integrating Changes in Git
- css-tricks.com: Advanced Git series. 6 Interactive Rebase: Clean up your Commit History
- css-tricks.com: Cherry-Picking Commits in Git
- css-tricks.com: Using the Reflog to Restore Lost Commits
- cloudbees.com: Git Reset Clearly Explained: How to Undo Your Changes 🌟
- dev.to: How to become a Git expert! 🌟
- c-sharpcorner.com: Top 15 Git Commands With Examples For Every Developers💪
- cloudsavvyit.com: Should You Use HTTPS or SSH For Git? 🌟
- marklodato.github.io: A Visual Git Reference 🌟
- dev.to: Get lazy with lazygit
- levelup.gitconnected.com: Top 30 Git Commands You Should Know To Master Git CLI Learn the most essential Git commands to boost your productivity, and become a master in managing the GitHub repositories.
- medium: Forking GitHub Repository with Git and VIM | Swain Dennis
- dev.to: 10 useful Git tips to improve your workflow 🌟
- dev.to: Git Organized: A Better Git Flow
- betterprogramming.pub: How to Filter the Git Logs Practical examples of how you can filter the Git logs
- thenewstack.io: Development: Introduction to Git Logging
- freecodecamp.org: git config – How to Configure Git Settings to Improve Your Development Workflow
- freecodecamp.org: Git Undo Merge – How to Revert the Last Merge Commit in Git
- devconnected.com: How To Delete File on Git
- infoworld.com: What is Git? Version control for collaborative programming
- dev.to: How Do I Resolve Merge Conflicts?
- opensource.com: My guide to understanding Git rebase -i The git rebase command is one of the most powerful in Git. It can rewrite your repository’s commit history by rearranging, modifying, and even deleting commits.
- opensource.com: My guide to using the Git push command safely Understand the usage and impact of this popular Git command on your project, learn new safer alternatives, and grasp the skills of restoring a broken branch.
- opensource.com: Make your own Git subcommands Creating your own Git subcommand makes your custom scripts feel like natural components of Git.
- betterprogramming.pub: 2 Use Cases of Python Pre-commit Hooks to Tidy Up Your Git Repositories Strategies to have a better-organized codebase
- betterprogramming.pub: Recovering From Common Git Errors
- github.blog: Improve Git monorepo performance with a file system monitor 🌟 Monorepo performance can suffer due to the sheer number of files in your working directory. Git’s new builtin file system monitor makes it easy to speed up monorepo performance.
- java67.com: Top 10 Free Git Courses and Tutorials for Beginners in 2022 - Best of Lot
- firstname.lastname@example.org: 10 Git commands every DevOps should know 🌟
- polarsquad.com: Stop doing pull requests
- medium.com/@datosh18: Gitsign in remote environments
- medium.com/qe-unit: How Google Does Monorepo (Revisited)
- opensource.com: A practical guide to using the git stash command Learn how to use the git stash command and when you should use it.
- medium.com/featurepreneur: Don’t trash your changes but stash ‘em!
- dev.to: How to Use Git Stash Command
- learngitbranching.js.org: Learn Git Branching 🌟 An interactive Git visualization tool to educate and challenge!
- gitkraken.com: How do you rename a Git branch?
- freecodecamp.org: Git Checkout Remote Branch Tutorial
- freecodecamp.org: How to Use Branches in Git – the Ultimate Cheatsheet 🌟
- stackoverflow.blog: A look under the hood: how branches work in Git Git branches allow you to keep different versions of your code cleanly separated. Here’s a look at how they work and why you should know about them.
- opensource.com: 4 tips for context switching in Git Compare the pros and cons of four options to switch branches while working in Git.
- freecodecamp.org: Git Push to Remote Branch – How to Push a Local Branch to Origin
- freecodecamp.org: How Git Branches Work
- cloudsavvyit.com: How to Delete Git Branches on Local and Remote Repositories
- dev.to: Open Source: Multiple branches and git merges
- cloudsavvyit.com: How to Move Changes to Another Branch in Git
- css-tricks.com: Git: Switching Unstaged Changes to a New Branch
- betterprogramming.pub: Leave Aside Git Checkout. Consider Git Switch for a Change Switch between branches without checking out
- freecodecamp.org: Git List Branches – How to Show All Remote and Local Branch Names
- opensource.com: Explaining Git branches with a LEGO analogy
- blog.devops.dev: Stop messing up with Git. Follow this simple and effective strategy to maintain Git branches
- opensource.com: 8 Git aliases that make me more efficient Use aliases to create shortcuts for your most-used or complex Git commands.
- davidwalsh.name: More Awesome Git Aliases
- blog.mimacom.com: The Git Commands You Wish You Always Had
Git and GitHub Backup
- backhub.co Reliable GitHub repository backup, set up in minutes
- devops.com: Make GitHub Backups Part of Your Development Process
- dzone.com: Git Clone Command vs. GitHub Backup - Best Practices Git clone command vs. GitHub backup - what you should know to keep your git repositories and metadata safe and sound. Check in-depth analysis.
- dev.to: 3 Ways to Backup Your Code (Even If You Don’t Know Git)
- opensource.com: 3 reasons I use the Git cherry-pick command Cherry-picking solves a lot of problems in Git repositories. Here are three ways to fix your mistakes with git cherry-pick.
- jmfloreszazo.com: GIT Mejores prácticas: CHERRY-PICKING
- git-scm.com: Git Tools - Submodules It often happens that while working on one project, you need to use another project from within it. Perhaps it’s a library that a third party developed or that you’re developing separately and using in multiple parent projects. A common issue arises in these scenarios: you want to be able to treat the two projects as separate yet still be able to use one from within the other.
- sitepoint.com: Understanding and Working with Submodules in Git
Design By Contract
Wikipedia: Design by contract (DbC), also known as contract programming, programming by contract and design-by-contract programming, is an approach for designing software.
It prescribes that software designers should define formal, precise and verifiable interface specifications for software components, which extend the ordinary definition of abstract data types with preconditions, postconditions and invariants. These specifications are referred to as “contracts”, in accordance with a conceptual metaphor with the conditions and obligations of business contracts.
Git Cheat Sheets
Monorepo VS Polyrepo
- fourtheorem.com: How to end Microservice pain and embrace the Monorepo
- medium: The Pros and Cons of Monorepos, Explained Should you keep all of your code in a single directory?
Patterns for Managing Source Code Branches (Branching Models/Workflows)
- paulhammant.com: What is Your Branching Model?: Mainline, Cascade, Trunk-Based Development, Short Lived Feature Branches, Continuous Deployment, Subversion noise on branching, etc.
- adevait.com: Creating a Branching Strategy for Small Teams
- atlassian.com: Configuring branching models 🌟
- git-scm.com: Git Branching - Branching Workflows
- git-scm.com: Distributed Git - Distributed Workflows
- Dzone refcard: Git Patterns and Anti-Patterns Scaling from Workgroup to Enterprise. Suggests patterns and anti-patterns, including Hybrid SCM, Git champions, blessed repository, per-feature topic branches, and ALM integration.
- Dzone: Basic Git Branching In this article, we walk through the basics of branching with Git to get you started with better managing your versioning during projects.
- martinfowler.com: Patterns for Managing Source Code Branches
- Release Branch Pattern: A branch that only accepts commits accepted to stabilize a version of the product ready for release.
- medium: Which Git branching model should I select for my project?
- speakerdeck.com: 10 Git Anti Patterns You Should be Aware of 🌟
- Dzone: Git Branch Naming Conventions A primer on naming branches for modern git workflows.
- gitkraken.com: Branching in Git 🌟
- jmfloreszazo.com: Flujos de trabajo de git
- towardsdatascience.com: How To Structure Your Git Branching Strategy — By A Data Engineer Data pipelines require version control too!
Slide: 10 git anti patterns. Click to expand!
git help workflows
- atlassian.com: Comparing Workflows 🌟
- GitLab Flow
- GitHub Flow
- Git Flow
- Git DMZ Flow
- kubernetes.dev: GitHub Workflow An overview of the GitHub workflow used by the Kubernetes project. It includes some tips and suggestions on things such as keeping your local environment in sync with upstream and commit hygiene.
Trunk Based Development
- Trunk Based Development
- paulhammant.com: What is Trunk-Based Development?
- The Origins of Trunk Based Development
- quora.com: What is trunk based development?
- kean.github.io: Trunk-Based Development
- paulhammant.com: Microsoft’s Trunk-Based Development
- devblogs.microsoft.com: Release Flow: How We Do Branching on the VSTS Team
Feature Branch Development (aka GitFlow)
- One of the main concepts of GitFlow is feature branches. The idea is that each feature should be developed in its own branch. When the feature is done, it gets merged into develop branch.
- devopszone.info: An Introduction To Git-flow Workflow
- atlassian.com: Gitflow Workflow
- gitkraken.com: GitFlow is a list of rules to keep a repo’s history organized, and is used to make the release process, bug fixes, and feature creation easier.
- medium.com: Gitflow — Branch Guide
- medium.com: Git Flow for Beginners
- medium.com: What is GitFlow?
- gist.github.com/JamesMGreene: A comparison of using
git flowcommands versus raw
- Git-flow cheatsheet
- aprendegit.com: git-flow: la rama develop y uso de feature branches
Git Flow is a bad idea
- thinkinglabs.io: Feature Branching considered Evil
- youtube: Feature Branching is Evil (Thierry de Pauw, Belgium)
- Feature branching is again gaining in popularity due to the rise of distributed version control systems. Although branch creation has become very easy, it comes with a certain cost. Long living branches break the flow of the software delivery process, impacting throughput and stability.
- This session explores why teams are using feature branches, what problems are introduced by using them and what techniques exist to avoid them altogether. It explores exactly what’s evil about feature branches, which is not necessarily the problems they introduce - but rather, the real reasons why teams are using them.
- youtube: Git Flow Is A Bad Idea - Dave Farley What is GitFlow and why is it a bad idea if you want to practice Continuous Delivery or Continuous Integration? GitFlow is a feature branching strategy that adds several extra layers of complexity. Git Flow is bad when we need fast feedback and a clear picture of the quality and ‘releasability’ of our work, so how do we adapt to get that faster feedback and a clearer picture?
Trunk-based Development vs. Git Flow
- toptal.com: Trunk-based Development vs. Git Flow
- victorops.com: Source Code Control: Trunk-Based Development vs. GitFlow
- medium: GitFlow VS Trunk-Based-Development
- Dzone: Why I Prefer Trunk-Based Development Over Feature Branching and GitFlow 🌟 Check out the components of Trunk-based Development as implemented by Facebook and Google, and see how it helps resolve and prevent merge conflicts.
- team-coder.com: From Git Flow to Trunk Based Development
- stridenyc.com/podcasts: Trunk Based Development vs Gitflow
- freecodecamp.org: What is Trunk Based Development? A Different Approach to the Software Development Lifecycle
Alternative Branching Models
Feature Flags (Feature Toggles)
- featureflags.io: Flags vs Branching Branch better with feature flag driven development.
- martinfowler.com: Feature Toggles (aka Feature Flags)
- CloudBees Releases Another Industry First: Feature Flagging for On-Premise Use 🌟
- cioperu.pe: 5 formas de impulsar la utilización de feature flags
- cloudbees.com: Testing with Feature Flags to Improve Developer Productivity
- cloudbees.com: Goodbye Sleepless Nights: De-Risking Deployments with Feature Flags
- thenewstack.io: Wave Goodbye to Release Nights
- infoworld.com: Why aren’t you using feature flags? Software development is changing. If you’re still focused on release management rather than feature management, then you’re doing it wrong.
- cloudbees.com: How to Grow Continuous Delivery Maturity Using Feature Flags
- cloudbees.com: Feature Flag Best Practices: Change Management in Production
- cloudbees.com: Feature Flag Best Practices: Understanding the Feature Flag Lifecycle
- github.blog: How we ship code faster and safer with feature flags
- cloudbees.com: The Importance of Feature Flags in CI/CD
- infoworld.com: 5 devops use cases for developing with feature flags Feature flags boost integrations with analytics, provide feature controls to product owners, and improve app rollouts.
- reflectoring.io: Feature Flags with Spring Boot
Keystone Interface and Keystone Flags
- Show commit logs:
git log --oneline --all --graph --decorate
git reset --hard HEAD^ git push origin -f
- Undoing commits. In case you pushed a wrong change and you want to remove it totally the following commands explain how to do it in soft, mixed and hard mode:
git reset --soft HEAD^ # Removes the last commit, keeps changed staged git reset --mixed HEAD^ # Unstages the changes as well git reset --hard HEAD^ # Discards local changes
- Reverting commits:
git revert 72856ea # Reverts the given commit git revert HEAD~3.. # Reverts the last three commits git revert --no-commit HEAD~3..
- Recovering lost commits. We can list all last changes and recover back any commit we would like to get again:
git reflog # Shows the history of HEAD git reflog show bugfix # Shows the history of bugfix pointer
- Amending the last commit. Let’s suppose that you commit a wrong log message and you would like to fix it without changing the commit. — amend flag will allow us to do it:
git commit --amend
- Interactive rebasing. Interactive rebasing can be used for changing commits in many ways such as editing, deleting, and squashing:
git rebase -i HEAD~5
- Atlassian Git Cheatsheet
- Dzone: source control using atlassian bitbucket
- Dzone: how I use bitbucket in my regular routine
- Dzone: using gitlab API to create projects
- gitlab.com: GitLab’s guide to CI/CD for beginners CI/CD is a key part of the DevOps journey. Here’s everything you need to understand about this game-changing process.
- levelup.gitconnected.com: Automating Integration and Deployment to Remote Server GitLab CI/CD
- about.gitlab.com: Want a more effective CI/CD pipeline? Try our pro tips Here’s how to take your CI/CD pipeline to the next level with hands on advice about faster builds, better security and more.
- gitlab.com: How to do GitLab merge request reviews in VS Code
- about.gitlab.com: How we used parallel CI/CD jobs to increase our productivity GitLab uses parallel jobs to help long-running jobs run faster.
- about.gitlab.com: How to use GitLab CI to deploy to multiple environments
- about.gitlab.com: Meet Pipeline Editor, your one-stop-shop for building a CI/CD pipeline
- about.gitlab.com: A new era of Kubernetes integrations on GitLab.com The GitLab Kubernetes Agent enables secure deployments from GitLab SaaS to your Kubernetes cluster and provides deep integrations of your cluster to GitLab.
- docs.gitlab.com: Install GitLab Runner on Red Hat OpenShift
- devclass.com: Git a March on: GitLab 13.10 ramps up security, adds support for OpenShift, DORA
- about.gitlab.com: GitLab 13.11 released with Kubernetes Agent and Pipeline Compliance
- lambdatest.com: How To Use GitLab CI To Run Tests Locally? 🌟
- sdtimes: GitLab 14 aims to do away with DIY DevOps toolchains 🌟
- about.gitlab.com: GitLab 14.1 released with Helm Chart Registry and Escalation Policies
- about.gitlab.com: The new Git default branch name
- about.gitlab.com: How GitLab’s 5 new code review features will make life easier
- pythonspeed.com: Building Docker images on GitLab CI: Docker-in-Docker and Podman 🌟
- about.gitlab.com: Why we built GitDock, our desktop app to navigate your GitLab activities
- about.gitlab.com: GitLab’s Kubernetes Operator with support for Red Hat OpenShift is now generally available
- containerjournal.com: GitLab Brings Kubernetes Operator to Red Hat OpenShift
- vadosware.io: Level 1 Automated K8S Deployments With GitLab CI
- redpill-solutions.medium.com: Deploying to Kubernetes with GitLab
- venturebeat.com: GitLab acquires open source observability distribution Opstrace
- medium: Kubernetes & Gitlab-CI — Simplified app deployment automation In 5 minutes, I explain how to put in an automated GitLab pipeline to deploy your application to Kubernets with Helm.
- about.gitlab.com: GitLab Chart works towards Kubernetes 1.22
- Deploy and Manage Gitlab Runners on Amazon EC2
- freecodecamp.org: DevOps with GitLab CI Course 🌟
- testmo.com: GitLab CI/CD Test Automation Pipeline & Reporting
- community.ops.io: CI CD 101 with GitLab
- about.gitlab.com: Simple Kubernetes management with GitLab
- GitLab Collective 🌟 Discover and share knowledge about version control, CI/CD, DevSecOps, and all-remote workflows
- stackoverflow.blog: GitLab launches Collective on Stack Overflow
- githubstatus.com 🌟
- GitHub Codespaces Get the full Visual Studio Code experience without leaving GitHub.
- infoq.com: GitHub Codespaces Can Now Be Templated to Improve Performance
- infoworld.com: GitHub Codespaces freely available to all GitHub users All GitHub users can use the GitHub-hosted development environments free for up to 60 hours per month. Codespaces also added JetBrains IDE, JupyterLab, and GPU support.
- GitHub CLI
- githubstatus.com/uptime 🌟
- github.blog: How we launched docs.github.com
- Introducing GitHub’s OpenAPI Description
- GitHub public roadmap 🌟
- Token authentication requirements for API and Git operations
- GitHub Chaos Actions in Your CI/CD workflow
- GitHub’s OpenAPI Spec Open-Sourced in Beta
- Things you didn’t know you could diff in GitHub
- github.blog: Set the default branch for newly-created repositories
- grafana.com: How we use the Grafana GitHub plugin to track outstanding pull requests
- itnext.io: Build & Ship: GitHub Container Registry & Kubernetes
- grafana: How we use the Grafana GitHub plugin to track outstanding pull requests
- itnext.io: Build & Ship: GitHub Container Registry & Kubernetes
- theregister.com: Passwords begone: GitHub will ban them next year for authenticating Git operations
- github.blog: Learn about ghapi, a new third-party Python client for the GitHub API
- github.blog: Improving how we deploy GitHub
- github.blog: Deployment reliability at GitHub
- github.blog: Extending GitOps to reliability-as-code with GitHub and StackPulse
- GitHub public roadmap 🌟
- github.blog: Solving the innersource discovery problem - Discoverability
- devopstips.net: Create, Host and Share Docker Images with GitHub Packages
- blog.gruntwork.io: Introducing git-xargs: an open source tool to update multiple GitHub repos
- github.blog: Security keys are now supported for SSH Git operations 🌟
- education.github.com Real-world tools, engaged students. GitHub Education helps students, teachers, and schools access the tools and events they need to shape the next generation of software development.
- github.blog: GitHub brings supply chain security features to the Go community
- dev.to: How to never type passwords when using Git We’re deprecating password support for Git operations to keep you more secure. You can authenticate Git actions using:
- SSH keys
- Personal Access Tokens
- OAuth Apps
- Credential Manager
- GH Desktop
- GH CLI
- Physical keys
- dev.to: 10 Fun Things You Can Do With GitHub.dev 😎
- github.blog: GitHub CLI 2.0 includes extensions!
- dev.to: Git and GitHub: The Complete Guides - Chapter 6: GitHub Merging
- github.blog: Improved pull request file filtering Filtered files on the Pull Request Files Changed tab are now completely hidden from view (not just collapsed). This helps decrease distractions and lets you focus on just the files you need to review.
- dev.to: Git and GitHub Series’ Articles - The Complete Guides 🌟
- infoworld.com: GitHub introduces code review controls 🌟 New controls in the popular code-sharing site are designed to deal with ‘drive-by‘ pull request approvals and ‘spammy’ change requests.
- returngis.net: Migrar un repositorio de un BitBucket Server local a GitHub
- freecodecamp.org: Git and GitHub Tutorial – Version Control for Beginners 🌟
- github/hub 🌟 A command-line tool that makes git easier to use with GitHub.
- cloudsavvyit.com: How To Properly Fork a Github Repository
- dev.to: New GitHub Rules Guide [git push -u origin main] This post explains very quickly how to push your code to your GitHub repository following the new rules imposed by GitHub.
- dev.to: Learn how to use Git and GitHub in a team like a pro
- dev.to: Git and GitHub for beginners
- adamtheautomator.com: How to Manage GitHub Actions Environment Variables and Secrets
- dev.to: Introduction to Git and GitHub
- github.blog: Improving GitHub code search
- towardsdatascience.com: Git and GitHub basics for Data Scientists UCL Data Science Workshop 8: What is Git, Creating a local repository, Committing your first files, Linking to a remote repository
- github.blog: Lists are now available as a public beta Lists level up the starring experience by making it easy to organize and curate your favorite repositories on GitHub. You can create public lists that appear on your stars page at https://github.com/USERNAME?tab=stars.
- freecodecamp.org: How to Use the .github Repository
- about.gitlab.com: How to install and use the GitLab Kubernetes Operator (on OCP)
- alsmola.medium.com: Securing GitHub organizations
- github.blog: Dependency graph now supports GitHub Actions The dependency graph helps developers and maintainers understand the code they depend on, and now includes GitHub Actions!
- github.blog: How to build a CI/CD pipeline with GitHub Actions in four simple steps A quick guide on the advantages of using GitHub Actions as your preferred CI/CD tool—and how to build a CI/CD pipeline with it.
- cloudsavvyit.com: How to Use Github Actions to Automate Your Repository Builds
- github.blog: How to start using reusable workflows with GitHub Actions Reusable workflows offer a simple and powerful way to avoid copying and pasting workflows across your repositories.
- github.blog: Getting started with project planning on GitHub Stop context switching. Keep your team’s project planning next to your code.
- freecodecamp.org: How to Fork a GitHub Repository – A Complete Workflow
- levelup.gitconnected.com: GitHub may replace DockerHub
- github.com/Lightning-AI/engineering-class: Lightning Bits: Engineering for Researchers 🌟 This repository contains additional materials and show notes for the Lightning Bits: Engineering for Researchers video series.
- github.com/marketplace: Use AWS Secrets Manager secrets in GitHub jobs 🌟
- tylercipriani.com: GitHub’s Missing Merge Option
- steampipe.io: Top 3 ways to improve GitHub org security Gain some practical tips for securing your GitHub organizations based on findings from common security incidents.
- lab.github.com 🌟 With GitHub Learning Lab, grow your skills by completing fun, realistic projects. Get advice and helpful feedback from our friendly Learning Lab bot.
GitHub Code Scanner
- analyticsindiamag.com: GitHub launches code scanner to flag security vulnerabilities The new experimental analysis can have a higher false-positive rate relative to results from standard CodeQL analysis.
- github.blog: Testing cloud apps with GitHub Actions and cloud-native open source tools
- docker.com: Docker Github Actions
- laravel-news.com: Generate GitHub Actions Config for Laravel Projects with Ghygen
- blog.codecentric.de: Stop re-writing pipelines! Why GitHub Actions drive the future of CI/CD
- particule.io: CI/CD using Github Actions, AWS ECR and ECS Fargate
- proandroiddev.com: “Continuous Integration/Delivery” for Android with GitHub Actions — Part 1
- github.blog: Implementing least privilege for secrets in GitHub Actions
- github.blog: Work with GitHub Actions in your terminal with GitHub CLI
- github.blog: GitHub Actions: Control permissions for GITHUB_TOKEN 🌟
- github.blog: GitHub Actions update: Helping maintainers combat bad actors
- github.blog: How we use GitHub Actions to manage GitHub Docs
- vimeo.com: How to Create a CI/CD Pipeline with GitHub Actions and K8s Like a Boss
- medium: Create CI/CD with Github Actions + AWS EC2, CodeDeploy and S3
- actions-runner-controller 🌟 Kubernetes controller for GitHub Actions self-hosted runnners
- itnext.io: GitHub Actions for Android Developers
- github.com: Branch Cleanup Action 🌟 A GitHub action to automatically delete the branch after a pull request has been merged.
- blog.thundra.io: How to Set Up a CI Pipeline in GitHub Actions
- github.blog: GitHub Actions: Ephemeral self-hosted runners & new webhooks for auto-scaling
- github.blog: Showing code scanning alerts on pull requests
- blog.thundra.io: Top 10 GitHub Actions You Should Use to set up your CI/CD Pipeline
- github.blog: 10 GitHub Actions resources to bookmark from the basics to CI/CD
- resources.github.com: What is GitHub Actions? How automation & CI/CD work on GitHub (whitepaper/pdf)
- github.blog: Container signing added to the Publish Docker Container workflow for GitHub Actions We have added support for sigstore container signing to the default GitHub Actions starter workflow for publishing container images. New workflows on public repositories will use this by default. If you have an existing workflow, you will need to update your workflow to take advantage of this capability.
- dev.to: What’s the difference between a GitHub Action and a Workflow?
- github.blog: 5 automations every developer should be running
- github.blog: Getting started with GitHub Actions just got easier!
- github.blog: GitHub Actions: Improvements to GitHub Actions starter experience
- levelup.gitconnected.com: GitHub may replace DockerHub
- blog.fleetdm.com: 4 tips for GitHub Actions usability (+2 bonus tips for debugging)
- dev.to: Make your first contribution to a GitHub Action!
- blog.ediri.io: Auto Docs, Test And Release A Helm Chart With GitHub Actions
- blog.shreyaspatil.dev: Automate library publishing to Maven Central with GitHub Actions Workflow Dispatch
- laravel-news.com: Deploy your PHP Codebase with Ansible and GitHub Actions
- infoq.com: How GitHub Does DevOps for its iOS and Android Apps
- blog.gskinner.com: Flutter: Easily add CI testing with GitHub Actions
- devblogs.microsoft.com: .NET 💜 GitHub Actions
GitHub Actions Marketplace
- flat-data Flat Data is a GitHub action which makes it easy to fetch data and commit it to your repository as flatfiles. The action is intended to be run on a schedule, retrieving data from any supported target and creating a commit if there is any change to the fetched data.
GitHub Actions and OpenShift
- redhat.com: Red Hat and GitHub Collaborate to Expand the Developer Experience on Red Hat OpenShift with GitHub Actions 🌟 Industry’s leading enterprise Kubernetes platform now integrates with GitHub, bringing DevOps automation tools from the world’s largest developer platform into the OpenShift ecosystem
- openshift.com: Deploying to OpenShift using GitHub Actions
- github.com: RedHat Actions 🌟
- github.com: OpenShift GitHub Actions Runner 🌟
- github.com: OpenShift GitHub Actions Runner Chart 🌟
- GitHub Copilot 🌟 Your AI pair programmer. With GitHub Copilot, get suggestions for whole lines or entire functions right inside your editor.
- hipertextual.com: GitHub une fuerzas con OpenIA para crear una inteligencia artificial capaz de autocompletar código GitHub Copilot funciona con la inteligencia artificial de OpenAI. La herramienta busca mejorar el aprendizaje de lenguajes de programación.
- xataka.com: Para qué programar cuando una máquina lo hace (un poco) por ti: así es Github Copilot, un sistema que se nutre del prodigioso GPT-3
- thenewstack.io: GitHub Copilot: A Powerful, Controversial Autocomplete for Developers
- xataka.com: Llevo algunos días usando Copilot de GitHub para programar y esta es mi experiencia
- medium: GitHub’s AI Copilot Might Get You Sued If You Use It Some are even abandoning GitHub because of it
- towardsdatascience.com: Can Github Copilot Replace Developers? Since its release, copilot has become the talk of the town among developers. There are many pros and cons to using it.
- towardsdatascience.com: Generating Python Scripts with OpenAi’s Github Copilot Using AI to generate Python scripts for simple neural networks, data visualization and more
- dev.to: GitHub Copilot blew my mind on a code-along exercise
- medium.com/@eriky: Copilot Is Genuinely Scary And Fascinating At The Same Time It knows more than just programming languages
- GitHub Copilot is generally available to all developers We’re making GitHub Copilot, an AI pair programmer that suggests code in your editor, generally available to all developers for $10 USD/month or $100 USD/year. It will also be free to use for verified students and maintainers of popular open source projects.
- xataka.com: GitHub Copilot, el asistente para programar basado en IA, ya está disponible para todos: cuánto cuesta y quienes lo pueden usar gratis
- genbeta.com: Ya hay organizaciones pro-software libre abandonando GitHub por su uso comercial de proyectos open source en Copilot
- xataka.com: Copilot ya escribe el 40% del código de lenguajes como Java o Python que llega a GitHub. En cinco años llegará al 80%
- xataka.com: Copilot es una revolución para programadores (pero también un potencial problema legal para Microsoft)
GitHub CoPilot VS GPT-3
- medium.com/geekculture: Hey ChatGPT, Automate These Tasks Using Python Using AI to plot graphs, send emails/messages, and do web scraping in a few seconds.
- xataka.com: Los programadores ya alucinaban con CoPilot y ChatGPT, pero ahora DeepMind va más allá con AplhaCode
- lucidrains/PaLM-rlhf-pytorch The first open source equivalent of ChatGPT. Implementation of RLHF (Reinforcement Learning with Human Feedback) on top of the PaLM architecture. Basically ChatGPT but with PaLM
- Atlassian Sourcetree
- Visual Studio Code (Git Extensions)
- Visual Studio Online
- git-lfs/git-lfs: Git Large File Storage Git extension for versioning large files
Git Credential Manager
- Git Credential Manager Secure, cross-platform Git credential storage with authentication to GitHub, Azure Repos, and other popular Git hosting services.
- Git Credential Manager (GCM) is a secure Git credential helper built on .NET that runs on Windows, macOS, and Linux.
- github.blog: Git Credential Manager: authentication for everyone Ensuring secure access to your source code is more important than ever. Git Credential Manager helps make that easy.
Semantic-release. CI/CD semantic release workflow (semantic Versioning, commit format and releases)
- semantic-release.gitbook.io 🌟 Semantic-release automates the whole package release workflow including: determining the next version number, generating the release notes and publishing the package.
- css-tricks.com: How to Automate Project Versioning and Releases with Continuous Deployment 🌟
Azure DevOps (formerly known as VSTS)
- Wikipedia: Azure DevOps
- wikipedia: Azure DevOps Server Collaboration software for software development formerly known as Team Foundation Server and Visual Studio Team System
- wikipedia: Azure DevOps Services Cloud service for software development formerly known as Visual Studio Team Services, Visual Studio Online and Team Foundation Service Preview
- Azure DevOps Labs 🌟
- Microsoft Visual Studio Team Services (VSTS)
- Microsoft Visual Studio Team Services (VSTS) Tutorial: The Cloud ALM Platform
- slideshare.net: Git version control and trunk based approach with VSTS
- Microsoft Replacing Visual Studio Team Services with Azure DevOps
- How We Use Git at Microsoft
Pre Commit Hooks
- pre-commit A framework for managing and maintaining multi-language pre-commit hooks.
- towardsdatascience.com: CI/CD by Example in Python A simple demonstration of CI/CD in Python with poetry and pre-commit hooks, poetry-template
- The Merge Bot is a tool to orchestrate pull requests merging into the stable branches.
- Wikipedia: Software bot
- Use bots to accomplish tasks like merging PR’s that have been approved and automatically updating dependencies. Usage of one of these bots might allow us to trigger certain builds based off of specific GitHub tags, it would allow us to only selectively run certain test suites and increase the throughput of the build by only testing changes made in a branch / PR.
- Investigate options that are available and see if we can integrate them with CI.
- We should be able to configure this bot to automatically apply labels to PR’s based off of what is changed in a PR. For instance, if a PR contains any documentation changes, the area/Documentation label can be applied.
Jenkins for git merges
- Git Plugin: Merge Extensions
- Validated Merge Plugin for Git in CloudBees Jenkins Enterprise 🌟
- How to configure Jenkins for git merge
- GitHub Pull Request Builder Plugin , github ref. You should probably migrate to GitHub Branch Source Plugin.
- GitHub Branch Source Plugin: Allows you to create a new project based on the repository structure from one or more GitHub users or organizations.
Bitbucket for git merges
- Automatic branch merging
- BitBucket Auto Merge Automatically create and merge pull request to keep branches in sync.
- Checks for merging pull requests
- BitBucket Bot for Microsoft Teams
- Code Dog Merge your Pull Requests sooner. Some of the Slack messages your team sends are critical for productivity. Automate them.
- Jenkins Plugin: Bitbucket Push and Pull Request
- How to Implement the Automerge feature that is missing from BitBucket cloud
- Configure bitbucket-pipelines.yml to automatically merge feature branch to master?
GitLab for git merges
- Auto-merge between release branches
- Provide merge bot functionality
- lab.texthtml.net: Gitlab Merge Bot
- DockerHub: Gitlab Merge Bot Bot assistant for code review and merge requests approval for Gitlab
- Mergecrush A email & slack reminder bot for Gitlab merge requests.
- stackoverflow.com: How can we programmatically approve merge requests in GitLab?
- Our group has a bot that creates merge requests for certain mechanical changes to our code base. We’d like these MRs to get merged in automatically if/when the CI pipeline succeeds, but our projects require an approval from a member of our group. This means that right now a human has to manually click on “approve” and “merge” for each bot-created MR. Apparently GitLab doesn’t have a way to set different approval rules for some users, so I haven’t found a way to make the bot’s user immune to this requirement.
- My current idea is to have a separate process that approves each of the merge requests created by the bot. Is there an easy way to do this programmatically? That is, is there an API (or better yet, a command line tool) that, when given the name of the branch for a merge request, approves the merge request associated with that branch?
- I’m also open to other ways of getting these changes in with minimal human intervention. I do want them to pass the CI pipeline, though (which is currently accomplished by having them use MRs) and the MRs also help in the rare cases where the pipeline fails, so we can debug what went wrong.
Marge GitLab bot
- Marge-bot: A merge-bot for GitLab
- Example: gitlab.gnome.org/marge-merge-bot
- Example: Smarkets’s Marge-bot for GitLab keeps master always green
- Example: GStreamer Merge Bot
- Jenkins-X UpdateBOT A simple bot for updating dependencies in source code and automatically generating Pull Requests in downstream projects.
Plastic SCM bot
- Plastic SCM
- blog.plasticscm.com: Add a mergebot to your repo!
- Plastic SCM DevOps Mergebot to implement a trunk-based development cycle
- PlasticSCM MergeBot Jenkins Plugin
- genbeta.com: Plastic SCM Mergebot: automatizando tu pipeline de desarrollo
- github-rebase-bot A github bot that monitors repository PRs, rebases them and merges them as they pass tests.
- Bulldozer: GitHub Pull Request Auto-Merge Bot
- github-merge-bot Automates the process of merging pull requests and keeping them up-to-date.
- github.com/squalrus/merge-bot: PR Merge Bot A GitHub action that manages pull request integrations
- Odoo Mergebot
- gmaster.io - Mergedroid: Automate merging just by analyzing your GitHub repo. A BOT that solves conflicts in pull requests without manual intervention.
- Kodiak GitHub bot for updating and merging pull requests
- Rultor A merging bot for Github pull requests
- stackoverflow.com: Bot to automatically reverse GitHub pull request merges. Maybe it’s best to not allow the merges instead of reverting them:
Bors GitHub bot
- Bors Bot
- Bors - Readme
- Bors-ng: A merge bot for GitHub Pull Requests
- Example: CockroachDB’s Bors Merge Bot
Click to expand!
Click to expand!
Click to expand!
No, ninguna inteligencia artificial te va a quitar tu trabajo como data scientist o developer.— Xavier Carrera (@XaviGrowth) June 30, 2021
La automatización de @github CoPilot creará más trabajos de los que destruirá.
Acá te explico porque 👇🧵
I'm using GitHub Copilot in the last few hours and all I'm going to say that it is magic. It really helps me with dealing with the boilerplate, writing code comments, and avoiding antipatterns. It also is occasionally reading my mind.— Jaana Dogan ヤナ ドガン (@rakyll) July 8, 2021
GitHub's Copilot would benefit from a compliance feature to help developers detect when any code, hand written or auto generated, possibly violates another projects license or copyright.— Kelsey Hightower (@kelseyhightower) July 8, 2021
Today's @code tip: the git stash commands— Matt Bierner (@mattbierner) June 27, 2020
Create, apply, and manage #git stashes using VS Code commands.
Stashes let you quickly save off your workspace changes and restore them when they are needed again#code2020 pic.twitter.com/VPursGdRka
Writing good Git commit messages matters!— Deni Moka⚡ (@dmokafa) January 18, 2021
A thread about how to write clean commit messages:
Here are _some_ of the most essential git operations you will need when working as a developer.— Oliver Jumpertz (@oliverjumpertz) March 23, 2021
Git is by far the most used source control management tool out there.— Oliver Jumpertz (@oliverjumpertz) August 11, 2021
It is basially an essential to know. And this justifies knowing a few of the most important git commands you need in your daily work.
Here are 19 that any developer should know.
A thread. ↓ pic.twitter.com/nLglrUWp6o
Best Free Git Courses for beginners— javinpaul (@javinpaul) July 9, 2022
1. Git Started With GitHub -https://t.co/ajJlJUz34i
2. Introduction to Git - https://t.co/T0mIUkIBbB
2. GIT 5-day Challenge - https://t.co/bj687fKJ8Y
4. Command Line Essentials: - https://t.co/us18hMcw9P
5. Git expert - https://t.co/AmRMZznQzu pic.twitter.com/FM6Oh2KGMD
If you're a programmer, these 10 git commands will save you hours of research🧵👇— Ujjwal Chadha (@ujjwalscript) August 18, 2022
As a Developer, how much do you use Github?— • nanou • (@NanouuSymeon) October 29, 2022
99% of the programmers only know the basic git commands (push, pull and commit)— Ujjwal Chadha (@ujjwalscript) November 17, 2022
These 10 git commands will save you hours of research time when you're stuck:
If you want to master Git, watch these YouTube videos:— Nikki Siapno (@NikkiSiapno) November 30, 2022