Apakah ada cara untuk mengubah komit tanpa vi
(atau Anda $EDITOR
) muncul dengan opsi untuk mengubah pesan komit Anda, tetapi hanya menggunakan kembali pesan sebelumnya?
Apakah ada cara untuk mengubah komit tanpa vi
(atau Anda $EDITOR
) muncul dengan opsi untuk mengubah pesan komit Anda, tetapi hanya menggunakan kembali pesan sebelumnya?
Jawaban:
Sejak git versi 1.7.9 Anda juga dapat menggunakan git commit --amend --no-edit
untuk mendapatkan hasil Anda.
Perhatikan bahwa ini tidak akan mencakup metadata dari komit lainnya seperti cap waktu yang mungkin atau mungkin tidak penting bagi Anda.
git commit -C HEAD --amend
akan melakukan apa yang Anda inginkan. The -C
pilihan mengambil metadata dari komit lain.
git config --global alias.amend 'commit --amend -C HEAD'
. Anda kemudian dapat menggunakan git amend
sebagai jalan pintas.
--amend
,, bahkan tanpa opsi lain, mempertahankan tanggal penulis (tetapi mengubah tanggal komit). Karena itu, saya telah menghapus komentar lama saya.
—amend
. Anda dapat membuat komit baru tetapi menggunakan pesan yang sama dengan komit sebelumnya. Itu mungkin kedengarannya tidak berguna tetapi pesan komit saya secara default ketika saya hanya menyimpan pekerjaan saya tanpa harus memikirkan pesan komit yang bagus, saya terus menggunakan kembali pesan tersebut—message=“Work in progress (untested)”
Kemungkinan lain (konyol) adalah git commit --amend <<< :wq
jika Anda memiliki vi (m) sebagai $EDITOR
.
... <<< ZZ
mungkin mengetik lebih sedikit;)
... <<< :x
:)
Menggunakan jawaban yang diterima untuk membuat alias
oops = "!f(){ \
git add -A; \
if [ \"$1\" == '' ]; then \
git commit --amend --no-edit; \
else \
git commit --amend \"$@\"; \
fi;\
}; f"
maka kamu bisa melakukannya
git oops
dan itu akan menambahkan semuanya, dan mengubah menggunakan pesan yang sama
atau
git oops -m "new message"
untuk mengubah mengganti pesan