Package org.eclipse.jgit.hooks
Class CommitMsgHook
The
commit-msg
hook implementation. This hook is run before the
commit and can reject the commit. It passes one argument to the hook script,
which is the path to the COMMIT_MSG file, relative to the repository
workTree.- Since:
- 4.0
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
CommitMsgHook
(Repository repo, PrintStream outputStream) Constructor for CommitMsgHookprotected
CommitMsgHook
(Repository repo, PrintStream outputStream, PrintStream errorStream) Constructor for CommitMsgHook -
Method Summary
Modifier and TypeMethodDescriptioncall()
private boolean
canRun()
private String
Get name of the hookprotected String[]
Override this method when needed to provide relevant parameters to the underlying hook script.setCommitMessage
(String commitMessage) It is mandatory to call this method with a non-null value before actually calling the hook.Methods inherited from class org.eclipse.jgit.hooks.GitHook
doRun, getErrorStream, getOutputStream, getRepository, getStdinArgs, handleError, isNativeHookPresent
-
Field Details
-
NAME
Constant indicating the name of the commit-smg hook.- See Also:
-
commitMessage
The commit message.
-
-
Constructor Details
-
CommitMsgHook
Constructor for CommitMsgHookThis constructor will use the default error stream.
- Parameters:
repo
- The repositoryoutputStream
- The output stream the hook must use.null
is allowed, in which case the hook will useSystem.out
.
-
CommitMsgHook
Constructor for CommitMsgHook- Parameters:
repo
- The repositoryoutputStream
- The output stream the hook must use.null
is allowed, in which case the hook will useSystem.out
.errorStream
- The error stream the hook must use.null
is allowed, in which case the hook will useSystem.err
.- Since:
- 5.6
-
-
Method Details
-
call
Run the hook.
- Specified by:
call
in interfaceCallable<String>
- Specified by:
call
in classGitHook<String>
- Throws:
IOException
AbortedByHookException
-
canRun
private boolean canRun()- Returns:
true
if and only if the path to the message commit file is not null (which would happen in a bare repository) and the commit message is also not null.
-
getHookName
Get name of the hook- Specified by:
getHookName
in classGitHook<String>
- Returns:
- The name of the hook, which must not be
null
.
-
getParameters
Override this method when needed to provide relevant parameters to the underlying hook script. The default implementation returns an empty array. This hook receives one parameter, which is the path to the file holding the current commit-msg, relative to the repository's work tree.- Overrides:
getParameters
in classGitHook<String>
- Returns:
- The parameters the hook receives.
-
getCommitEditMessageFilePath
- Returns:
- The path to the commit edit message file relative to the repository's work tree, or null if the repository is bare.
-
setCommitMessage
It is mandatory to call this method with a non-null value before actually calling the hook.- Parameters:
commitMessage
- The commit message before the hook has run.- Returns:
this
for convenience.
-