mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-06-10 23:57:43 +02:00
Add command "View divergence from base branch"
This commit is contained in:
parent
b23ea3b190
commit
f58b7da7dc
@ -205,6 +205,40 @@ func (self *BranchesController) viewUpstreamOptions(selectedBranch *models.Branc
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var disabledReason *types.DisabledReason
|
||||||
|
baseBranch, err := self.c.Git().Loaders.BranchLoader.GetBaseBranch(selectedBranch, self.c.Model().ExistingMainBranches)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if baseBranch == "" {
|
||||||
|
baseBranch = self.c.Tr.BaseBranch
|
||||||
|
disabledReason = &types.DisabledReason{Text: self.c.Tr.NoMainBranches}
|
||||||
|
}
|
||||||
|
shortBaseBranchName := strings.TrimPrefix(baseBranch, "refs/remotes/")
|
||||||
|
label := utils.ResolvePlaceholderString(
|
||||||
|
self.c.Tr.ViewDivergenceFromBaseBranch,
|
||||||
|
map[string]string{"baseBranch": shortBaseBranchName},
|
||||||
|
)
|
||||||
|
viewDivergenceFromBaseBranchItem := &types.MenuItem{
|
||||||
|
LabelColumns: []string{label},
|
||||||
|
Key: 'b',
|
||||||
|
OnPress: func() error {
|
||||||
|
branch := self.context().GetSelected()
|
||||||
|
if branch == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
return self.c.Helpers().SubCommits.ViewSubCommits(helpers.ViewSubCommitsOpts{
|
||||||
|
Ref: branch,
|
||||||
|
TitleRef: fmt.Sprintf("%s <-> %s", branch.RefName(), shortBaseBranchName),
|
||||||
|
RefToShowDivergenceFrom: baseBranch,
|
||||||
|
Context: self.context(),
|
||||||
|
ShowBranchHeads: false,
|
||||||
|
})
|
||||||
|
},
|
||||||
|
DisabledReason: disabledReason,
|
||||||
|
}
|
||||||
|
|
||||||
unsetUpstreamItem := &types.MenuItem{
|
unsetUpstreamItem := &types.MenuItem{
|
||||||
LabelColumns: []string{self.c.Tr.UnsetUpstream},
|
LabelColumns: []string{self.c.Tr.UnsetUpstream},
|
||||||
OnPress: func() error {
|
OnPress: func() error {
|
||||||
@ -312,6 +346,7 @@ func (self *BranchesController) viewUpstreamOptions(selectedBranch *models.Branc
|
|||||||
|
|
||||||
options := []*types.MenuItem{
|
options := []*types.MenuItem{
|
||||||
viewDivergenceItem,
|
viewDivergenceItem,
|
||||||
|
viewDivergenceFromBaseBranchItem,
|
||||||
unsetUpstreamItem,
|
unsetUpstreamItem,
|
||||||
setUpstreamItem,
|
setUpstreamItem,
|
||||||
upstreamResetItem,
|
upstreamResetItem,
|
||||||
|
@ -468,6 +468,9 @@ type TranslationSet struct {
|
|||||||
SetUpstream string
|
SetUpstream string
|
||||||
UnsetUpstream string
|
UnsetUpstream string
|
||||||
ViewDivergenceFromUpstream string
|
ViewDivergenceFromUpstream string
|
||||||
|
ViewDivergenceFromBaseBranch string
|
||||||
|
NoMainBranches string
|
||||||
|
BaseBranch string
|
||||||
DivergenceSectionHeaderLocal string
|
DivergenceSectionHeaderLocal string
|
||||||
DivergenceSectionHeaderRemote string
|
DivergenceSectionHeaderRemote string
|
||||||
ViewUpstreamResetOptions string
|
ViewUpstreamResetOptions string
|
||||||
@ -1434,6 +1437,9 @@ func EnglishTranslationSet() TranslationSet {
|
|||||||
SetUpstream: "Set upstream of selected branch",
|
SetUpstream: "Set upstream of selected branch",
|
||||||
UnsetUpstream: "Unset upstream of selected branch",
|
UnsetUpstream: "Unset upstream of selected branch",
|
||||||
ViewDivergenceFromUpstream: "View divergence from upstream",
|
ViewDivergenceFromUpstream: "View divergence from upstream",
|
||||||
|
ViewDivergenceFromBaseBranch: "View divergence from base branch ({{.baseBranch}})",
|
||||||
|
NoMainBranches: "There are no main branches",
|
||||||
|
BaseBranch: "base branch",
|
||||||
DivergenceSectionHeaderLocal: "Local",
|
DivergenceSectionHeaderLocal: "Local",
|
||||||
DivergenceSectionHeaderRemote: "Remote",
|
DivergenceSectionHeaderRemote: "Remote",
|
||||||
ViewUpstreamResetOptions: "Reset checked-out branch onto {{.upstream}}",
|
ViewUpstreamResetOptions: "Reset checked-out branch onto {{.upstream}}",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user