As developers, we create a lot of pull requests, and I must admit that sometimes I neglect to write a detailed description to help my team review the changes efficiently.
To assist my team, I use ChatGPT to generate richer pull request descriptions, giving me a little more time to focus on coding.
Here’s the simple trick:
- On your current feature branch, run the following PowerShell script from within your root repository folder. It will output a
diff.patch
file . - Paste that file into ChatGPT and use the following prompt:
- "As a software developer, I’ve made the changes in the attached git diff file. Please write a pull request description for my team to help them review it efficiently, with an emphasis on {Insert your bullet points}."
Here is the gist
# Check if the git command is available if (-not (Get-Command git -ErrorAction SilentlyContinue)) { Write-Host "Git is not installed or not available in the PATH." -ForegroundColor Red exit } # Ensure we're in a git repository $gitStatus = git rev-parse --is-inside-work-tree 2>&1 if ($gitStatus -ne "true") { Write-Host "This is not a git repository." -ForegroundColor Red exit } # Get the current branch name $currentBranch = git rev-parse --abbrev-ref HEAD if ($currentBranch -eq "main") { Write-Host "You are on the 'main' branch. Please switch to a feature branch." -ForegroundColor Yellow exit } # Fetch the latest changes for the main branch git fetch origin main # Get the latest commit on the main branch $mainCommit = git rev-parse origin/main # Get the latest commit on the current branch $currentBranchCommit = git rev-parse HEAD # Generate the diff between the latest commit on main and the current branch $diffFileName = "diff.patch" git diff $mainCommit $currentBranchCommit > $diffFileName # Check if the diff file was generated successfully if (Test-Path $diffFileName) { Write-Host "Diff file generated successfully: $diffFileName" -ForegroundColor Green } else { Write-Host "Failed to generate diff file." -ForegroundColor Red }
As a generel rule of thumb, keep your Pull Request small! Not only does that help your team reviewing your changes and it also makes writing Pull request descriptions easier.
Disclaimer
- As alway, when using gpt is that you OWN the output, so dont forget to check it.
- The output is only for scaffolding a pull request description, so modify the output accordingly
Top comments (0)
Some comments may only be visible to logged-in visitors. Sign in to view all comments. Some comments have been hidden by the post's author - find out more