Skip to content

Commit 72f587d

Browse files
committed
feat: List all files in a pull request before attempting merge
1 parent d580fd6 commit 72f587d

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

Git/Project.cs

+10
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,16 @@ public void Clean()
5050
RunCommand("clean --force -d -x");
5151
}
5252

53+
public void DiffStat(string reference1, string reference2)
54+
{
55+
foreach (var line in GetCommandOutput($"diff --numstat {reference1}...{reference2}"))
56+
{
57+
var parts = line.Split('\t');
58+
if (parts.Length == 3 && int.TryParse(parts[0], out var added) && int.TryParse(parts[1], out var deleted))
59+
Console.WriteLine(" {2} {0:+#,##0} {1:-#,##0}", added, deleted, parts[2]);
60+
}
61+
}
62+
5363
public void Merge(string reference)
5464
{
5565
RunCommand($"merge --quiet --no-edit --no-ff -Xignore-space-change {reference}");

Program.cs

+1
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ static async Task AsyncMain(IConfigurationRoot config)
113113
foreach (var pullRequest in autoMergePullRequests)
114114
{
115115
Console.WriteLine($"Merging #{pullRequest.Number} {pullRequest.Title}...");
116+
git.DiffStat(baseBranchCommit, $"pull/{pullRequest.Number}/head");
116117
var mergeCommit = git.ParseRef($"pull/{pullRequest.Number}/head");
117118
try
118119
{

0 commit comments

Comments
 (0)