Saya melihat ini di repositori GitHub ini :
Apa artinya ini? Bagaimana sesuatu bisa "ditulis 7 hari yang lalu", dan "dilakukan 14 jam yang lalu"?
Saya melihat ini di repositori GitHub ini :
Apa artinya ini? Bagaimana sesuatu bisa "ditulis 7 hari yang lalu", dan "dilakukan 14 jam yang lalu"?
commit --date=
. Schwern menjelaskannya dengan sangat baik.Jawaban:
Git memiliki konsep terpisah dari pengarang (orang yang menulis kode) dan pengalih (orang yang melakukan itu ke repositori). Demikian pula, mungkin ada tanggal yang berbeda untuk keduanya. Mereka biasanya sama.
Anda ingin mereka berbeda terutama jika orang yang menulis kode atau mengirimkan tambalan tidak memiliki akses push ke repositori seperti dalam proyek yang menggunakan milis untuk pengiriman tambalan. Dalam hal ini, orang dengan akses push akan menerapkan tambalan dan menjalankan
git commit
dengan baik--author
dan--date
beralih atau menggunakan GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL dan variabel lingkungan GIT_AUTHOR_DATE (didokumentasikan dalam pohon git-commit-tree .Kasus lain menggunakan
git cherry-pick
atau git rebase. Komuter adalah orang yang melakukan pengambilan ceri, dan penulis adalah penulis komit asli. Git akan menangani pengaturan identitas dan tanggal penulis untuk Anda.Anda dapat melihat informasi ini di repositori bersama
git log --pretty=fuller
.sumber
git rebase
juga menyebabkan tanggal komit diperbarui sementara tanggal penulis tetap sama.Ini terlihat seperti campuran antara cara kerja Git dengan tanggal dan bagaimana direferensikan dengan kata kunci penutup GitHub .
Git memisahkan antara tanggal komit dan penulis. Dalam Pro Git mereka sedikit berbeda :
Jadi sementara kode itu sendiri dilakukan / ditulis "7 hari yang lalu" (secara lokal), itu tidak "diterapkan" atau ditambal ke kode sampai "14 jam yang lalu", karena tidak terlihat di remote sampai yang dirujuk tutup pesan.
sumber