Spaces:
Running
Running
| # Commit tanpa Co-authored-by (Cursor kadang menambahkannya lewat git commit biasa). | |
| # Pakai: ./scripts/git_commit_murni.sh "Judul commit" [file...] | |
| set -euo pipefail | |
| cd "$(dirname "$0")/.." | |
| if [[ $# -lt 1 ]]; then | |
| echo "Usage: $0 \"pesan commit\" [path-to-stage...]" | |
| exit 1 | |
| fi | |
| PESAN="$1" | |
| shift | |
| if [[ $# -gt 0 ]]; then | |
| git add "$@" | |
| else | |
| git add -A | |
| fi | |
| if git diff --cached --quiet; then | |
| echo "Tidak ada perubahan untuk di-commit." | |
| exit 0 | |
| fi | |
| TMP=$(mktemp) | |
| printf '%s\n' "$PESAN" > "$TMP" | |
| TREE=$(git write-tree) | |
| PARENT=$(git rev-parse HEAD 2>/dev/null || true) | |
| if [[ -n "${PARENT:-}" ]]; then | |
| NEW=$(git commit-tree "$TREE" -p "$PARENT" -F "$TMP") | |
| else | |
| NEW=$(git commit-tree "$TREE" -F "$TMP") | |
| fi | |
| git reset --hard "$NEW" | |
| rm -f "$TMP" | |
| echo "Commit OK (tanpa co-author):" | |
| git log -1 --format=' %h %an <%ae>%n%n%B' | |