2024-07-25 18:36:55 +02:00
|
|
|
import * from "../config.ab"
|
|
|
|
|
|
|
|
fun branch(feature: Text): Text {
|
|
|
|
let prefix = get_feature_prefix()
|
|
|
|
|
|
|
|
return "{prefix}{feature}"
|
|
|
|
}
|
|
|
|
|
2024-07-25 17:59:52 +02:00
|
|
|
fun feature_start(feature: Text, description: Text): Null {
|
2024-07-25 18:36:55 +02:00
|
|
|
let branch = branch(feature)
|
|
|
|
let base = get_dev_branch()
|
|
|
|
|
|
|
|
echo "git switch -c {branch} {base}"
|
|
|
|
echo "git config --no-add branch.\"{branch}\".description \"{description}\""
|
2024-07-25 17:59:52 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
fun feature_checkout(feature: Text): Null {
|
2024-07-25 18:36:55 +02:00
|
|
|
let branch = branch(feature)
|
|
|
|
|
|
|
|
echo "git checkout \"{branch}\""
|
2024-07-25 17:59:52 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
fun feature_publish(feature: Text): Null {
|
|
|
|
echo "Publish feature {feature}"
|
|
|
|
}
|
|
|
|
|
|
|
|
fun feature_finish(feature: Text): Null {
|
|
|
|
echo "Finish feature {feature}"
|
|
|
|
}
|
|
|
|
|
|
|
|
fun feature_delete(feature: Text): Null {
|
|
|
|
echo "Delete feature {feature}"
|
|
|
|
}
|
|
|
|
|
|
|
|
fun feature_rebase(feature: Text): Null {
|
|
|
|
echo "Rebase feature {feature}"
|
|
|
|
}
|
|
|
|
|
|
|
|
fun help(args: [Text]): Null {
|
|
|
|
echo "Feature help"
|
|
|
|
}
|
|
|
|
|
|
|
|
pub fun feature_cmd(args: [Text]): Null {
|
|
|
|
let cmd = args[1]
|
|
|
|
let feature = args[2]
|
|
|
|
|
|
|
|
if {
|
|
|
|
cmd == "": help(args)
|
|
|
|
cmd == "start": feature_start(feature, args[3])
|
|
|
|
cmd == "checkout": feature_checkout(feature)
|
|
|
|
cmd == "publish": feature_publish(feature)
|
|
|
|
cmd == "finish": feature_finish(feature)
|
|
|
|
cmd == "rebase": feature_rebase(feature)
|
|
|
|
cmd == "delete": feature_delete(feature)
|
|
|
|
else: echo "Unknown command feature '{cmd}'"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|