Skip to content

Commit 8ea17e5

Browse files
committed
Merge branch 'feat-bare-repository' into develop
2 parents 6f407fb + f2b1c06 commit 8ea17e5

11 files changed

+488
-403
lines changed

src/ViewModels/CommitDetail.cs

Lines changed: 26 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -420,34 +420,37 @@ public ContextMenu CreateChangeContextMenu(Models.Change change)
420420
menu.Items.Add(patch);
421421
menu.Items.Add(new MenuItem { Header = "-" });
422422

423-
var resetToThisRevision = new MenuItem();
424-
resetToThisRevision.Header = App.Text("ChangeCM.CheckoutThisRevision");
425-
resetToThisRevision.Icon = App.CreateMenuIcon("Icons.File.Checkout");
426-
resetToThisRevision.Click += (_, ev) =>
423+
if (!_repo.IsBare)
427424
{
428-
new Commands.Checkout(_repo.FullPath).FileWithRevision(change.Path, $"{_commit.SHA}");
429-
ev.Handled = true;
430-
};
425+
var resetToThisRevision = new MenuItem();
426+
resetToThisRevision.Header = App.Text("ChangeCM.CheckoutThisRevision");
427+
resetToThisRevision.Icon = App.CreateMenuIcon("Icons.File.Checkout");
428+
resetToThisRevision.Click += (_, ev) =>
429+
{
430+
new Commands.Checkout(_repo.FullPath).FileWithRevision(change.Path, $"{_commit.SHA}");
431+
ev.Handled = true;
432+
};
431433

432-
var resetToFirstParent = new MenuItem();
433-
resetToFirstParent.Header = App.Text("ChangeCM.CheckoutFirstParentRevision");
434-
resetToFirstParent.Icon = App.CreateMenuIcon("Icons.File.Checkout");
435-
resetToFirstParent.IsEnabled = _commit.Parents.Count > 0;
436-
resetToFirstParent.Click += (_, ev) =>
437-
{
438-
if (change.Index == Models.ChangeState.Renamed)
439-
new Commands.Checkout(_repo.FullPath).FileWithRevision(change.OriginalPath, $"{_commit.SHA}~1");
434+
var resetToFirstParent = new MenuItem();
435+
resetToFirstParent.Header = App.Text("ChangeCM.CheckoutFirstParentRevision");
436+
resetToFirstParent.Icon = App.CreateMenuIcon("Icons.File.Checkout");
437+
resetToFirstParent.IsEnabled = _commit.Parents.Count > 0;
438+
resetToFirstParent.Click += (_, ev) =>
439+
{
440+
if (change.Index == Models.ChangeState.Renamed)
441+
new Commands.Checkout(_repo.FullPath).FileWithRevision(change.OriginalPath, $"{_commit.SHA}~1");
440442

441-
new Commands.Checkout(_repo.FullPath).FileWithRevision(change.Path, $"{_commit.SHA}~1");
442-
ev.Handled = true;
443-
};
443+
new Commands.Checkout(_repo.FullPath).FileWithRevision(change.Path, $"{_commit.SHA}~1");
444+
ev.Handled = true;
445+
};
444446

445-
menu.Items.Add(resetToThisRevision);
446-
menu.Items.Add(resetToFirstParent);
447-
menu.Items.Add(new MenuItem { Header = "-" });
447+
menu.Items.Add(resetToThisRevision);
448+
menu.Items.Add(resetToFirstParent);
449+
menu.Items.Add(new MenuItem { Header = "-" });
448450

449-
if (File.Exists(Path.Combine(fullPath)))
450-
TryToAddContextMenuItemsForGitLFS(menu, change.Path);
451+
if (File.Exists(Path.Combine(fullPath)))
452+
TryToAddContextMenuItemsForGitLFS(menu, change.Path);
453+
}
451454

452455
var copyPath = new MenuItem();
453456
copyPath.Header = App.Text("CopyPath");

src/ViewModels/CreateBranch.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,11 @@ public bool CheckoutAfterCreated
3131
set => _repo.Settings.CheckoutBranchOnCreateBranch = value;
3232
}
3333

34+
public bool IsBareRepository
35+
{
36+
get => _repo.IsBare;
37+
}
38+
3439
public CreateBranch(Repository repo, Models.Branch branch)
3540
{
3641
_repo = repo;
@@ -84,7 +89,7 @@ public override Task<bool> Sure()
8489
return Task.Run(() =>
8590
{
8691
var succ = false;
87-
if (CheckoutAfterCreated)
92+
if (CheckoutAfterCreated && !_repo.IsBare)
8893
{
8994
var changes = new Commands.CountLocalChangesWithoutUntracked(_repo.FullPath).Result();
9095
var needPopStash = false;

0 commit comments

Comments
 (0)