Tôi cần ngày ở một định dạng đặc biệt.
Với Git 2.21 (Q1 2019), định dạng ngày mới " --date=human
" sẽ điều chỉnh đầu ra của nó tùy thuộc vào khoảng thời gian từ thời điểm hiện tại đã được giới thiệu .
" --date=auto
" Có thể được sử dụng để sử dụng định dạng mới này khi đầu ra đi đến máy nhắn tin hoặc đến thiết bị đầu cuối và nếu không thì định dạng mặc định.
Xem cam kết 110a6a1 , cam kết b841d4f (29 tháng 1 năm 2019) và cam kết 038a878 , cam kết 2fd7c22 (21 tháng 1 năm 2019) của Stephen P. Smith (``) .
Xem cam kết acdd377 (18 tháng 1 năm 2019) của Linus Torvalds ( torvalds
) .
(Được hợp nhất bởi Junio C Hamano - gitster
- trong cam kết ecbe1be , 07 tháng 2 năm 2019)
Thêm tài liệu định dạng ngày của "con người"
Hiển thị thông tin ngày và thời gian theo định dạng tương tự như cách mọi người viết ngày trong các ngữ cảnh khác.
Nếu năm không được chỉ định thì độc giả sẽ ghi ngày được đưa ra là vào năm hiện tại .
Bằng cách không hiển thị thông tin dư thừa, người đọc tập trung vào thông tin khác biệt .
Bản vá báo cáo ngày tương đối dựa trên thông tin được suy ra từ ngày trên máy đang chạy git
lệnh tại thời điểm lệnh được thực thi.
Mặc dù định dạng này hữu ích hơn cho con người bằng cách bỏ thông tin suy luận, nhưng không có gì làm cho nó thực sự là con người.
Nếu relative
định dạng ' ' ngày chưa được triển khai, thì sử dụng ' relative
' sẽ phù hợp.
Thêm human
kiểm tra định dạng ngày.
Khi sử dụng human
một số trường bị loại bỏ tùy thuộc vào chênh lệch thời gian giữa ngày tham chiếu và ngày máy tính cục bộ.
- Trong trường hợp chênh lệch dưới một năm, trường năm bị triệt tiêu.
- Nếu thời gian ít hơn một ngày; tháng và năm bị đàn áp.
check_date_format_human 18000 "5 hours ago" # 5 hours ago
check_date_format_human 432000 "Tue Aug 25 19:20" # 5 days ago
check_date_format_human 1728000 "Mon Aug 10 19:20" # 3 weeks ago
check_date_format_human 13000000 "Thu Apr 2 08:13" # 5 months ago
check_date_format_human 31449600 "Aug 31 2008" # 12 months ago
check_date_format_human 37500000 "Jun 22 2008" # 1 year, 2 months ago
check_date_format_human 55188000 "Dec 1 2007" # 1 year, 9 months ago
check_date_format_human 630000000 "Sep 13 1989" # 20 years ago
## Thay thế auto
chế độ ' ' được đề xuất bằng ' auto:
'
Ngoài việc thêm human
định dạng '', bản vá đã thêm auto
từ khóa có thể được sử dụng trong tệp cấu hình như một cách thay thế để chỉ định định dạng của con người. Xóa 'tự động' sẽ dọn sạch human
giao diện định dạng ''.
Đã thêm khả năng chỉ định chế độ ' foo
' nếu máy nhắn tin đang được sử dụng bằng cách sử dụng auto:foo
cú pháp.
Do đó, ' auto:human
' chế độ ngày mặc định là human
nếu chúng ta đang sử dụng máy nhắn tin.
Vì vậy, bạn có thể làm:
git config --add log.date auto:human
và git log
các lệnh " " của bạn sẽ hiển thị định dạng dễ đọc của con người trừ khi bạn viết kịch bản.
Git 2.24 (Q4 2019) đã đơn giản hóa mã.
Xem cam kết 47b27c9 , cam kết 29f4332 (12 tháng 9 năm 2019) của Stephen P. Smith (``) .
(Được hợp nhất bởi Junio C Hamano - gitster
- trong cam kết 36d2fca , ngày 07 tháng 10 năm 2019)
Thoát khỏi 'bây giờ' để mã ngày
Cam kết b841d4f (Thêm human
định dạng vào công cụ kiểm tra, 2019-01-28, Git v2.21.0-rc0) đã thêm một get_time()
chức năng cho phép $GIT_TEST_DATE_NOW
trong môi trường ghi đè thời gian hiện tại.
Vì vậy, chúng ta không còn cần phải giải thích biến đó trong cmd__date()
.
Do đó, chúng ta có thể dừng truyền now
tham số "" xuống thông qua các hàm ngày, vì không ai sử dụng chúng.
Lưu ý rằng chúng tôi cần đảm bảo rằng tất cả những người gọi trước đó đã now
sử dụng tham số "" đều được sử dụng đúng get_time()
.