1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-07-30 03:23:08 +03:00

Basic support for adding a worktree

This commit is contained in:
Joel Baranick
2022-09-02 21:38:16 -07:00
committed by Jesse Duffield
parent 35e6e6347a
commit 1ce9a87544
4 changed files with 46 additions and 41 deletions

View File

@ -1,5 +1,7 @@
package helpers
import "github.com/jesseduffield/lazygit/pkg/gui/types"
type IWorktreeHelper interface {
GetMainWorktreeName() string
GetCurrentWorktreeName() string
@ -25,6 +27,29 @@ func (self *WorktreeHelper) GetMainWorktreeName() string {
return ""
}
func (self *WorktreeHelper) NewWorktree() error {
return self.c.Prompt(types.PromptOpts{
Title: self.c.Tr.NewWorktreePath,
HandleConfirm: func(response string) error {
self.c.LogAction(self.c.Tr.Actions.CreateWorktree)
if err := self.c.Git().Worktree.New(sanitizedBranchName(response)); err != nil {
return err
}
//if self.c.CurrentContext() != self.contexts.Worktrees {
// if err := self.c.PushContext(self.contexts.Worktrees); err != nil {
// return err
// }
//}
// self.contexts.LocalCommits.SetSelectedLineIdx(0)
// self.contexts.Branches.SetSelectedLineIdx(0)
return self.c.Refresh(types.RefreshOptions{Mode: types.ASYNC})
},
})
}
//func (self *WorktreeHelper) GetCurrentWorktreeName() string {
// for _, worktree := range self.c.Model().Worktrees {
// if worktree.Current() {