Skip to content

Commit 7e2f3be

Browse files
committed
enhance: clear commit message before merging/cherry-picking/rebasing/reverting to allow SourceGit read it from git (#1414)
Signed-off-by: leo <[email protected]>
1 parent 7de5991 commit 7e2f3be

File tree

11 files changed

+30
-17
lines changed

11 files changed

+30
-17
lines changed

src/ViewModels/CherryPick.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ public CherryPick(Repository repo, Models.Commit merge, List<Models.Commit> pare
6666
public override Task<bool> Sure()
6767
{
6868
_repo.SetWatcherEnabled(false);
69+
_repo.ClearCommitMessage();
6970
ProgressDescription = $"Cherry-Pick commit(s) ...";
7071

7172
var log = _repo.CreateLog("Cherry-Pick");

src/ViewModels/Fetch.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ public override Task<bool> Sure()
8888
CallUIThread(() =>
8989
{
9090
if (!string.IsNullOrEmpty(upstreamHead))
91-
_repo.NavigateToCommitDelayed(upstreamHead);
91+
_repo.NavigateToCommit(upstreamHead, true);
9292

9393
_repo.MarkFetched();
9494
_repo.SetWatcherEnabled(true);

src/ViewModels/FetchInto.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public override Task<bool> Sure()
3737
var changedLocalBranchHead = new Commands.QueryRevisionByRefName(_repo.FullPath, Local.Name).Result();
3838
CallUIThread(() =>
3939
{
40-
_repo.NavigateToCommitDelayed(changedLocalBranchHead);
40+
_repo.NavigateToCommit(changedLocalBranchHead, true);
4141
_repo.SetWatcherEnabled(true);
4242
});
4343

src/ViewModels/Merge.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ public Merge(Repository repo, Models.Tag source, string into)
5454
public override Task<bool> Sure()
5555
{
5656
_repo.SetWatcherEnabled(false);
57+
_repo.ClearCommitMessage();
5758
ProgressDescription = $"Merging '{_sourceName}' into '{Into}' ...";
5859

5960
var log = _repo.CreateLog($"Merging '{_sourceName}' into '{Into}'");
@@ -67,7 +68,7 @@ public override Task<bool> Sure()
6768
var head = new Commands.QueryRevisionByRefName(_repo.FullPath, "HEAD").Result();
6869
CallUIThread(() =>
6970
{
70-
_repo.NavigateToCommitDelayed(head);
71+
_repo.NavigateToCommit(head, true);
7172
_repo.SetWatcherEnabled(true);
7273
});
7374
return true;

src/ViewModels/MergeMultiple.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,22 +41,23 @@ public MergeMultiple(Repository repo, List<Models.Branch> branches)
4141
public override Task<bool> Sure()
4242
{
4343
_repo.SetWatcherEnabled(false);
44+
_repo.ClearCommitMessage();
4445
ProgressDescription = "Merge head(s) ...";
4546

4647
var log = _repo.CreateLog("Merge Multiple Heads");
4748
Use(log);
4849

4950
return Task.Run(() =>
5051
{
51-
var succ = new Commands.Merge(
52+
new Commands.Merge(
5253
_repo.FullPath,
5354
ConvertTargetToMergeSources(),
5455
AutoCommit,
5556
Strategy.Arg).Use(log).Exec();
5657

5758
log.Complete();
5859
CallUIThread(() => _repo.SetWatcherEnabled(true));
59-
return succ;
60+
return true;
6061
});
6162
}
6263

src/ViewModels/Pull.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ public override Task<bool> Sure()
167167
var head = new Commands.QueryRevisionByRefName(_repo.FullPath, "HEAD").Result();
168168
CallUIThread(() =>
169169
{
170-
_repo.NavigateToCommitDelayed(head);
170+
_repo.NavigateToCommit(head, true);
171171
_repo.SetWatcherEnabled(true);
172172
});
173173

src/ViewModels/Rebase.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ public Rebase(Repository repo, Models.Branch current, Models.Commit on)
4343
public override Task<bool> Sure()
4444
{
4545
_repo.SetWatcherEnabled(false);
46+
_repo.ClearCommitMessage();
4647
ProgressDescription = "Rebasing ...";
4748

4849
var log = _repo.CreateLog("Rebase");

src/ViewModels/Repository.cs

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -925,24 +925,23 @@ public void MarkFetched()
925925
_lastFetchTime = DateTime.Now;
926926
}
927927

928-
public void NavigateToCommit(string sha)
928+
public void NavigateToCommit(string sha, bool isDelayMode = false)
929929
{
930-
if (_histories != null)
930+
if (isDelayMode)
931+
{
932+
_navigateToCommitDelayed = sha;
933+
}
934+
else if (_histories != null)
931935
{
932936
SelectedViewIndex = 0;
933937
_histories.NavigateTo(sha);
934938
}
935939
}
936940

937-
public void NavigateToCommitDelayed(string sha)
938-
{
939-
_navigateToCommitDelayed = sha;
940-
}
941-
942-
public void NavigateToCurrentHead()
941+
public void ClearCommitMessage()
943942
{
944-
if (_currentBranch != null)
945-
NavigateToCommit(_currentBranch.Head);
943+
if (_workingCopy is not null)
944+
_workingCopy.CommitMessage = string.Empty;
946945
}
947946

948947
public void ClearHistoriesFilter()

src/ViewModels/Revert.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ public Revert(Repository repo, Models.Commit target)
2525
public override Task<bool> Sure()
2626
{
2727
_repo.SetWatcherEnabled(false);
28+
_repo.ClearCommitMessage();
2829
ProgressDescription = $"Revert commit '{Target.SHA}' ...";
2930

3031
var log = _repo.CreateLog($"Revert '{Target.SHA}'");

src/Views/RepositoryToolbar.axaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@
126126
</ContentControl.DataTemplates>
127127
</ContentControl>
128128

129-
<Button Classes="icon_button" Width="32" Command="{Binding NavigateToCurrentHead}" ToolTip.Tip="{DynamicResource Text.Repository.NavigateToCurrentHead}">
129+
<Button Classes="icon_button" Width="32" Click="NavigateToHead" ToolTip.Tip="{DynamicResource Text.Repository.NavigateToCurrentHead}">
130130
<Path Width="13" Height="13" Margin="0,2,0,0" Data="{StaticResource Icons.Target}" Fill="{DynamicResource Brush.FG1}"/>
131131
</Button>
132132
</StackPanel>

0 commit comments

Comments
 (0)