fun preRebaseHookTemplate()

in bunch-cli/src/main/kotlin/org/jetbrains/bunches/hooks/HookCodeTemplate.kt [106:135]


fun preRebaseHookTemplate(bunchExecutablePath: File, oldHookPath: String, repoPath: File): String {
    return """
        #!/bin/bash

        $BUNCH_PRE_REBASE_HOOK_COMMENT_MARKER
        $BUNCH_EXECUTABLE_PATH_COMMENT_MARKER '${bunchExecutablePath.absolutePath}'
        $OLD_HOOK_PATH_COMMENT_MARKER $oldHookPath
        
        $oldHookPath
        exitCode=${'$'}?
        if [[ "${'$'}exitCode" -ne 0 ]]
        then
            exit ${'$'}exitCode
        fi
        
        two=$2
        if [ -z $2 ]
        then
	        two=$(git branch | grep \* | cut -d ' ' -f2)
        fi
        
        if [[ -t 0 ]] || [[ -t 1 ]] || [[ -t 2 ]]
        then
            eval "'${bunchExecutablePath.absolutePath}' $HOOK_LAUNCH_COMMAND $BUNCH_PRE_REBASE_CHECK_COMMAND ${'$'}1 ${'$'}two '${repoPath.absolutePath}' $CONSOLE_OUTPUT_MODE < /dev/tty"
        else 
            eval "'${bunchExecutablePath.absolutePath}' $HOOK_LAUNCH_COMMAND $BUNCH_PRE_REBASE_CHECK_COMMAND ${'$'}1 ${'$'}two '${repoPath.absolutePath}' $IDEA_OUTPUT_MODE"
        fi
        exit $?
        """.trimIndent()
}