30 Minutes to Merge: Advanced Branching Strategy

What: In next month’s “30 Minutes to Merge”, we’ll dig in deeper into branching and merging strategies to optimize productivity, support multiple releases and manage code changes, git merge vs rebase.

GitHub’s Implementation Engineers will share best practices for multiple collaborators, branching for deployments, and using release branches.

Where: Live via Twitch , Q&A to follow the presentation in this event topic.

:space_invader:

5 Likes

Thanks for your patience folks! We’ll be joined by the one and only @hollywood save the date April 23, 2021. And of course @beardofedu will be back as a host.

:space_invader:

2 Likes

About our Speaker:

@hollywood

A Hubber since 2017, starting out as a DevOps Engineer on our Professional Services team prior to making the transition to Solutions Engineering. Before coming to GitHub I spent 12 years as a Software Engineer and 6 as an Engineering Manager for organizations such as NASA, Disney, Fidelity, and more. When not working, I enjoy spending time with my 3 children, playing hockey, wakeboarding, and making music.

2 Likes

Confirmed Date/Time:

2021-04-23T15:00:00Z

2 Likes

Now live!
GitHub - Twitch

Super excited to start off today! After the presentation on Twitch, please come on back to this event post for a written Q&A with Matt and Jon, there will be a swag giveaway :sparkles:

See you soon!

Andrea

2 Likes

We are excited to be joined by Senior Implementation Engineer Matthew Desmond and Solutions Engineer Jonathan Cardona

We are standing by live to answer your questions about the presentation. To submit a question, click “Reply”.

All participants will be awarded the new AMA badge and are eligible for a random swag drop (form link posted at the end)!

How would you go about integrating this into already large GitHub projects (2,000+ commits with no automation / actions)? Would you suggest a whole overhaul of the GitHub repository or would you suggest something more along the lines of just cherry picking what we would need?

I know it is very organisation specific but what would you suggest if given the option to do either?

2 Likes

Hey all :wave: , I’m here to answer any questions you might have after @hollywood 's presentation on collaboration, deployments, and releases

1 Like

Hi everyone! Happy to answer any and all questions :slight_smile:

2 Likes

Does your operational overhead allow for an overhaul and would you consider these projects monorepos?

2 Likes

The projects themselves I would class as monorepos, but we’re a small team so have the ability to alter internal workflows quite easily. We however, don’t currently have the time or resources to include automated deploys due to the nature of our server setup - we opt for a more suited server-side git pull and update.

1 Like

I’m a huge fan of making bite sized changes rather than one big bang because just as you said, you don’t have the time or resources. I’m curious, given that you’re a small team would you say your communication could improve? Or are you all aligned on a single practice?

2 Likes

Oh, our communication could definitively improve but I’m the first person my manager has had to manage because he worked his way into his position and we’re a small startup with around 15 members. Two of which are actual developers (me and the CTO) so we’re incredibly stretched resource-wise and both on steep personal learning curves. Hence the discussion about practices because we’re still ‘finding our feet’ in what works well both company-wide and personally.

And no, we don’t have a single practice, it’s very much a ‘get the feature released because X needs it’, or ‘fix this bug asap because Y can’t finish Z’ and therefor it’s normally only one person working on a project at a time so it’s a very quick, branch, fix, commit, merge and release . This is why I’m wondering whether an overhaul is worth it and whether we can use automation to force our hand into a single practice.

Edit: Only recently did we start creating releases and versioning them.

1 Like

Just weighing in, but I know you and @hollywood are having a more detailed conversation about this.

I would look at the easiest wins in terms of implementing some kind of automation to start your journey of digital transformation. Find areas that are being done manually (pushing to a dev environment as an example) and identify if a GitHub Action could reduce the person-resources needed to perform that task. As you begin reducing the manual process that can / should be automated it should create more breathing room for you to examine your practices and identify what needs to be automated next. A constant struggle, especially on growing teams, is the feeling of treading water or barely staying above the mountain of work in your task list.

TL;DR: Start small, quick wins, build on success / momentum

3 Likes

That makes a lot of sense, and I feel it would free up a significant portion of our time to be able to work on other areas that need improving, thanks for that viewpoint :+1:

3 Likes

Fantastic response, Matt. I agree 100%

2 Likes

Thank you very much for joining, follow Matt and Jon for more tips, nuggets of wisdom and more :slight_smile:

4 Likes

This is an eye opener to me. Thanks for the responses and thanks to community for bringing this in for us

1 Like