mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-06-15 00:15:32 +02:00
Merge pull request #1869 from mark2185/feature/unset-upstream
This commit is contained in:
@ -59,6 +59,7 @@ _This file is auto-generated. To update, make the changes in the pkg/i18n direct
|
|||||||
<kbd>f</kbd>: fast-forward this branch from its upstream
|
<kbd>f</kbd>: fast-forward this branch from its upstream
|
||||||
<kbd>g</kbd>: view reset options
|
<kbd>g</kbd>: view reset options
|
||||||
<kbd>R</kbd>: rename branch
|
<kbd>R</kbd>: rename branch
|
||||||
|
<kbd>u</kbd>: set/unset upstream
|
||||||
<kbd>enter</kbd>: view commits
|
<kbd>enter</kbd>: view commits
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
|
@ -86,6 +86,7 @@ _This file is auto-generated. To update, make the changes in the pkg/i18n direct
|
|||||||
<kbd>f</kbd>: fast-forward deze branch vanaf zijn upstream
|
<kbd>f</kbd>: fast-forward deze branch vanaf zijn upstream
|
||||||
<kbd>g</kbd>: bekijk reset opties
|
<kbd>g</kbd>: bekijk reset opties
|
||||||
<kbd>R</kbd>: hernoem branch
|
<kbd>R</kbd>: hernoem branch
|
||||||
|
<kbd>u</kbd>: set/unset upstream
|
||||||
<kbd>enter</kbd>: bekijk commits
|
<kbd>enter</kbd>: bekijk commits
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
|
@ -59,6 +59,7 @@ _This file is auto-generated. To update, make the changes in the pkg/i18n direct
|
|||||||
<kbd>f</kbd>: fast-forward this branch from its upstream
|
<kbd>f</kbd>: fast-forward this branch from its upstream
|
||||||
<kbd>g</kbd>: wyświetl opcje resetu
|
<kbd>g</kbd>: wyświetl opcje resetu
|
||||||
<kbd>R</kbd>: rename branch
|
<kbd>R</kbd>: rename branch
|
||||||
|
<kbd>u</kbd>: set/unset upstream
|
||||||
<kbd>enter</kbd>: view commits
|
<kbd>enter</kbd>: view commits
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
|
@ -74,6 +74,7 @@ _This file is auto-generated. To update, make the changes in the pkg/i18n direct
|
|||||||
<kbd>f</kbd>: 从上游快进此分支
|
<kbd>f</kbd>: 从上游快进此分支
|
||||||
<kbd>g</kbd>: 查看重置选项
|
<kbd>g</kbd>: 查看重置选项
|
||||||
<kbd>R</kbd>: 重命名分支
|
<kbd>R</kbd>: 重命名分支
|
||||||
|
<kbd>u</kbd>: set/unset upstream
|
||||||
<kbd>enter</kbd>: 查看提交
|
<kbd>enter</kbd>: 查看提交
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
|
@ -109,6 +109,10 @@ func (self *BranchCommands) SetUpstream(remoteName string, remoteBranchName stri
|
|||||||
return self.cmd.New(fmt.Sprintf("git branch --set-upstream-to=%s/%s %s", self.cmd.Quote(remoteName), self.cmd.Quote(remoteBranchName), self.cmd.Quote(branchName))).Run()
|
return self.cmd.New(fmt.Sprintf("git branch --set-upstream-to=%s/%s %s", self.cmd.Quote(remoteName), self.cmd.Quote(remoteBranchName), self.cmd.Quote(branchName))).Run()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (self *BranchCommands) UnsetUpstream(branchName string) error {
|
||||||
|
return self.cmd.New(fmt.Sprintf("git branch --unset-upstream %s", self.cmd.Quote(branchName))).Run()
|
||||||
|
}
|
||||||
|
|
||||||
func (self *BranchCommands) GetCurrentBranchUpstreamDifferenceCount() (string, string) {
|
func (self *BranchCommands) GetCurrentBranchUpstreamDifferenceCount() (string, string) {
|
||||||
return self.GetCommitDifferences("HEAD", "HEAD@{u}")
|
return self.GetCommitDifferences("HEAD", "HEAD@{u}")
|
||||||
}
|
}
|
||||||
|
@ -23,12 +23,13 @@ func (gui *Gui) resetControllers() {
|
|||||||
)
|
)
|
||||||
|
|
||||||
rebaseHelper := helpers.NewMergeAndRebaseHelper(helperCommon, gui.State.Contexts, gui.git, gui.takeOverMergeConflictScrolling, refsHelper)
|
rebaseHelper := helpers.NewMergeAndRebaseHelper(helperCommon, gui.State.Contexts, gui.git, gui.takeOverMergeConflictScrolling, refsHelper)
|
||||||
|
suggestionsHelper := helpers.NewSuggestionsHelper(helperCommon, model, gui.refreshSuggestions)
|
||||||
gui.helpers = &helpers.Helpers{
|
gui.helpers = &helpers.Helpers{
|
||||||
Refs: refsHelper,
|
Refs: refsHelper,
|
||||||
Host: helpers.NewHostHelper(helperCommon, gui.git),
|
Host: helpers.NewHostHelper(helperCommon, gui.git),
|
||||||
PatchBuilding: helpers.NewPatchBuildingHelper(helperCommon, gui.git),
|
PatchBuilding: helpers.NewPatchBuildingHelper(helperCommon, gui.git),
|
||||||
Bisect: helpers.NewBisectHelper(helperCommon, gui.git),
|
Bisect: helpers.NewBisectHelper(helperCommon, gui.git),
|
||||||
Suggestions: helpers.NewSuggestionsHelper(helperCommon, model, gui.refreshSuggestions),
|
Suggestions: suggestionsHelper,
|
||||||
Files: helpers.NewFilesHelper(helperCommon, gui.git, osCommand),
|
Files: helpers.NewFilesHelper(helperCommon, gui.git, osCommand),
|
||||||
WorkingTree: helpers.NewWorkingTreeHelper(helperCommon, gui.git, model),
|
WorkingTree: helpers.NewWorkingTreeHelper(helperCommon, gui.git, model),
|
||||||
Tags: helpers.NewTagsHelper(helperCommon, gui.git),
|
Tags: helpers.NewTagsHelper(helperCommon, gui.git),
|
||||||
@ -41,6 +42,7 @@ func (gui *Gui) resetControllers() {
|
|||||||
func() *cherrypicking.CherryPicking { return gui.State.Modes.CherryPicking },
|
func() *cherrypicking.CherryPicking { return gui.State.Modes.CherryPicking },
|
||||||
rebaseHelper,
|
rebaseHelper,
|
||||||
),
|
),
|
||||||
|
Upstream: helpers.NewUpstreamHelper(helperCommon, model, suggestionsHelper.GetRemoteBranchesSuggestionsFunc),
|
||||||
}
|
}
|
||||||
|
|
||||||
gui.CustomCommandsClient = custom_commands.NewClient(
|
gui.CustomCommandsClient = custom_commands.NewClient(
|
||||||
@ -64,7 +66,6 @@ func (gui *Gui) resetControllers() {
|
|||||||
|
|
||||||
syncController := controllers.NewSyncController(
|
syncController := controllers.NewSyncController(
|
||||||
common,
|
common,
|
||||||
gui.getSuggestedRemote,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
submodulesController := controllers.NewSubmodulesController(
|
submodulesController := controllers.NewSubmodulesController(
|
||||||
|
@ -97,9 +97,68 @@ func (self *BranchesController) GetKeybindings(opts types.KeybindingsOpts) []*ty
|
|||||||
Handler: self.checkSelectedAndReal(self.rename),
|
Handler: self.checkSelectedAndReal(self.rename),
|
||||||
Description: self.c.Tr.LcRenameBranch,
|
Description: self.c.Tr.LcRenameBranch,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
Key: opts.GetKey(opts.Config.Branches.SetUpstream),
|
||||||
|
Handler: self.checkSelected(self.setUpstream),
|
||||||
|
Description: self.c.Tr.LcSetUnsetUpstream,
|
||||||
|
OpensMenu: true,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (self *BranchesController) setUpstream(selectedBranch *models.Branch) error {
|
||||||
|
return self.c.Menu(types.CreateMenuOptions{
|
||||||
|
Title: self.c.Tr.Actions.SetUnsetUpstream,
|
||||||
|
Items: []*types.MenuItem{
|
||||||
|
{
|
||||||
|
DisplayStrings: []string{self.c.Tr.LcUnsetUpstream},
|
||||||
|
OnPress: func() error {
|
||||||
|
if err := self.git.Branch.UnsetUpstream(selectedBranch.Name); err != nil {
|
||||||
|
return self.c.Error(err)
|
||||||
|
}
|
||||||
|
if err := self.c.Refresh(types.RefreshOptions{
|
||||||
|
Mode: types.SYNC,
|
||||||
|
Scope: []types.RefreshableView{
|
||||||
|
types.BRANCHES,
|
||||||
|
types.COMMITS,
|
||||||
|
},
|
||||||
|
}); err != nil {
|
||||||
|
return self.c.Error(err)
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
},
|
||||||
|
Key: 'u',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
DisplayStrings: []string{self.c.Tr.LcSetUpstream},
|
||||||
|
OnPress: func() error {
|
||||||
|
return self.helpers.Upstream.PromptForUpstreamWithoutInitialContent(selectedBranch, func(upstream string) error {
|
||||||
|
upstreamRemote, upstreamBranch, err := self.helpers.Upstream.ParseUpstream(upstream)
|
||||||
|
if err != nil {
|
||||||
|
return self.c.Error(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := self.git.Branch.SetUpstream(upstreamRemote, upstreamBranch, selectedBranch.Name); err != nil {
|
||||||
|
return self.c.Error(err)
|
||||||
|
}
|
||||||
|
if err := self.c.Refresh(types.RefreshOptions{
|
||||||
|
Mode: types.SYNC,
|
||||||
|
Scope: []types.RefreshableView{
|
||||||
|
types.BRANCHES,
|
||||||
|
types.COMMITS,
|
||||||
|
},
|
||||||
|
}); err != nil {
|
||||||
|
return self.c.Error(err)
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
})
|
||||||
|
},
|
||||||
|
Key: 's',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
func (self *BranchesController) Context() types.Context {
|
func (self *BranchesController) Context() types.Context {
|
||||||
return self.context()
|
return self.context()
|
||||||
}
|
}
|
||||||
|
@ -12,6 +12,7 @@ type Helpers struct {
|
|||||||
Host *HostHelper
|
Host *HostHelper
|
||||||
PatchBuilding *PatchBuildingHelper
|
PatchBuilding *PatchBuildingHelper
|
||||||
GPG *GpgHelper
|
GPG *GpgHelper
|
||||||
|
Upstream *UpstreamHelper
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewStubHelpers() *Helpers {
|
func NewStubHelpers() *Helpers {
|
||||||
@ -27,5 +28,6 @@ func NewStubHelpers() *Helpers {
|
|||||||
Host: &HostHelper{},
|
Host: &HostHelper{},
|
||||||
PatchBuilding: &PatchBuildingHelper{},
|
PatchBuilding: &PatchBuildingHelper{},
|
||||||
GPG: &GpgHelper{},
|
GPG: &GpgHelper{},
|
||||||
|
Upstream: &UpstreamHelper{},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
88
pkg/gui/controllers/helpers/upstream_helper.go
Normal file
88
pkg/gui/controllers/helpers/upstream_helper.go
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
package helpers
|
||||||
|
|
||||||
|
import (
|
||||||
|
"errors"
|
||||||
|
"strings"
|
||||||
|
|
||||||
|
"github.com/jesseduffield/lazygit/pkg/commands/models"
|
||||||
|
"github.com/jesseduffield/lazygit/pkg/gui/types"
|
||||||
|
)
|
||||||
|
|
||||||
|
type UpstreamHelper struct {
|
||||||
|
c *types.HelperCommon
|
||||||
|
model *types.Model
|
||||||
|
|
||||||
|
getRemoteBranchesSuggestionsFunc func(string) func(string) []*types.Suggestion
|
||||||
|
}
|
||||||
|
|
||||||
|
type IUpstreamHelper interface {
|
||||||
|
ParseUpstream(string) (string, string, error)
|
||||||
|
PromptForUpstreamWithInitialContent(*models.Branch, func(string) error) error
|
||||||
|
PromptForUpstreamWithoutInitialContent(*models.Branch, func(string) error) error
|
||||||
|
GetSuggestedRemote() string
|
||||||
|
}
|
||||||
|
|
||||||
|
var _ IUpstreamHelper = &UpstreamHelper{}
|
||||||
|
|
||||||
|
func NewUpstreamHelper(
|
||||||
|
c *types.HelperCommon,
|
||||||
|
model *types.Model,
|
||||||
|
getRemoteBranchesSuggestionsFunc func(string) func(string) []*types.Suggestion,
|
||||||
|
) *UpstreamHelper {
|
||||||
|
return &UpstreamHelper{
|
||||||
|
c: c,
|
||||||
|
model: model,
|
||||||
|
getRemoteBranchesSuggestionsFunc: getRemoteBranchesSuggestionsFunc,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (self *UpstreamHelper) ParseUpstream(upstream string) (string, string, error) {
|
||||||
|
var upstreamBranch, upstreamRemote string
|
||||||
|
split := strings.Split(upstream, " ")
|
||||||
|
if len(split) != 2 {
|
||||||
|
return "", "", errors.New(self.c.Tr.InvalidUpstream)
|
||||||
|
}
|
||||||
|
|
||||||
|
upstreamRemote = split[0]
|
||||||
|
upstreamBranch = split[1]
|
||||||
|
|
||||||
|
return upstreamRemote, upstreamBranch, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (self *UpstreamHelper) promptForUpstream(currentBranch *models.Branch, initialContent string, onConfirm func(string) error) error {
|
||||||
|
return self.c.Prompt(types.PromptOpts{
|
||||||
|
Title: self.c.Tr.EnterUpstream,
|
||||||
|
InitialContent: initialContent,
|
||||||
|
FindSuggestionsFunc: self.getRemoteBranchesSuggestionsFunc(" "),
|
||||||
|
HandleConfirm: onConfirm,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
func (self *UpstreamHelper) PromptForUpstreamWithInitialContent(currentBranch *models.Branch, onConfirm func(string) error) error {
|
||||||
|
suggestedRemote := self.GetSuggestedRemote()
|
||||||
|
initialContent := suggestedRemote + " " + currentBranch.Name
|
||||||
|
|
||||||
|
return self.promptForUpstream(currentBranch, initialContent, onConfirm)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (self *UpstreamHelper) PromptForUpstreamWithoutInitialContent(currentBranch *models.Branch, onConfirm func(string) error) error {
|
||||||
|
return self.promptForUpstream(currentBranch, "", onConfirm)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (self *UpstreamHelper) GetSuggestedRemote() string {
|
||||||
|
return getSuggestedRemote(self.model.Remotes)
|
||||||
|
}
|
||||||
|
|
||||||
|
func getSuggestedRemote(remotes []*models.Remote) string {
|
||||||
|
if len(remotes) == 0 {
|
||||||
|
return "origin"
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, remote := range remotes {
|
||||||
|
if remote.Name == "origin" {
|
||||||
|
return remote.Name
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return remotes[0].Name
|
||||||
|
}
|
@ -1,4 +1,4 @@
|
|||||||
package gui
|
package helpers
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"testing"
|
"testing"
|
@ -57,7 +57,7 @@ func (self *RemoteBranchesController) GetKeybindings(opts types.KeybindingsOpts)
|
|||||||
{
|
{
|
||||||
Key: opts.GetKey(opts.Config.Branches.SetUpstream),
|
Key: opts.GetKey(opts.Config.Branches.SetUpstream),
|
||||||
Handler: self.checkSelected(self.setAsUpstream),
|
Handler: self.checkSelected(self.setAsUpstream),
|
||||||
Description: self.c.Tr.LcSetUpstream,
|
Description: self.c.Tr.LcSetAsUpstream,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Key: opts.GetKey(opts.Config.Universal.Return),
|
Key: opts.GetKey(opts.Config.Universal.Return),
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package controllers
|
package controllers
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"errors"
|
|
||||||
"fmt"
|
"fmt"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
@ -13,21 +12,16 @@ import (
|
|||||||
type SyncController struct {
|
type SyncController struct {
|
||||||
baseController
|
baseController
|
||||||
*controllerCommon
|
*controllerCommon
|
||||||
|
|
||||||
getSuggestedRemote func() string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var _ types.IController = &SyncController{}
|
var _ types.IController = &SyncController{}
|
||||||
|
|
||||||
func NewSyncController(
|
func NewSyncController(
|
||||||
common *controllerCommon,
|
common *controllerCommon,
|
||||||
getSuggestedRemote func() string,
|
|
||||||
) *SyncController {
|
) *SyncController {
|
||||||
return &SyncController{
|
return &SyncController{
|
||||||
baseController: baseController{},
|
baseController: baseController{},
|
||||||
controllerCommon: common,
|
controllerCommon: common,
|
||||||
|
|
||||||
getSuggestedRemote: getSuggestedRemote,
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -85,8 +79,8 @@ func (self *SyncController) push(currentBranch *models.Branch) error {
|
|||||||
if self.git.Config.GetPushToCurrent() {
|
if self.git.Config.GetPushToCurrent() {
|
||||||
return self.pushAux(pushOpts{setUpstream: true})
|
return self.pushAux(pushOpts{setUpstream: true})
|
||||||
} else {
|
} else {
|
||||||
return self.promptForUpstream(currentBranch, func(upstream string) error {
|
return self.helpers.Upstream.PromptForUpstreamWithInitialContent(currentBranch, func(upstream string) error {
|
||||||
upstreamRemote, upstreamBranch, err := self.parseUpstream(upstream)
|
upstreamRemote, upstreamBranch, err := self.helpers.Upstream.ParseUpstream(upstream)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return self.c.Error(err)
|
return self.c.Error(err)
|
||||||
}
|
}
|
||||||
@ -106,7 +100,7 @@ func (self *SyncController) pull(currentBranch *models.Branch) error {
|
|||||||
|
|
||||||
// if we have no upstream branch we need to set that first
|
// if we have no upstream branch we need to set that first
|
||||||
if !currentBranch.IsTrackingRemote() {
|
if !currentBranch.IsTrackingRemote() {
|
||||||
return self.promptForUpstream(currentBranch, func(upstream string) error {
|
return self.helpers.Upstream.PromptForUpstreamWithInitialContent(currentBranch, func(upstream string) error {
|
||||||
if err := self.setCurrentBranchUpstream(upstream); err != nil {
|
if err := self.setCurrentBranchUpstream(upstream); err != nil {
|
||||||
return self.c.Error(err)
|
return self.c.Error(err)
|
||||||
}
|
}
|
||||||
@ -119,7 +113,7 @@ func (self *SyncController) pull(currentBranch *models.Branch) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (self *SyncController) setCurrentBranchUpstream(upstream string) error {
|
func (self *SyncController) setCurrentBranchUpstream(upstream string) error {
|
||||||
upstreamRemote, upstreamBranch, err := self.parseUpstream(upstream)
|
upstreamRemote, upstreamBranch, err := self.helpers.Upstream.ParseUpstream(upstream)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -136,30 +130,6 @@ func (self *SyncController) setCurrentBranchUpstream(upstream string) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (self *SyncController) parseUpstream(upstream string) (string, string, error) {
|
|
||||||
var upstreamBranch, upstreamRemote string
|
|
||||||
split := strings.Split(upstream, " ")
|
|
||||||
if len(split) != 2 {
|
|
||||||
return "", "", errors.New(self.c.Tr.InvalidUpstream)
|
|
||||||
}
|
|
||||||
|
|
||||||
upstreamRemote = split[0]
|
|
||||||
upstreamBranch = split[1]
|
|
||||||
|
|
||||||
return upstreamRemote, upstreamBranch, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (self *SyncController) promptForUpstream(currentBranch *models.Branch, onConfirm func(string) error) error {
|
|
||||||
suggestedRemote := self.getSuggestedRemote()
|
|
||||||
|
|
||||||
return self.c.Prompt(types.PromptOpts{
|
|
||||||
Title: self.c.Tr.EnterUpstream,
|
|
||||||
InitialContent: suggestedRemote + " " + currentBranch.Name,
|
|
||||||
FindSuggestionsFunc: self.helpers.Suggestions.GetRemoteBranchesSuggestionsFunc(" "),
|
|
||||||
HandleConfirm: onConfirm,
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
type PullFilesOptions struct {
|
type PullFilesOptions struct {
|
||||||
UpstreamRemote string
|
UpstreamRemote string
|
||||||
UpstreamBranch string
|
UpstreamBranch string
|
||||||
|
@ -1,25 +0,0 @@
|
|||||||
package gui
|
|
||||||
|
|
||||||
import "github.com/jesseduffield/lazygit/pkg/commands/models"
|
|
||||||
|
|
||||||
// this file is to put things where it's not obvious where they belong while this refactor takes place
|
|
||||||
|
|
||||||
func (gui *Gui) getSuggestedRemote() string {
|
|
||||||
remotes := gui.State.Model.Remotes
|
|
||||||
|
|
||||||
return getSuggestedRemote(remotes)
|
|
||||||
}
|
|
||||||
|
|
||||||
func getSuggestedRemote(remotes []*models.Remote) string {
|
|
||||||
if len(remotes) == 0 {
|
|
||||||
return "origin"
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, remote := range remotes {
|
|
||||||
if remote.Name == "origin" {
|
|
||||||
return remote.Name
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return remotes[0].Name
|
|
||||||
}
|
|
@ -311,6 +311,7 @@ func chineseTranslationSet() TranslationSet {
|
|||||||
DeleteRemoteBranch: "删除远程分支",
|
DeleteRemoteBranch: "删除远程分支",
|
||||||
DeleteRemoteBranchMessage: "您确定要删除远程分支吗?",
|
DeleteRemoteBranchMessage: "您确定要删除远程分支吗?",
|
||||||
LcSetUpstream: "设置为检出分支的上游",
|
LcSetUpstream: "设置为检出分支的上游",
|
||||||
|
LcSetAsUpstream: "设置为检出分支的上游",
|
||||||
SetUpstreamTitle: "设置上游分支",
|
SetUpstreamTitle: "设置上游分支",
|
||||||
SetUpstreamMessage: "您确定要将 {{.checkedOut}} 的上游分支设置为 {{.selected}} 吗?",
|
SetUpstreamMessage: "您确定要将 {{.checkedOut}} 的上游分支设置为 {{.selected}} 吗?",
|
||||||
LcEditRemote: "编辑远程仓库",
|
LcEditRemote: "编辑远程仓库",
|
||||||
|
@ -270,6 +270,7 @@ func dutchTranslationSet() TranslationSet {
|
|||||||
DeleteRemoteBranch: "Verwijder Remote Branch",
|
DeleteRemoteBranch: "Verwijder Remote Branch",
|
||||||
DeleteRemoteBranchMessage: "Weet je zeker dat je deze remote branch wilt verwijderen",
|
DeleteRemoteBranchMessage: "Weet je zeker dat je deze remote branch wilt verwijderen",
|
||||||
LcSetUpstream: "stel in als upstream van uitgecheckte branch",
|
LcSetUpstream: "stel in als upstream van uitgecheckte branch",
|
||||||
|
LcSetAsUpstream: "stel in als upstream van uitgecheckte branch",
|
||||||
SetUpstreamTitle: "Stel in als upstream branch",
|
SetUpstreamTitle: "Stel in als upstream branch",
|
||||||
SetUpstreamMessage: "Weet je zeker dat je de upstream branch van '{{.checkedOut}}' naar '{{.selected}}' wilt zetten",
|
SetUpstreamMessage: "Weet je zeker dat je de upstream branch van '{{.checkedOut}}' naar '{{.selected}}' wilt zetten",
|
||||||
LcEditRemote: "wijzig remote",
|
LcEditRemote: "wijzig remote",
|
||||||
|
@ -305,7 +305,9 @@ type TranslationSet struct {
|
|||||||
LcRemoveRemotePrompt string
|
LcRemoveRemotePrompt string
|
||||||
DeleteRemoteBranch string
|
DeleteRemoteBranch string
|
||||||
DeleteRemoteBranchMessage string
|
DeleteRemoteBranchMessage string
|
||||||
|
LcSetAsUpstream string
|
||||||
LcSetUpstream string
|
LcSetUpstream string
|
||||||
|
LcUnsetUpstream string
|
||||||
SetUpstreamTitle string
|
SetUpstreamTitle string
|
||||||
SetUpstreamMessage string
|
SetUpstreamMessage string
|
||||||
LcEditRemote string
|
LcEditRemote string
|
||||||
@ -338,6 +340,7 @@ type TranslationSet struct {
|
|||||||
Panel string
|
Panel string
|
||||||
Keybindings string
|
Keybindings string
|
||||||
LcRenameBranch string
|
LcRenameBranch string
|
||||||
|
LcSetUnsetUpstream string
|
||||||
NewGitFlowBranchPrompt string
|
NewGitFlowBranchPrompt string
|
||||||
RenameBranchWarning string
|
RenameBranchWarning string
|
||||||
LcOpenMenu string
|
LcOpenMenu string
|
||||||
@ -507,6 +510,7 @@ type Actions struct {
|
|||||||
Merge string
|
Merge string
|
||||||
RebaseBranch string
|
RebaseBranch string
|
||||||
RenameBranch string
|
RenameBranch string
|
||||||
|
SetUnsetUpstream string
|
||||||
CreateBranch string
|
CreateBranch string
|
||||||
FastForwardBranch string
|
FastForwardBranch string
|
||||||
CherryPick string
|
CherryPick string
|
||||||
@ -907,7 +911,9 @@ func EnglishTranslationSet() TranslationSet {
|
|||||||
LcRemoveRemotePrompt: "Are you sure you want to remove remote",
|
LcRemoveRemotePrompt: "Are you sure you want to remove remote",
|
||||||
DeleteRemoteBranch: "Delete Remote Branch",
|
DeleteRemoteBranch: "Delete Remote Branch",
|
||||||
DeleteRemoteBranchMessage: "Are you sure you want to delete remote branch",
|
DeleteRemoteBranchMessage: "Are you sure you want to delete remote branch",
|
||||||
LcSetUpstream: "set as upstream of checked-out branch",
|
LcSetAsUpstream: "set as upstream of checked-out branch",
|
||||||
|
LcSetUpstream: "set upstream of selected branch",
|
||||||
|
LcUnsetUpstream: "unset upstream of selected branch",
|
||||||
SetUpstreamTitle: "Set upstream branch",
|
SetUpstreamTitle: "Set upstream branch",
|
||||||
SetUpstreamMessage: "Are you sure you want to set the upstream branch of '{{.checkedOut}}' to '{{.selected}}'",
|
SetUpstreamMessage: "Are you sure you want to set the upstream branch of '{{.checkedOut}}' to '{{.selected}}'",
|
||||||
LcEditRemote: "edit remote",
|
LcEditRemote: "edit remote",
|
||||||
@ -940,6 +946,7 @@ func EnglishTranslationSet() TranslationSet {
|
|||||||
Panel: "Panel",
|
Panel: "Panel",
|
||||||
Keybindings: "Keybindings",
|
Keybindings: "Keybindings",
|
||||||
LcRenameBranch: "rename branch",
|
LcRenameBranch: "rename branch",
|
||||||
|
LcSetUnsetUpstream: "set/unset upstream",
|
||||||
NewBranchNamePrompt: "Enter new branch name for branch",
|
NewBranchNamePrompt: "Enter new branch name for branch",
|
||||||
RenameBranchWarning: "This branch is tracking a remote. This action will only rename the local branch name, not the name of the remote branch. Continue?",
|
RenameBranchWarning: "This branch is tracking a remote. This action will only rename the local branch name, not the name of the remote branch. Continue?",
|
||||||
LcOpenMenu: "open menu",
|
LcOpenMenu: "open menu",
|
||||||
@ -1091,6 +1098,7 @@ func EnglishTranslationSet() TranslationSet {
|
|||||||
Merge: "Merge",
|
Merge: "Merge",
|
||||||
RebaseBranch: "Rebase branch",
|
RebaseBranch: "Rebase branch",
|
||||||
RenameBranch: "Rename branch",
|
RenameBranch: "Rename branch",
|
||||||
|
SetUnsetUpstream: "Set/unset upstream",
|
||||||
CreateBranch: "Create branch",
|
CreateBranch: "Create branch",
|
||||||
CherryPick: "(Cherry-pick) Paste commits",
|
CherryPick: "(Cherry-pick) Paste commits",
|
||||||
CheckoutFile: "Checkout file",
|
CheckoutFile: "Checkout file",
|
||||||
|
@ -2,7 +2,5 @@
|
|||||||
repositoryformatversion = 0
|
repositoryformatversion = 0
|
||||||
filemode = true
|
filemode = true
|
||||||
bare = true
|
bare = true
|
||||||
ignorecase = true
|
|
||||||
precomposeunicode = true
|
|
||||||
[remote "origin"]
|
[remote "origin"]
|
||||||
url = /Users/jesseduffieldduffield/go/src/github.com/jesseduffield/lazygit/test/integration/setUpstream/actual/./repo
|
url = /home/mark/Downloads/gits/lazygit/test/integration/setUpstream/actual/./repo
|
||||||
|
@ -4,4 +4,3 @@
|
|||||||
# exclude patterns (uncomment them if you want to use them):
|
# exclude patterns (uncomment them if you want to use them):
|
||||||
# *.[oa]
|
# *.[oa]
|
||||||
# *~
|
# *~
|
||||||
.DS_Store
|
|
||||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,3 @@
|
|||||||
|
x��A
|
||||||
|
�0@Q�9�����i
|
||||||
|
"BW=F�L��!R"����~�����r��*�J��dF��Y)J��Ձ���r�.����0�p���~��6��fw �e������t��;��uSr?2X,�
|
Binary file not shown.
@ -1,2 +1,2 @@
|
|||||||
# pack-refs with: peeled fully-peeled sorted
|
# pack-refs with: peeled fully-peeled sorted
|
||||||
30ef3df33d31f0b98298881be4dbe69c54758ba2 refs/heads/master
|
ce3220d7b3cbc57811e3e6169349c611f62a7c42 refs/heads/master
|
||||||
|
@ -1 +1 @@
|
|||||||
30ef3df33d31f0b98298881be4dbe69c54758ba2 branch 'master' of ../origin
|
ce3220d7b3cbc57811e3e6169349c611f62a7c42 not-for-merge branch 'master' of ../origin
|
||||||
|
@ -1 +1 @@
|
|||||||
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2
|
ce3220d7b3cbc57811e3e6169349c611f62a7c42
|
||||||
|
@ -3,8 +3,6 @@
|
|||||||
filemode = true
|
filemode = true
|
||||||
bare = false
|
bare = false
|
||||||
logallrefupdates = true
|
logallrefupdates = true
|
||||||
ignorecase = true
|
|
||||||
precomposeunicode = true
|
|
||||||
[user]
|
[user]
|
||||||
email = CI@example.com
|
email = CI@example.com
|
||||||
name = CI
|
name = CI
|
||||||
|
Binary file not shown.
@ -4,4 +4,3 @@
|
|||||||
# exclude patterns (uncomment them if you want to use them):
|
# exclude patterns (uncomment them if you want to use them):
|
||||||
# *.[oa]
|
# *.[oa]
|
||||||
# *~
|
# *~
|
||||||
.DS_Store
|
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
0000000000000000000000000000000000000000 6305259d1908bee46b3b686702ed55b6f12e9ba2 CI <CI@example.com> 1648346253 +1100 commit (initial): myfile1
|
0000000000000000000000000000000000000000 9c663d29d26a71dd67e3bf7b1f2ea73f4939d9e0 CI <CI@example.com> 1650269554 +0200 commit (initial): myfile1
|
||||||
6305259d1908bee46b3b686702ed55b6f12e9ba2 a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 CI <CI@example.com> 1648346253 +1100 commit: myfile2
|
9c663d29d26a71dd67e3bf7b1f2ea73f4939d9e0 6d51185514ab4f80b42f17013295c261f92a66f0 CI <CI@example.com> 1650269554 +0200 commit: myfile2
|
||||||
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 c6ffcbed8902934d462722ff6ef471813b9a4df5 CI <CI@example.com> 1648346253 +1100 commit: myfile3
|
6d51185514ab4f80b42f17013295c261f92a66f0 2758cffdc0d931ff3a3d6c58b75f91ec42981dcf CI <CI@example.com> 1650269554 +0200 commit: myfile3
|
||||||
c6ffcbed8902934d462722ff6ef471813b9a4df5 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346253 +1100 commit: myfile4
|
2758cffdc0d931ff3a3d6c58b75f91ec42981dcf ce3220d7b3cbc57811e3e6169349c611f62a7c42 CI <CI@example.com> 1650269554 +0200 commit: myfile4
|
||||||
30ef3df33d31f0b98298881be4dbe69c54758ba2 a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 CI <CI@example.com> 1648346253 +1100 reset: moving to HEAD~2
|
ce3220d7b3cbc57811e3e6169349c611f62a7c42 6d51185514ab4f80b42f17013295c261f92a66f0 CI <CI@example.com> 1650269554 +0200 reset: moving to HEAD~2
|
||||||
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346262 +1100 rebase -i (start): checkout 30ef3df33d31f0b98298881be4dbe69c54758ba2
|
|
||||||
30ef3df33d31f0b98298881be4dbe69c54758ba2 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346262 +1100 rebase -i (finish): returning to refs/heads/master
|
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
0000000000000000000000000000000000000000 6305259d1908bee46b3b686702ed55b6f12e9ba2 CI <CI@example.com> 1648346253 +1100 commit (initial): myfile1
|
0000000000000000000000000000000000000000 9c663d29d26a71dd67e3bf7b1f2ea73f4939d9e0 CI <CI@example.com> 1650269554 +0200 commit (initial): myfile1
|
||||||
6305259d1908bee46b3b686702ed55b6f12e9ba2 a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 CI <CI@example.com> 1648346253 +1100 commit: myfile2
|
9c663d29d26a71dd67e3bf7b1f2ea73f4939d9e0 6d51185514ab4f80b42f17013295c261f92a66f0 CI <CI@example.com> 1650269554 +0200 commit: myfile2
|
||||||
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 c6ffcbed8902934d462722ff6ef471813b9a4df5 CI <CI@example.com> 1648346253 +1100 commit: myfile3
|
6d51185514ab4f80b42f17013295c261f92a66f0 2758cffdc0d931ff3a3d6c58b75f91ec42981dcf CI <CI@example.com> 1650269554 +0200 commit: myfile3
|
||||||
c6ffcbed8902934d462722ff6ef471813b9a4df5 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346253 +1100 commit: myfile4
|
2758cffdc0d931ff3a3d6c58b75f91ec42981dcf ce3220d7b3cbc57811e3e6169349c611f62a7c42 CI <CI@example.com> 1650269554 +0200 commit: myfile4
|
||||||
30ef3df33d31f0b98298881be4dbe69c54758ba2 a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 CI <CI@example.com> 1648346253 +1100 reset: moving to HEAD~2
|
ce3220d7b3cbc57811e3e6169349c611f62a7c42 6d51185514ab4f80b42f17013295c261f92a66f0 CI <CI@example.com> 1650269554 +0200 reset: moving to HEAD~2
|
||||||
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346262 +1100 rebase -i (finish): refs/heads/master onto 30ef3df33d31f0b98298881be4dbe69c54758ba2
|
|
||||||
|
@ -1 +1 @@
|
|||||||
0000000000000000000000000000000000000000 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346260 +1100 fetch origin: storing head
|
0000000000000000000000000000000000000000 ce3220d7b3cbc57811e3e6169349c611f62a7c42 CI <CI@example.com> 1650269559 +0200 fetch origin: storing head
|
||||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,3 @@
|
|||||||
|
x��A
|
||||||
|
�0@Q�9�����i
|
||||||
|
"BW=F�L��!R"����~�����r��*�J��dF��Y)J��Ձ���r�.����0�p���~��6��fw �e������t��;��uSr?2X,�
|
Binary file not shown.
@ -1 +1 @@
|
|||||||
30ef3df33d31f0b98298881be4dbe69c54758ba2
|
6d51185514ab4f80b42f17013295c261f92a66f0
|
||||||
|
@ -1 +1 @@
|
|||||||
30ef3df33d31f0b98298881be4dbe69c54758ba2
|
ce3220d7b3cbc57811e3e6169349c611f62a7c42
|
||||||
|
@ -1 +1 @@
|
|||||||
{"KeyEvents":[{"Timestamp":808,"Mod":0,"Key":259,"Ch":0},{"Timestamp":1221,"Mod":0,"Key":256,"Ch":93},{"Timestamp":1598,"Mod":0,"Key":256,"Ch":110},{"Timestamp":2267,"Mod":0,"Key":256,"Ch":111},{"Timestamp":2399,"Mod":0,"Key":256,"Ch":114},{"Timestamp":2500,"Mod":0,"Key":256,"Ch":105},{"Timestamp":2573,"Mod":0,"Key":256,"Ch":103},{"Timestamp":2634,"Mod":0,"Key":256,"Ch":105},{"Timestamp":2710,"Mod":0,"Key":256,"Ch":110},{"Timestamp":3042,"Mod":0,"Key":13,"Ch":13},{"Timestamp":3671,"Mod":0,"Key":256,"Ch":46},{"Timestamp":4001,"Mod":0,"Key":256,"Ch":46},{"Timestamp":4215,"Mod":0,"Key":256,"Ch":47},{"Timestamp":4511,"Mod":0,"Key":256,"Ch":111},{"Timestamp":4896,"Mod":0,"Key":256,"Ch":114},{"Timestamp":5008,"Mod":0,"Key":256,"Ch":105},{"Timestamp":5133,"Mod":0,"Key":256,"Ch":103},{"Timestamp":5202,"Mod":0,"Key":256,"Ch":105},{"Timestamp":5255,"Mod":0,"Key":256,"Ch":110},{"Timestamp":5558,"Mod":0,"Key":13,"Ch":13},{"Timestamp":6247,"Mod":0,"Key":256,"Ch":102},{"Timestamp":7072,"Mod":0,"Key":256,"Ch":91},{"Timestamp":7716,"Mod":0,"Key":256,"Ch":112},{"Timestamp":8319,"Mod":0,"Key":13,"Ch":13},{"Timestamp":9159,"Mod":0,"Key":256,"Ch":113}],"ResizeEvents":[{"Timestamp":0,"Width":254,"Height":74}]}
|
{"KeyEvents":[{"Timestamp":558,"Mod":0,"Key":256,"Ch":108},{"Timestamp":992,"Mod":0,"Key":256,"Ch":93},{"Timestamp":1583,"Mod":0,"Key":256,"Ch":110},{"Timestamp":2109,"Mod":0,"Key":256,"Ch":111},{"Timestamp":2232,"Mod":0,"Key":256,"Ch":114},{"Timestamp":2278,"Mod":0,"Key":256,"Ch":105},{"Timestamp":2413,"Mod":0,"Key":256,"Ch":103},{"Timestamp":2478,"Mod":0,"Key":256,"Ch":105},{"Timestamp":2538,"Mod":0,"Key":256,"Ch":110},{"Timestamp":2831,"Mod":0,"Key":13,"Ch":13},{"Timestamp":3060,"Mod":0,"Key":256,"Ch":46},{"Timestamp":3234,"Mod":0,"Key":256,"Ch":46},{"Timestamp":3293,"Mod":0,"Key":256,"Ch":47},{"Timestamp":3454,"Mod":0,"Key":256,"Ch":111},{"Timestamp":3594,"Mod":0,"Key":256,"Ch":114},{"Timestamp":3632,"Mod":0,"Key":256,"Ch":105},{"Timestamp":3780,"Mod":0,"Key":256,"Ch":103},{"Timestamp":3831,"Mod":0,"Key":256,"Ch":105},{"Timestamp":3890,"Mod":0,"Key":256,"Ch":110},{"Timestamp":4150,"Mod":0,"Key":13,"Ch":13},{"Timestamp":4695,"Mod":0,"Key":256,"Ch":102},{"Timestamp":5433,"Mod":0,"Key":256,"Ch":91},{"Timestamp":6106,"Mod":0,"Key":256,"Ch":117},{"Timestamp":6884,"Mod":0,"Key":256,"Ch":115},{"Timestamp":7833,"Mod":0,"Key":9,"Ch":9},{"Timestamp":8301,"Mod":0,"Key":13,"Ch":13},{"Timestamp":9114,"Mod":0,"Key":256,"Ch":113}],"ResizeEvents":[{"Timestamp":0,"Width":239,"Height":55}]}
|
@ -0,0 +1 @@
|
|||||||
|
ref: refs/heads/master
|
@ -0,0 +1,8 @@
|
|||||||
|
[core]
|
||||||
|
repositoryformatversion = 0
|
||||||
|
filemode = true
|
||||||
|
bare = true
|
||||||
|
ignorecase = true
|
||||||
|
precomposeunicode = true
|
||||||
|
[remote "origin"]
|
||||||
|
url = /Users/jesseduffieldduffield/go/src/github.com/jesseduffield/lazygit/test/integration/setUpstream/actual/./repo
|
@ -0,0 +1 @@
|
|||||||
|
Unnamed repository; edit this file 'description' to name the repository.
|
@ -0,0 +1,7 @@
|
|||||||
|
# git ls-files --others --exclude-from=.git/info/exclude
|
||||||
|
# Lines that start with '#' are comments.
|
||||||
|
# For a project mostly in C, the following would be a good set of
|
||||||
|
# exclude patterns (uncomment them if you want to use them):
|
||||||
|
# *.[oa]
|
||||||
|
# *~
|
||||||
|
.DS_Store
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,2 @@
|
|||||||
|
# pack-refs with: peeled fully-peeled sorted
|
||||||
|
30ef3df33d31f0b98298881be4dbe69c54758ba2 refs/heads/master
|
@ -0,0 +1 @@
|
|||||||
|
myfile4
|
@ -0,0 +1 @@
|
|||||||
|
30ef3df33d31f0b98298881be4dbe69c54758ba2 branch 'master' of ../origin
|
@ -0,0 +1 @@
|
|||||||
|
ref: refs/heads/master
|
@ -0,0 +1 @@
|
|||||||
|
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2
|
@ -0,0 +1,16 @@
|
|||||||
|
[core]
|
||||||
|
repositoryformatversion = 0
|
||||||
|
filemode = true
|
||||||
|
bare = false
|
||||||
|
logallrefupdates = true
|
||||||
|
ignorecase = true
|
||||||
|
precomposeunicode = true
|
||||||
|
[user]
|
||||||
|
email = CI@example.com
|
||||||
|
name = CI
|
||||||
|
[remote "origin"]
|
||||||
|
url = ../origin
|
||||||
|
fetch = +refs/heads/*:refs/remotes/origin/*
|
||||||
|
[branch "master"]
|
||||||
|
remote = origin
|
||||||
|
merge = refs/heads/master
|
@ -0,0 +1 @@
|
|||||||
|
Unnamed repository; edit this file 'description' to name the repository.
|
Binary file not shown.
@ -0,0 +1,7 @@
|
|||||||
|
# git ls-files --others --exclude-from=.git/info/exclude
|
||||||
|
# Lines that start with '#' are comments.
|
||||||
|
# For a project mostly in C, the following would be a good set of
|
||||||
|
# exclude patterns (uncomment them if you want to use them):
|
||||||
|
# *.[oa]
|
||||||
|
# *~
|
||||||
|
.DS_Store
|
@ -0,0 +1,7 @@
|
|||||||
|
0000000000000000000000000000000000000000 6305259d1908bee46b3b686702ed55b6f12e9ba2 CI <CI@example.com> 1648346253 +1100 commit (initial): myfile1
|
||||||
|
6305259d1908bee46b3b686702ed55b6f12e9ba2 a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 CI <CI@example.com> 1648346253 +1100 commit: myfile2
|
||||||
|
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 c6ffcbed8902934d462722ff6ef471813b9a4df5 CI <CI@example.com> 1648346253 +1100 commit: myfile3
|
||||||
|
c6ffcbed8902934d462722ff6ef471813b9a4df5 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346253 +1100 commit: myfile4
|
||||||
|
30ef3df33d31f0b98298881be4dbe69c54758ba2 a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 CI <CI@example.com> 1648346253 +1100 reset: moving to HEAD~2
|
||||||
|
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346262 +1100 rebase -i (start): checkout 30ef3df33d31f0b98298881be4dbe69c54758ba2
|
||||||
|
30ef3df33d31f0b98298881be4dbe69c54758ba2 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346262 +1100 rebase -i (finish): returning to refs/heads/master
|
@ -0,0 +1,6 @@
|
|||||||
|
0000000000000000000000000000000000000000 6305259d1908bee46b3b686702ed55b6f12e9ba2 CI <CI@example.com> 1648346253 +1100 commit (initial): myfile1
|
||||||
|
6305259d1908bee46b3b686702ed55b6f12e9ba2 a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 CI <CI@example.com> 1648346253 +1100 commit: myfile2
|
||||||
|
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 c6ffcbed8902934d462722ff6ef471813b9a4df5 CI <CI@example.com> 1648346253 +1100 commit: myfile3
|
||||||
|
c6ffcbed8902934d462722ff6ef471813b9a4df5 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346253 +1100 commit: myfile4
|
||||||
|
30ef3df33d31f0b98298881be4dbe69c54758ba2 a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 CI <CI@example.com> 1648346253 +1100 reset: moving to HEAD~2
|
||||||
|
a26a9d22097eb77a8cf2fbb18512aa44c0c536a2 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346262 +1100 rebase -i (finish): refs/heads/master onto 30ef3df33d31f0b98298881be4dbe69c54758ba2
|
@ -0,0 +1 @@
|
|||||||
|
0000000000000000000000000000000000000000 30ef3df33d31f0b98298881be4dbe69c54758ba2 CI <CI@example.com> 1648346260 +1100 fetch origin: storing head
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1 @@
|
|||||||
|
30ef3df33d31f0b98298881be4dbe69c54758ba2
|
@ -0,0 +1 @@
|
|||||||
|
30ef3df33d31f0b98298881be4dbe69c54758ba2
|
@ -0,0 +1 @@
|
|||||||
|
test1
|
@ -0,0 +1 @@
|
|||||||
|
test2
|
1
test/integration/setUpstreamThroughPush/recording.json
Normal file
1
test/integration/setUpstreamThroughPush/recording.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"KeyEvents":[{"Timestamp":808,"Mod":0,"Key":259,"Ch":0},{"Timestamp":1221,"Mod":0,"Key":256,"Ch":93},{"Timestamp":1598,"Mod":0,"Key":256,"Ch":110},{"Timestamp":2267,"Mod":0,"Key":256,"Ch":111},{"Timestamp":2399,"Mod":0,"Key":256,"Ch":114},{"Timestamp":2500,"Mod":0,"Key":256,"Ch":105},{"Timestamp":2573,"Mod":0,"Key":256,"Ch":103},{"Timestamp":2634,"Mod":0,"Key":256,"Ch":105},{"Timestamp":2710,"Mod":0,"Key":256,"Ch":110},{"Timestamp":3042,"Mod":0,"Key":13,"Ch":13},{"Timestamp":3671,"Mod":0,"Key":256,"Ch":46},{"Timestamp":4001,"Mod":0,"Key":256,"Ch":46},{"Timestamp":4215,"Mod":0,"Key":256,"Ch":47},{"Timestamp":4511,"Mod":0,"Key":256,"Ch":111},{"Timestamp":4896,"Mod":0,"Key":256,"Ch":114},{"Timestamp":5008,"Mod":0,"Key":256,"Ch":105},{"Timestamp":5133,"Mod":0,"Key":256,"Ch":103},{"Timestamp":5202,"Mod":0,"Key":256,"Ch":105},{"Timestamp":5255,"Mod":0,"Key":256,"Ch":110},{"Timestamp":5558,"Mod":0,"Key":13,"Ch":13},{"Timestamp":6247,"Mod":0,"Key":256,"Ch":102},{"Timestamp":7072,"Mod":0,"Key":256,"Ch":91},{"Timestamp":7716,"Mod":0,"Key":256,"Ch":112},{"Timestamp":8319,"Mod":0,"Key":13,"Ch":13},{"Timestamp":9159,"Mod":0,"Key":256,"Ch":113}],"ResizeEvents":[{"Timestamp":0,"Width":254,"Height":74}]}
|
32
test/integration/setUpstreamThroughPush/setup.sh
Normal file
32
test/integration/setUpstreamThroughPush/setup.sh
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
cd $1
|
||||||
|
|
||||||
|
git init
|
||||||
|
|
||||||
|
git config user.email "CI@example.com"
|
||||||
|
git config user.name "CI"
|
||||||
|
|
||||||
|
echo test1 > myfile1
|
||||||
|
git add .
|
||||||
|
git commit -am "myfile1"
|
||||||
|
echo test2 > myfile2
|
||||||
|
git add .
|
||||||
|
git commit -am "myfile2"
|
||||||
|
echo test3 > myfile3
|
||||||
|
git add .
|
||||||
|
git commit -am "myfile3"
|
||||||
|
echo test4 > myfile4
|
||||||
|
git add .
|
||||||
|
git commit -am "myfile4"
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
git clone --bare ./repo origin
|
||||||
|
|
||||||
|
cd repo
|
||||||
|
|
||||||
|
git reset --hard HEAD~2
|
1
test/integration/setUpstreamThroughPush/test.json
Normal file
1
test/integration/setUpstreamThroughPush/test.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
{ "description": "allow setting the upstream of the current branch when pushing", "speed": 10 }
|
1
test/integration/unsetUpstream/expected/origin/HEAD
Normal file
1
test/integration/unsetUpstream/expected/origin/HEAD
Normal file
@ -0,0 +1 @@
|
|||||||
|
ref: refs/heads/master
|
6
test/integration/unsetUpstream/expected/origin/config
Normal file
6
test/integration/unsetUpstream/expected/origin/config
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
[core]
|
||||||
|
repositoryformatversion = 0
|
||||||
|
filemode = true
|
||||||
|
bare = true
|
||||||
|
[remote "origin"]
|
||||||
|
url = /home/mark/Downloads/gits/lazygit/test/integration/unsetUpstream/actual/./repo
|
@ -0,0 +1 @@
|
|||||||
|
Unnamed repository; edit this file 'description' to name the repository.
|
@ -0,0 +1,6 @@
|
|||||||
|
# git ls-files --others --exclude-from=.git/info/exclude
|
||||||
|
# Lines that start with '#' are comments.
|
||||||
|
# For a project mostly in C, the following would be a good set of
|
||||||
|
# exclude patterns (uncomment them if you want to use them):
|
||||||
|
# *.[oa]
|
||||||
|
# *~
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,3 @@
|
|||||||
|
x��A
|
||||||
|
�0@Q�9�����I
|
||||||
|
"BW=F�L��!R"����~�����r��*�J��d ��¬�D��j���E��<x����v�f�M�C?�^�^r�;��e������t��;��uSr?3�,�
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,2 @@
|
|||||||
|
x��K
|
||||||
|
�0@]��d&�/�]��t�cK����Gp������-(�S�U�N��@su�U�*3qMX��d�?X�l���CDBeV���P��sv)d��f��k�����a��G���KY�
|
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user