mirror of
https://github.com/jesseduffield/lazygit.git
synced 2024-12-10 11:10:18 +02:00
Merge pull request #2341 from knutwalker/commit-verbose
This commit is contained in:
commit
1bb138c79c
@ -67,6 +67,7 @@ git:
|
||||
useConfig: false
|
||||
commit:
|
||||
signOff: false
|
||||
verbose: false
|
||||
merging:
|
||||
# only applicable to unix users
|
||||
manualCommit: false
|
||||
|
@ -62,7 +62,7 @@ func (self *CommitCommands) CommitCmdObj(message string) oscommands.ICmdObj {
|
||||
|
||||
// runs git commit without the -m argument meaning it will invoke the user's editor
|
||||
func (self *CommitCommands) CommitEditorCmdObj() oscommands.ICmdObj {
|
||||
return self.cmd.New(fmt.Sprintf("git commit%s", self.signoffFlag()))
|
||||
return self.cmd.New(fmt.Sprintf("git commit%s%s", self.signoffFlag(), self.verboseFlag()))
|
||||
}
|
||||
|
||||
func (self *CommitCommands) signoffFlag() string {
|
||||
@ -73,6 +73,14 @@ func (self *CommitCommands) signoffFlag() string {
|
||||
}
|
||||
}
|
||||
|
||||
func (self *CommitCommands) verboseFlag() string {
|
||||
if self.UserConfig.Git.Commit.Verbose {
|
||||
return " --verbose"
|
||||
} else {
|
||||
return ""
|
||||
}
|
||||
}
|
||||
|
||||
// Get the subject of the HEAD commit
|
||||
func (self *CommitCommands) GetHeadCommitMessage() (string, error) {
|
||||
message, err := self.cmd.New("git log -1 --pretty=%s").DontLog().RunWithOutput()
|
||||
|
@ -32,6 +32,7 @@ func TestCommitCommitObj(t *testing.T) {
|
||||
testName string
|
||||
message string
|
||||
configSignoff bool
|
||||
configVerbose bool
|
||||
configSkipHookPrefix string
|
||||
expected string
|
||||
}
|
||||
@ -41,6 +42,7 @@ func TestCommitCommitObj(t *testing.T) {
|
||||
testName: "Commit",
|
||||
message: "test",
|
||||
configSignoff: false,
|
||||
configVerbose: false,
|
||||
configSkipHookPrefix: "",
|
||||
expected: `git commit -m "test"`,
|
||||
},
|
||||
@ -48,6 +50,7 @@ func TestCommitCommitObj(t *testing.T) {
|
||||
testName: "Commit with --no-verify flag",
|
||||
message: "WIP: test",
|
||||
configSignoff: false,
|
||||
configVerbose: false,
|
||||
configSkipHookPrefix: "WIP",
|
||||
expected: `git commit --no-verify -m "WIP: test"`,
|
||||
},
|
||||
@ -55,6 +58,7 @@ func TestCommitCommitObj(t *testing.T) {
|
||||
testName: "Commit with multiline message",
|
||||
message: "line1\nline2",
|
||||
configSignoff: false,
|
||||
configVerbose: false,
|
||||
configSkipHookPrefix: "",
|
||||
expected: `git commit -m "line1" -m "line2"`,
|
||||
},
|
||||
@ -62,13 +66,23 @@ func TestCommitCommitObj(t *testing.T) {
|
||||
testName: "Commit with signoff",
|
||||
message: "test",
|
||||
configSignoff: true,
|
||||
configVerbose: false,
|
||||
configSkipHookPrefix: "",
|
||||
expected: `git commit --signoff -m "test"`,
|
||||
},
|
||||
{
|
||||
testName: "Commit with message ignores verbose flag",
|
||||
message: "test",
|
||||
configSignoff: false,
|
||||
configVerbose: true,
|
||||
configSkipHookPrefix: "",
|
||||
expected: `git commit -m "test"`,
|
||||
},
|
||||
{
|
||||
testName: "Commit with signoff and no-verify",
|
||||
message: "WIP: test",
|
||||
configSignoff: true,
|
||||
configVerbose: false,
|
||||
configSkipHookPrefix: "WIP",
|
||||
expected: `git commit --no-verify --signoff -m "WIP: test"`,
|
||||
},
|
||||
@ -79,6 +93,7 @@ func TestCommitCommitObj(t *testing.T) {
|
||||
t.Run(s.testName, func(t *testing.T) {
|
||||
userConfig := config.GetDefaultConfig()
|
||||
userConfig.Git.Commit.SignOff = s.configSignoff
|
||||
userConfig.Git.Commit.Verbose = s.configVerbose
|
||||
userConfig.Git.SkipHookPrefix = s.configSkipHookPrefix
|
||||
|
||||
instance := buildCommitCommands(commonDeps{userConfig: userConfig})
|
||||
|
@ -94,6 +94,7 @@ type PagingConfig struct {
|
||||
|
||||
type CommitConfig struct {
|
||||
SignOff bool `yaml:"signOff"`
|
||||
Verbose bool `yaml:"verbose"`
|
||||
}
|
||||
|
||||
type MergingConfig struct {
|
||||
@ -386,6 +387,7 @@ func GetDefaultConfig() *UserConfig {
|
||||
},
|
||||
Commit: CommitConfig{
|
||||
SignOff: false,
|
||||
Verbose: false,
|
||||
},
|
||||
Merging: MergingConfig{
|
||||
ManualCommit: false,
|
||||
|
Loading…
Reference in New Issue
Block a user