DEV Community

Cover image for Introducing Pull Request Tracker - A GitHub Action
Mateus Abelli
Mateus Abelli

Posted on

Introducing Pull Request Tracker - A GitHub Action

๐Ÿงช What I built

A GitHub Action that will help maintainers keep track of new Pull Requests by giving them detailed information if someone might be trying to push similar or duplicate changes.

๐Ÿ† Category Submission:

Maintainers Must-Have: Make the lives of Open Source maintainers easier.

๐Ÿ”— App Link

https://github.com/marketplace/actions/pull-request-tracker

๐Ÿ–ผ Screenshots

Image description

๐Ÿ’ฌ Description

Pull Request Tracker is a GitHub Action to easily track similar or duplicated PRs. It runs automatically whenever someone opens a new PR and scans all open PRs for different patterns. The output is a detailed comment with useful information including diff links in case of detected conflicts.

๐Ÿ”— Link to Source Code

https://github.com/mateusabelli/pr-tracker

๐Ÿ“œ Permissive License

Pull Request Tracker is free and open-source software licensed under the MIT License.

๐Ÿ‘จโ€๐Ÿ’ป Background

What made you decide to build this particular app? What inspired you?

My initial idea was to create a tool that could identify if someone is opening a PR that makes the same or similar changes of other contributors with open PRs. To achieve this, I planned three major modules, one for checking pulls, checking conflicts and one for checking hunks.

โš™ How I built it

How did you utilize GitHub Actions or GitHub Codespaces? Did you learn something new along the way? Pick up a new skill?

I created this project as a composite action, at the beginning I wanted to try making a JavaScript action but I've always felt like the features were easily executed from the command line or using the GitHub CLI gh. So that's when decided to go with a composite action running a few shell scripts.

I didn't know how to use shell before, but it felt like a very simple and flexible scripting language, everything that I attempted to do with it, kind of worked, specially integrating the usage of CLI tools, using grep and even some JS code with node.

I learned about GitHub Actions, Shell scripting, a basic usage of GraphQL, the awesome GitHub API, the powerful GitHub CLI gh, and I also wrote my best README so far.

๐Ÿ”Ž Additional Resources/Info

These videos helped understand GitHub Actions:


Thanks for reading. Have a nice day!

Top comments (0)