mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-03-05 15:15:49 +02:00
Use DisabledReason for rebasing a branch onto itself
This commit is contained in:
parent
e592d81b60
commit
c9371f812f
@ -76,9 +76,10 @@ func (self *BranchesController) GetKeybindings(opts types.KeybindingsOpts) []*ty
|
|||||||
OpensMenu: true,
|
OpensMenu: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Key: opts.GetKey(opts.Config.Branches.RebaseBranch),
|
Key: opts.GetKey(opts.Config.Branches.RebaseBranch),
|
||||||
Handler: opts.Guards.OutsideFilterMode(self.rebase),
|
Handler: opts.Guards.OutsideFilterMode(self.rebase),
|
||||||
Description: self.c.Tr.RebaseBranch,
|
Description: self.c.Tr.RebaseBranch,
|
||||||
|
GetDisabledReason: self.getDisabledReasonForRebase,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Key: opts.GetKey(opts.Config.Branches.MergeIntoCurrentBranch),
|
Key: opts.GetKey(opts.Config.Branches.MergeIntoCurrentBranch),
|
||||||
@ -512,6 +513,16 @@ func (self *BranchesController) rebase() error {
|
|||||||
return self.c.Helpers().MergeAndRebase.RebaseOntoRef(selectedBranchName)
|
return self.c.Helpers().MergeAndRebase.RebaseOntoRef(selectedBranchName)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (self *BranchesController) getDisabledReasonForRebase() string {
|
||||||
|
selectedBranchName := self.context().GetSelected().Name
|
||||||
|
checkedOutBranch := self.c.Helpers().Refs.GetCheckedOutRef().Name
|
||||||
|
if selectedBranchName == checkedOutBranch {
|
||||||
|
return self.c.Tr.CantRebaseOntoSelf
|
||||||
|
}
|
||||||
|
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
func (self *BranchesController) fastForward(branch *models.Branch) error {
|
func (self *BranchesController) fastForward(branch *models.Branch) error {
|
||||||
if !branch.IsTrackingRemote() {
|
if !branch.IsTrackingRemote() {
|
||||||
return self.c.ErrorMsg(self.c.Tr.FwdNoUpstream)
|
return self.c.ErrorMsg(self.c.Tr.FwdNoUpstream)
|
||||||
|
@ -220,9 +220,6 @@ func (self *MergeAndRebaseHelper) PromptToContinueRebase() error {
|
|||||||
|
|
||||||
func (self *MergeAndRebaseHelper) RebaseOntoRef(ref string) error {
|
func (self *MergeAndRebaseHelper) RebaseOntoRef(ref string) error {
|
||||||
checkedOutBranch := self.refsHelper.GetCheckedOutRef().Name
|
checkedOutBranch := self.refsHelper.GetCheckedOutRef().Name
|
||||||
if ref == checkedOutBranch {
|
|
||||||
return self.c.ErrorMsg(self.c.Tr.CantRebaseOntoSelf)
|
|
||||||
}
|
|
||||||
menuItems := []*types.MenuItem{
|
menuItems := []*types.MenuItem{
|
||||||
{
|
{
|
||||||
Label: self.c.Tr.SimpleRebase,
|
Label: self.c.Tr.SimpleRebase,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user