Using Git and GitHub to contribute changes to Repositories with Pull Requests

Introduction

Contributing to open-source projects on platforms like GitHub can significantly enhance your skills and expand your network. This article focuses on how to contribute to a GitHub repository, using the “Awesome Mac Admin Tools” repo as an example. Whether you’re a seasoned developer or new to coding, you’ll learn how to fork a repository, make modifications, and submit pull requests.

Understanding Git and GitHub

Git is a version control system that allows multiple developers to collaborate on projects efficiently. GitHub is a cloud-based platform that hosts Git repositories and provides a user-friendly interface for managing projects. Here’s what you will learn in this guide:

  • Forking a Repository: Creating a personal copy to make changes.
  • Making Modifications: How to edit files and add new content.
  • Submitting Pull Requests: The process of requesting your changes be merged into the main repository.

Steps to Contribute to a GitHub Repo

1. Fork the Repository

To start contributing, the first step is to fork the repository you want to contribute to. This creates a personal copy under your GitHub account.

  • Ensure you have a GitHub account and are signed in.
  • Navigate to the repository and click on the “Fork” button.

2. Clone the Repository

Once you have a fork, the next step is to clone the repository to your local development environment:

  • Copy the URL of the forked repository.
  • Open your terminal and run:

    git clone [URL]
    

3. Modify the Code

After cloning the repo to your local machine, you can edit the files directly. For instance, to add a new text editor called Code Runner to the Awesome Mac Admin Tools list:

  • Open the README.md file in your preferred text editor.
  • Add the entry for Code Runner, including a brief description and any relevant links.

4. Save and Commit Changes

Once your changes are made, you need to commit them:

  1. Check the status of your changes:

    git status
    
  2. Stage your changes:

    git add .
    
  3. Commit those changes with a message:

    git commit -m "Added Code Runner"
    

5. Push Changes and Create a Pull Request

Now that your changes are ready, you’ll want to push them back to your fork on GitHub and create a pull request:

  1. Push your changes:

    git push origin main
    
  2. Navigate to the original repository and click on “Pull Requests” tab.
  3. Click on “New Pull Request” and fill in the required details.

6. Review by the Repository Owner

Once your pull request is submitted, the repository owner will review your changes. If everything looks good, they may merge your contribution into the original repository.

Key Takeaways

  • Forking allows you to safely make changes without affecting the original repository.
  • Modifying files can enhance the project and make it more useful to others.
  • Pull requests are a formal way to propose your changes for review and integration.

This guide illustrates that contributing to GitHub repositories, especially for Mac admins, can be a rewarding experience. Not only does it enhance your skills, but it also fosters collaboration within the community. Start contributing today and make your mark in the open-source world!

I hope you enjoyed this blog where I outlined one of my favorite git workflows. If you found it useful Follow me on LinkedIn and comment with questions, or feedback. As always here are the sources I referenced throughout this blog post.

AI Usage Transparency Report

AI Era · Written during widespread use of AI tools

AI Signal Composition

Tone Struct List Instr
Repetition: 0%
Tone: 65%
Structure: 65%
List: 21%
Instructional: 27%
Emoji: 0%

Score: 0.27 · Moderate AI Influence

Summary

Contributing to open-source projects on platforms like GitHub can significantly enhance your skills and expand your network.

Related Posts

Developer Strategies: How to commit to multiple git repositories with multiple unique SSH keys

One of the key challenges with git and GitHub is wanting to commit code when you have multiple repositories on your local desktop. There are lots of ways to accomplish the task of committing code with git to GitHub, the strategy that I want to discuss in this tutorial is the process of using deploy-keys defined at the repo level and a configuration file defined to call the right key depending on which repository you happen to be working in.

Read more

Running Image Generation Locally on macOS with Draw Things (2026)

Local LLMs have rapidly evolved beyond text and are now capable of producing high-quality images directly on-device. For users running Apple Silicon machines—especially M-series Mac Studios and MacBook Pros—this represents a major shift in what’s possible without relying on cloud services. Just a few years ago, image generation required powerful remote GPUs, subscriptions, and long processing times. Today, thanks to optimized models and Apple’s Metal acceleration, you can generate and edit images locally with impressive speed and quality. The result is a workflow that is faster, private, and entirely under...

Read more

Setting up Ollama on macOS

Recently, after some bad experiences with OpenAI's ChatGPT and CODEX, I decided to look into and learn more about running local AI models. On its face it was intimidating, but I had seen a lot of people in the MacAdmins community posting examples of macOS setups, which really helped lower the bar for me both in terms of approachability and just making me more aware of the local AI community that exists out there today.

Read more

QuickPKG Walkthrough and Review

I use QuickPKG when I need to turn an application, DMG, or ZIP file into a package quickly without wasting time in a heavier packaging workflow. This post follows the same path as my video: what QuickPKG is, where to get it, how I run it, what a simple packaging example looks like, and where I think admins need to be careful about potential pitfalls that can arise from using this tool.

Read more

Modified JAMF Compliance Editor Extension: List failed items NOT in exemption list

As promised I am continuing to look for ways to build out my JAMF Github Repo. One of the items that I have been working heavily with in my role is the macOS Compliance Project and as I am a JAMF administrator that means leveraging the JAMF Compliance Editor. The JAMF Compliance Editor gives you the ability to rapidly configure, tailor and deploy a custom baseline with the macOS Compliance Project.

Read more

How to setup exemptions with JAMF Compliance Editor

If you are new to either the macOS Compliance Project or JAMF Compliance Editor, I would recommend watching and reading the following videos and blog posts on the topic. Familiarizing yourself with these resources will help ensure a smoother understanding of the project's requirements and functionality. This will also enable you to better navigate the tools and make informed decisions about your compliance setup.

Read more

BYOD Restrictions & Strategies for 2025

As organizations continue to embrace Bring Your Own Device (BYOD) strategies, ensuring security without compromising user experience remains a challenge. This post outlines a minimum baseline for BYOD restrictions across iOS, Android, macOS, and Windows devices—providing a foundation for companies to secure personal devices while allowing employees the flexibility to work from their own hardware. While these recommendations represent best practices, they are not a one-size-fits-all solution. Each company has unique security needs, regulatory requirements, and risk tolerances, meaning these restrictions can be improved upon, debated, or modified to better...

Read more

Managing Bring Your Own Device (BYOD) for Android with Microsoft Intune

Alright, so today we're going to be talking about the management of bring your own device BYOD for Android devices. There's a lot of information out there for the management of iOS devices and you can do that with pretty much any Apple MDM on the market. We just happen to use Jamf where I work, but you could use anything from Braavos to SimpleMDM to Kanji or JumpCloud. Mosyle is also a great option.

Read more

BYO with me in 2025: iOS with User Enrollment in JAMF Pro

It really depends on your company's needs. For example, many companies need to hire 1099 contractors and in such a case they come with their own devices but not the correct security settings or enforcements. Remember BYOD is a security construct. The idea here is that you should be securing the company's sensitive data in all forms. This may involve implementing policies for contractor-owned devices, ensuring that all devices accessing company data meet minimum security standards, and regularly reviewing and updating these standards to stay ahead of emerging threats.

Read more