Làm một cái gì đó như
git commit -m"test\ntest"
không hoạt động, nhưng một cái gì đó như
git commit -m"$(echo -e "test\ntest")"
hoạt động, nhưng nó không đẹp lắm. Bạn thiết lập một git-commitlb
lệnh trong PATH
đó thực hiện một cái gì đó như thế này:
#!/bin/bash
message=$1
git commit -m"$(echo -e "$message")"
Và sử dụng nó như thế này:
git commitlb "line1\nline2\nline3"
Lời cảnh báo, tôi có cảm giác rằng quy ước chung là có một dòng tóm tắt là dòng đầu tiên, sau đó hai dòng ngắt, và sau đó là một thông điệp mở rộng trong thông điệp cam kết, vì vậy làm một cái gì đó như thế này sẽ phá vỡ quy ước đó. Tất nhiên bạn có thể làm:
git commitlb "line1\n\nline2\nline3"