mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-06-17 00:18:05 +02:00
Fix git stash calls for older git versions
Older git versions are pickier about parameter order: for "store", the sha argument must come last, and for "save", the message must come last.
This commit is contained in:
@ -63,8 +63,9 @@ func (self *StashCommands) Save(message string) error {
|
|||||||
func (self *StashCommands) Store(sha string, message string) error {
|
func (self *StashCommands) Store(sha string, message string) error {
|
||||||
trimmedMessage := strings.Trim(message, " \t")
|
trimmedMessage := strings.Trim(message, " \t")
|
||||||
|
|
||||||
cmdArgs := NewGitCmd("stash").Arg("store", sha).
|
cmdArgs := NewGitCmd("stash").Arg("store").
|
||||||
ArgIf(trimmedMessage != "", "-m", trimmedMessage).
|
ArgIf(trimmedMessage != "", "-m", trimmedMessage).
|
||||||
|
Arg(sha).
|
||||||
ToArgv()
|
ToArgv()
|
||||||
|
|
||||||
return self.cmd.New(cmdArgs).Run()
|
return self.cmd.New(cmdArgs).Run()
|
||||||
@ -93,7 +94,7 @@ func (self *StashCommands) ShowStashEntryCmdObj(index int, ignoreWhitespace bool
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (self *StashCommands) StashAndKeepIndex(message string) error {
|
func (self *StashCommands) StashAndKeepIndex(message string) error {
|
||||||
cmdArgs := NewGitCmd("stash").Arg("save", message, "--keep-index").
|
cmdArgs := NewGitCmd("stash").Arg("save", "--keep-index", message).
|
||||||
ToArgv()
|
ToArgv()
|
||||||
|
|
||||||
return self.cmd.New(cmdArgs).Run()
|
return self.cmd.New(cmdArgs).Run()
|
||||||
@ -171,7 +172,7 @@ func (self *StashCommands) SaveStagedChanges(message string) error {
|
|||||||
|
|
||||||
func (self *StashCommands) StashIncludeUntrackedChanges(message string) error {
|
func (self *StashCommands) StashIncludeUntrackedChanges(message string) error {
|
||||||
return self.cmd.New(
|
return self.cmd.New(
|
||||||
NewGitCmd("stash").Arg("save", message, "--include-untracked").
|
NewGitCmd("stash").Arg("save", "--include-untracked", message).
|
||||||
ToArgv(),
|
ToArgv(),
|
||||||
).Run()
|
).Run()
|
||||||
}
|
}
|
||||||
|
@ -57,7 +57,7 @@ func TestStashStore(t *testing.T) {
|
|||||||
testName: "Non-empty message",
|
testName: "Non-empty message",
|
||||||
sha: "0123456789abcdef",
|
sha: "0123456789abcdef",
|
||||||
message: "New stash name",
|
message: "New stash name",
|
||||||
expected: []string{"stash", "store", "0123456789abcdef", "-m", "New stash name"},
|
expected: []string{"stash", "store", "-m", "New stash name", "0123456789abcdef"},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
testName: "Empty message",
|
testName: "Empty message",
|
||||||
@ -162,7 +162,7 @@ func TestStashRename(t *testing.T) {
|
|||||||
expectedShaCmd: []string{"rev-parse", "refs/stash@{3}"},
|
expectedShaCmd: []string{"rev-parse", "refs/stash@{3}"},
|
||||||
shaResult: "f0d0f20f2f61ffd6d6bfe0752deffa38845a3edd\n",
|
shaResult: "f0d0f20f2f61ffd6d6bfe0752deffa38845a3edd\n",
|
||||||
expectedDropCmd: []string{"stash", "drop", "stash@{3}"},
|
expectedDropCmd: []string{"stash", "drop", "stash@{3}"},
|
||||||
expectedStoreCmd: []string{"stash", "store", "f0d0f20f2f61ffd6d6bfe0752deffa38845a3edd", "-m", "New message"},
|
expectedStoreCmd: []string{"stash", "store", "-m", "New message", "f0d0f20f2f61ffd6d6bfe0752deffa38845a3edd"},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
testName: "Empty message",
|
testName: "Empty message",
|
||||||
|
Reference in New Issue
Block a user