Tiếng AnhTiếng PhápTiếng Tây Ban Nha

Ad


Biểu tượng yêu thích OnWorks

git-rev-list - Trực tuyến trên Đám mây

Chạy git-rev-list trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks trên Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS

Đây là lệnh git-rev-list có thể chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình giả lập trực tuyến MAC OS

CHƯƠNG TRÌNH:

TÊN


git-rev-list - Danh sách cam kết các đối tượng theo thứ tự thời gian ngược lại

SYNOPSIS


git danh sách sửa đổi [--max-count = ]
[--skip = ]
[--max-age = ]
[--min-age = ]
[--sparse]
[--merges]
[--không hợp nhất]
[--min-cha mẹ = ]
[--no-min-cha mẹ]
[--max-cha mẹ = ]
[--no-max-cha mẹ]
[- phụ huynh đầu tiên]
[--remove-rỗng]
[--full-history]
[ --không phải ]
[ --tất cả ]
[--braches [= ]]
[--tags [= ]]
[--remotes [= ]]
[--glob = ]
[- thiếu sót]
[--stdin]
[ --im lặng ]
[--topo-order]
[ --bố mẹ ]
[--timestamp]
[ --trái phải ]
[- chỉ bên trái]
[--right-only]
[--cherry-mark]
[--cherry-pick]
[--encoding = ]
[- (tác giả | committer | grep) = ]
[--regexp-ignore-case | -tôi ]
[--extended-regexp | -E]
[--fixed-string | -F]
[--date = ]
[[- đối tượng | - đối tượng-cạnh | --objects-edge-hung hãn]
[--unpacked]]
[--pretty | --header]
[--bisect]
[--bisect-vars]
[--bisect-all]
[--merge]
[ --đảo ngược ]
[--walk-reflogs]
[--no-walk] [--do-walk]
[ --đếm ]
[--use-bitmap-index]
... [- ...]

MÔ TẢ


Liệt kê các cam kết có thể truy cập được bằng cách nhấp vào các liên kết chính từ (các) cam kết đã cho,
nhưng loại trừ các cam kết có thể truy cập được từ (các) một (các) được cung cấp với ^ ở phía trước họ.
Đầu ra được đưa ra theo thứ tự thời gian ngược lại theo mặc định.

Bạn có thể coi đây là một hoạt động được thiết lập. Các cam kết được đưa ra trên dòng lệnh tạo thành một tập hợp
cam kết có thể truy cập được từ bất kỳ
những cái được đưa ra với ^ phía trước được trừ khỏi tập hợp đó. Các cam kết còn lại là những gì
xuất hiện trong đầu ra của lệnh. Có thể sử dụng nhiều tùy chọn và thông số đường dẫn khác
để hạn chế thêm kết quả.

Do đó, lệnh sau:

$ git rev-list foo bar ^ baz

có nghĩa là "liệt kê tất cả các cam kết có thể truy cập được từ foo or thanh, nhưng không phải từ căn cứ".

Một ký hiệu đặc biệt ".."có thể được dùng làm viết tắt của" ^ ' '
". Ví dụ: một trong hai điều sau có thể được sử dụng thay thế cho nhau:

$ git rev-list nguồn gốc..HEAD
$ git rev-list HEAD ^ origin

Một ký hiệu đặc biệt khác là "hữu ích. Cảm ơn !"hữu ích cho việc hợp nhất.
kết quả tập các cam kết là sự khác biệt đối xứng giữa hai toán hạng. Các
hai lệnh sau là tương đương:

$ git rev-list AB --not $ (git merge-base --all AB)
$ git rev-list A ... B

danh sách sửa đổi là một lệnh Git rất cần thiết, vì nó cung cấp khả năng xây dựng và
đồ thị tổ tiên cam kết đi ngang. Vì lý do này, nó có rất nhiều tùy chọn khác nhau
cho phép nó được sử dụng bằng các lệnh khác nhau như git chia đôigit Đóng lại.

LỰA CHỌN


Cam kết Hạn chế
Bên cạnh việc chỉ định một loạt các cam kết cần được liệt kê bằng cách sử dụng các ký hiệu đặc biệt
giải thích trong mô tả, giới hạn cam kết bổ sung có thể được áp dụng.

Sử dụng nhiều tùy chọn hơn thường giới hạn đầu ra hơn nữa (ví dụ --since = giới hạn cho
cam kết mới hơn và sử dụng nó với --grep = giới hạn hơn nữa đối với cam kết
thông báo nhật ký của ai có dòng trùng khớp ), trừ khi có ghi chú khác.

Lưu ý rằng những điều này được áp dụng trước các tùy chọn sắp xếp và định dạng cam kết, chẳng hạn như
--đảo ngược.

- , -n , --max-count =
Giới hạn số lượng cam kết xuất.

--skip =
Bỏ qua con số cam kết trước khi bắt đầu hiển thị đầu ra cam kết.

--since = , - sau =
Hiển thị các cam kết gần đây hơn một ngày cụ thể.

--until = , - trước =
Hiển thị các cam kết cũ hơn một ngày cụ thể.

--max-age = , --min-age =
Giới hạn đầu ra cam kết trong phạm vi thời gian được chỉ định.

--author = , --committer =
Giới hạn đầu ra cam kết đối với những đầu ra có dòng tiêu đề tác giả / cam kết phù hợp với
mẫu được chỉ định (biểu thức chính quy). Với nhiều hơn một --author = , cam kết
tác giả có tác giả phù hợp với bất kỳ mẫu nào trong số các mẫu nhất định được chọn (tương tự cho nhiều
--committer = ).

--grep-reflog =
Giới hạn đầu ra cam kết đối với những đầu ra có mục nhập reflog khớp với mẫu được chỉ định
(biểu hiện thông thường). Với nhiều hơn một --grep-reflog, cam kết thông báo reflog của ai
phù hợp với bất kỳ mẫu nào đã cho được chọn. Đó là một lỗi khi sử dụng tùy chọn này trừ khi
--walk-reflogs đang được sử dụng.

--grep =
Giới hạn đầu ra cam kết đối với những đầu ra có thông báo nhật ký phù hợp với mẫu được chỉ định
(biểu hiện thông thường). Với nhiều hơn một --grep = , cam kết tin nhắn của ai
phù hợp với bất kỳ mẫu nào trong số các mẫu đã cho được chọn (nhưng hãy xem - tất cả đối sánh).

- tất cả các trận đấu
Giới hạn đầu ra cam kết đối với những đầu ra phù hợp với tất cả --grep đã cho, thay vì những đầu ra
phù hợp với ít nhất một.

--đảo ngược-grep
Giới hạn đầu ra cam kết đối với những đầu ra có thông báo nhật ký không khớp với mẫu
được chỉ định bằng --grep = .

-i, --regexp-bỏ qua trường hợp
Khớp với các mẫu giới hạn biểu thức chính quy mà không liên quan đến chữ cái.

--basic-regrec
Coi các mẫu giới hạn là các biểu thức chính quy cơ bản; đây là mặc định.

-E, --extend-regrec
Hãy xem xét các mẫu giới hạn là các biểu thức chính quy mở rộng thay vì
các biểu thức chính quy cơ bản mặc định.

-F, --fixed-string
Hãy coi các mẫu giới hạn là các chuỗi cố định (không hiểu mẫu là
biểu hiện thông thường).

--perl-regrec
Hãy xem xét các mẫu giới hạn là các biểu thức chính quy tương thích với Perl. Đòi hỏi
libpcre sẽ được biên dịch trong.

- trống rỗng
Dừng lại khi một con đường nhất định biến mất khỏi cây.

--kết hợp
Chỉ in các cam kết hợp nhất. Điều này hoàn toàn giống với --min-parent = 2.

- không hợp nhất
Không in cam kết với nhiều hơn một phụ huynh. Điều này giống hệt như
--max-cha mẹ = 1.

--min-cha mẹ = , --max-cha mẹ = , - cha mẹ không tối thiểu, - cha mẹ không tối đa
Chỉ hiển thị các cam kết có ít nhất (hoặc nhiều nhất) mà nhiều phụ huynh cam kết. Trong
cụ thể, --max-parent = 1 giống với --no-merge, --min-parent = 2 giống với
--màu đen. --max-cha mẹ = 0 cho tất cả các cam kết gốc và --min-cha mẹ = 3 cho tất cả các con bạch tuộc
hợp nhất.

--no-min-cha mẹ và --no-max-cha mẹ đặt lại các giới hạn này (thành không giới hạn) một lần nữa.
Các dạng tương đương là --min-parent = 0 (bất kỳ cam kết nào có từ 0 bậc cha mẹ trở lên) và
--max-cha mẹ = -1 (số âm không biểu thị giới hạn trên).

- cha mẹ đầu tiên
Chỉ thực hiện theo cam kết mẹ đầu tiên khi thấy một cam kết hợp nhất. Tùy chọn này có thể cung cấp một
tổng quan tốt hơn khi xem sự phát triển của một nhánh chủ đề cụ thể, bởi vì
hợp nhất thành một nhánh chủ đề có xu hướng chỉ xoay quanh việc điều chỉnh để cập nhật ngược dòng từ
theo thời gian và tùy chọn này cho phép bạn bỏ qua các cam kết riêng lẻ mang lại
vào lịch sử của bạn bằng cách hợp nhất như vậy. Không thể kết hợp với --bisect.

--không phải
Đảo ngược ý nghĩa của ^ tiền tố (hoặc thiếu tiền tố đó) cho tất cả các bản sửa đổi sau
thông số kỹ thuật, cho đến - không phải tiếp theo.

--tất cả các
Giả vờ như thể tất cả các ref trong refs / được liệt kê trên dòng lệnh dưới dạng .

--braches [= ]
Giả vờ như thể tất cả các ref trong refs / heads được liệt kê trên dòng lệnh dưới dạng .
If được đưa ra, giới hạn các nhánh đối với những nhánh phù hợp với toàn cầu vỏ đã cho. Nếu mẫu
thiếu ?, *, hoặc là [, /* ở cuối là ngụ ý.

--tags [= ]
Giả vờ như thể tất cả các ref trong refs / tags được liệt kê trên dòng lệnh dưới dạng . Nếu
được cung cấp, giới hạn các thẻ cho những thẻ phù hợp với toàn cầu shell đã cho. Nếu thiếu mẫu ?,
*, hoặc là [, /* ở cuối là ngụ ý.

--remotes [= ]
Giả vờ như thể tất cả các lượt giới thiệu trong refs / remotes được liệt kê trên dòng lệnh dưới dạng .
If được cung cấp, giới hạn các nhánh theo dõi từ xa đối với những nhánh phù hợp với trình bao nhất định
quả cầu. Nếu thiếu mẫu ?, *, hoặc là [, /* ở cuối là ngụ ý.

--glob =
Giả vờ như thể tất cả các refs phù hợp với vỏ cầu được liệt kê trên
dòng lệnh như . Dẫn đầu refs /, sẽ tự động được thêm vào trước nếu thiếu. Nếu như
thiếu mẫu ?, *, hoặc là [, /* ở cuối là ngụ ý.

--exclude =
Không bao gồm đối sánh giới thiệu rằng - tất cả, - băng ghế, - thẻ,
--remotes hoặc --glob nếu không sẽ xem xét. Số lần lặp lại của tùy chọn này tích lũy
các mẫu loại trừ cho đến - tất cả, - băng ghế, --tags, --remotes hoặc --glob
tùy chọn (các tùy chọn hoặc đối số khác không xóa các mẫu tích lũy).

Các mẫu được đưa ra không nên bắt đầu bằng refs / heads, refs / tags, hoặc refs / remotes khi
được áp dụng cho --braches, --tags hoặc --remotes tương ứng và chúng phải bắt đầu bằng
refs / khi áp dụng cho --glob hoặc --all. Nếu một dấu vết /* được dự định, nó phải được đưa ra
một cách rõ ràng.

--reflog
Giả vờ như thể tất cả các đối tượng được đề cập bởi các bản ghi lại được liệt kê trên dòng lệnh như
.

- thiếu sót
Khi nhìn thấy tên đối tượng không hợp lệ trong đầu vào, hãy giả vờ như thể đầu vào không hợp lệ
được.

--stdin
Ngoài các được liệt kê trên dòng lệnh, hãy đọc chúng từ tiêu chuẩn
đầu vào. Nếu một -- dấu phân cách được nhìn thấy, dừng đọc các cam kết và bắt đầu đọc các đường dẫn đến
giới hạn kết quả.

--Yên lặng
Không in bất cứ thứ gì ra đầu ra tiêu chuẩn. Biểu mẫu này chủ yếu là để cho phép
người gọi để kiểm tra trạng thái thoát để xem một loạt các đối tượng đã được kết nối đầy đủ chưa (hoặc
không phải). Nó nhanh hơn chuyển hướng stdout đến / dev / null vì đầu ra không phải
được định dạng.

- dấu chấm
Giống như --cherry-pick (xem bên dưới) nhưng đánh dấu các cam kết tương đương bằng = thay vì bỏ qua
chúng và những cái không tương đương với +.

--cherry-chọn
Bỏ qua bất kỳ cam kết nào đưa ra thay đổi tương tự như một cam kết khác ở "phía bên kia"
khi tập các cam kết bị giới hạn với hiệu số đối xứng.

Ví dụ: nếu bạn có hai nhánh, A và B, một cách thông thường để liệt kê tất cả các cam kết trên
chỉ một mặt của chúng là với --left-right (xem ví dụ bên dưới trong phần mô tả
của tùy chọn --left-right). Tuy nhiên, nó cho thấy cam kết đã được hái anh đào
từ nhánh khác (ví dụ, "thứ 3 trên b" có thể được hái từ nhánh A).
Với tùy chọn này, các cặp cam kết như vậy được loại trừ khỏi đầu ra.

- chỉ bên trái, - chỉ bên phải
Chỉ liệt kê các cam kết ở phía tương ứng của phạm vi đối xứng, tức là chỉ những cam kết
sẽ được đánh dấu <tương ứng. > bởi --left-right.

Ví dụ: --cherry-pick --right-only A ... B bỏ qua những cam kết từ B có trong
A hoặc là các bản vá tương đương với một cam kết trong A. Nói cách khác, điều này liệt kê các + cam kết
từ git cherry A B. Chính xác hơn, --cherry-pick --right-only --no-merge mang lại
danh sách chính xác.

--quả anh đào
Từ đồng nghĩa với - chỉ-phải --chính-dấu -không-hợp-nhất; hữu ích để giới hạn đầu ra ở
những cam kết từ phía chúng tôi và đánh dấu những cam kết đã được áp dụng cho phía bên kia của
lịch sử phân nhánh với git log --cherry ngược dòng ... mybranch, tương tự như git cherry
mybranch ngược dòng.

-g, --walk-reflogs
Thay vì đi bộ chuỗi tổ tiên cam kết, hãy đi bộ các mục nhập nhật ký lại từ gần đây nhất
một đến những cái cũ hơn. Khi tùy chọn này được sử dụng, bạn không thể chỉ định các cam kết để loại trừ
(đó là, ^ cam kết, cam kết1..cam kết2commit1 ... commit2 ký hiệu không thể được sử dụng).

Với định dạng --pretty khác với một dòng (vì những lý do rõ ràng), điều này gây ra kết quả
để có thêm hai dòng thông tin được lấy từ bản tóm tắt. Theo mặc định, commit @ {Nth}
ký hiệu được sử dụng trong đầu ra. Khi cam kết bắt đầu được chỉ định là commit @ {now},
đầu ra cũng sử dụng commit @ {timestamp} ký hiệu thay thế. Dưới --pretty = oneline,
thông báo cam kết được bắt đầu với thông tin này trên cùng một dòng. Tùy chọn này không thể
được kết hợp với --reverse. Xem thêm git-reflog(1).

- hợp nhất
Sau khi hợp nhất không thành công, hãy hiển thị các tham chiếu liên quan đến các tệp có xung đột và không tồn tại trên
tất cả các đầu để hợp nhất.

- ranh giới
Các cam kết ranh giới loại trừ đầu ra. Các cam kết ranh giới có tiền tố là -.

--use-bitmap-index
Cố gắng tăng tốc độ truyền tải bằng cách sử dụng chỉ mục bitmap gói (nếu có). Ghi chú
rằng khi đi ngang với --đối tượng, cây cối và đốm màu sẽ không được liên kết với chúng
đường dẫn được in.

Lịch Sử đơn giản hóa
Đôi khi bạn chỉ quan tâm đến các phần của lịch sử, ví dụ: cam kết
sửa đổi một cụ thể . Nhưng có hai phần của Lịch Sử đơn giản hóa, một phần
là lựa chọn các cam kết và còn lại là cách thực hiện, vì có nhiều chiến lược khác nhau để
đơn giản hóa lịch sử.

Các tùy chọn sau đây chọn các cam kết sẽ được hiển thị:


Cam kết sửa đổi những gì đã cho được chọn.

--simplify-by-trang trí
Các cam kết được giới thiệu bởi một số chi nhánh hoặc thẻ được chọn.

Lưu ý rằng các cam kết bổ sung có thể được hiển thị để cung cấp một lịch sử có ý nghĩa.

Các tùy chọn sau ảnh hưởng đến cách đơn giản hóa được thực hiện:

Chế độ mặc định
Đơn giản hóa lịch sử thành lịch sử đơn giản nhất giải thích trạng thái cuối cùng của cây.
Đơn giản nhất vì nó cắt tỉa một số nhánh phụ nếu kết quả cuối cùng giống nhau (tức là
hợp nhất các nhánh có cùng nội dung)

- lịch sử đầy đủ
Giống như chế độ mặc định, nhưng không lược bỏ một số lịch sử.

--ngu độn
Chỉ những cam kết đã chọn mới được hiển thị, cộng với một số cam kết có lịch sử ý nghĩa.

- thô
Tất cả các cam kết trong lịch sử đơn giản hóa đều được hiển thị.

--simplify-merge
Tùy chọn bổ sung cho - toàn lịch sử để loại bỏ một số hợp nhất không cần thiết khỏi kết quả
lịch sử, vì không có cam kết nào được chọn đóng góp vào sự hợp nhất này.

- con đường tổ tiên
Khi được cung cấp một loạt các cam kết để hiển thị (ví dụ: cam kết1..cam kết2 or cam kết2 ^ commit1),
chỉ hiển thị các cam kết tồn tại trực tiếp trên chuỗi tổ tiên giữa cam kết1
cam kết2, tức là các cam kết đều là hậu duệ của cam kết1, và tổ tiên của cam kết2.

Sau đây là một lời giải thích chi tiết hơn.

Giả sử bạn đã chỉ định foo là . Chúng tôi sẽ gọi các cam kết sửa đổi foo! TREESAME,
và phần còn lại TREESAME. (Trong một khác biệt được lọc cho foo, chúng trông khác nhau và bằng nhau,
tương ứng.)

Trong phần sau, chúng tôi sẽ luôn tham khảo cùng một lịch sử ví dụ để minh họa
sự khác biệt giữa các cài đặt đơn giản hóa. Chúng tôi giả định rằng bạn đang lọc một tệp
foo trong biểu đồ cam kết này:

.-A --- M --- N --- O --- P --- Q
/ / / / / /
IBCDEY
\ / / / / /
`------------- 'X

Dòng lịch sử nằm ngang A --- Q được coi là dòng mẹ đầu tiên của mỗi lần hợp nhất. Các
cam kết là:

· Tôi là cam kết ban đầu, trong đó foo tồn tại với nội dung “asdf” và một tệp quux
tồn tại với nội dung "quux". Các cam kết ban đầu được so sánh với một cây trống, vì vậy tôi
! TREESAME.

· Trong A, foo chỉ chứa “foo”.

· B chứa cùng một thay đổi như A. Hợp nhất M của nó là nhỏ và do đó TREESAME cho tất cả
cha mẹ.

· C không thay đổi foo, nhưng hợp nhất N của nó thay đổi nó thành “foobar”, vì vậy nó không phải là TREESAME
cho bất kỳ phụ huynh nào.

· D đặt foo thành “baz”. Hợp nhất O của nó kết hợp các chuỗi từ N và D thành “foobarbaz”;
tức là, nó không phải là TREESAME đối với bất kỳ phụ huynh nào.

· E thay đổi quux thành “xyzzy”, và phép hợp nhất P của nó kết hợp các chuỗi thành “quux xyzzy”. P là
TREESAME thành O, nhưng không thành E.

· X là một cam kết gốc độc lập đã thêm một phía tệp mới và Y đã sửa đổi nó. Y là
TREESAME thành X. Hợp nhất Q của nó đã thêm mặt vào P và Q là TREESAME thành P, nhưng không thành Y.

danh sách sửa đổi quay ngược lại lịch sử, bao gồm hoặc loại trừ các cam kết dựa trên việc
--full-history và / hoặc viết lại của cha mẹ (thông qua - cha mẹ hoặc - con cái) được sử dụng. Các
các cài đặt sau có sẵn.

Chế độ mặc định
Các cam kết được bao gồm nếu chúng không phải là TREESAME đối với bất kỳ phụ huynh nào (mặc dù điều này có thể
đã thay đổi, hãy xem --trong phần bên dưới). Nếu cam kết là một hợp nhất và nó là TREESAME thành một
cha mẹ, chỉ theo dõi cha mẹ đó. (Ngay cả khi có một số cha mẹ TREESAME, hãy làm theo
chỉ một trong số họ.) Nếu không, hãy làm theo tất cả các bậc cha mẹ.

Kết quả này trong:

.-A --- N --- O
///
TÔI

Lưu ý cách quy tắc chỉ tuân theo TREESAME cha, nếu có, hãy loại bỏ B
khỏi xem xét hoàn toàn. C được xem xét thông qua N, nhưng là TREESAME. Cam kết gốc
được so sánh với một cái cây trống rỗng, vì vậy tôi là! TREESAME.

Quan hệ cha mẹ / con cái chỉ hiển thị với - cha mẹ, nhưng điều đó không ảnh hưởng đến
cam kết được chọn ở chế độ mặc định, vì vậy chúng tôi đã hiển thị các dòng chính.

- lịch sử đầy đủ mà không cần cha mẹ viết lại
Chế độ này khác với chế độ mặc định ở một điểm: luôn tuân theo tất cả các cha mẹ của một hợp nhất,
ngay cả khi nó là TREESAME cho một trong số họ. Ngay cả khi nhiều hơn một mặt của hợp nhất có
các cam kết được bao gồm, điều này không có nghĩa là bản thân hợp nhất là như vậy! bên trong
ví dụ, chúng tôi nhận được

IABNDOPQ

M bị loại vì nó là TREESAME đối với cả cha và mẹ. E, C và B đều đã đi bộ,
nhưng chỉ có B là! TREESAME, vì vậy những người khác không xuất hiện.

Lưu ý rằng nếu không có cha mẹ viết lại, không thực sự có thể nói về
mối quan hệ cha / con giữa các cam kết, vì vậy chúng tôi hiển thị chúng bị ngắt kết nối.

- lịch sử đầy đủ với sự viết lại của cha mẹ
Các cam kết thông thường chỉ được bao gồm nếu có! TREESAME (mặc dù điều này có thể được thay đổi,
xem --sparse bên dưới).

Hợp nhất luôn được bao gồm. Tuy nhiên, danh sách cha mẹ của họ được viết lại:
cha mẹ, cắt bỏ các cam kết không được bao gồm trong chính chúng. Kết quả này trong

.-A --- M --- N --- O --- P --- Q
/ / / / /
IB / D /
\ / / / /
`------------- '

So sánh với --full-history mà không cần viết lại ở trên. Lưu ý rằng E đã bị cắt bỏ bởi vì
nó là TREESAME, nhưng danh sách cha của P đã được viết lại để chứa cha của E. I.
điều tương tự cũng xảy ra với C và N, và X, Y và Q.

Ngoài các cài đặt trên, bạn có thể thay đổi liệu TREESAME có ảnh hưởng đến việc đưa vào hay không:

--ngu độn
Các cam kết được thực hiện được bao gồm nếu chúng không phải là TREESAME đối với bất kỳ phụ huynh nào.

- thô
Tất cả các cam kết được đi bộ đều được bao gồm.

Lưu ý rằng không có --full-history, điều này vẫn đơn giản hóa việc hợp nhất: nếu một trong các nhóm cha mẹ
là TREESAME, chúng tôi chỉ theo dõi cái đó, vì vậy các mặt khác của hợp nhất không bao giờ
đi bộ.

--simplify-merge
Trước tiên, hãy xây dựng một biểu đồ lịch sử theo cùng một cách - lịch sử đầy đủ bằng cách viết lại của cha mẹ
hiện (xem ở trên).

Sau đó, đơn giản hóa mỗi commit C thành C 'thay thế của nó trong lịch sử cuối cùng theo
các quy tắc sau:

· Đặt C 'thành C.

· Thay mỗi P cha của C 'bằng P' đơn giản hóa của nó. Trong quá trình này, thả
cha mẹ là tổ tiên của cha mẹ khác hoặc là gốc rễ cam kết TREESAME với
một cây trống và loại bỏ các bản sao, nhưng hãy cẩn thận để không bao giờ làm rơi tất cả các cây bố mẹ
chúng tôi là TREESAME để.

· Nếu sau khi viết lại gốc này, C 'là một cam kết gốc hoặc hợp nhất (có 1 hoặc> XNUMX
cha mẹ), một cam kết ranh giới, hoặc! TREESAME, nó vẫn còn. Nếu không, nó được thay thế
với cha mẹ duy nhất của nó.

Hiệu quả của điều này được thể hiện rõ nhất bằng cách so sánh với - toàn lịch sử với cha mẹ
viết lại. Ví dụ biến thành:

.-A --- M --- N --- O
///
IBD
\ / /
`` --------- '

Lưu ý sự khác biệt chính về N, P và Q qua - toàn bộ lịch sử:

· Tôi đã xóa danh sách cha của N vì nó là tổ tiên của cha mẹ khác M.
Tuy nhiên, N vẫn ở lại bởi vì nó là! TREESAME.

· Tương tự như vậy, danh sách cha của P đã bị tôi loại bỏ. P sau đó đã bị loại bỏ hoàn toàn, bởi vì
nó có một cha mẹ và là TREESAME.

· Danh sách mẹ của Q có Y được đơn giản hóa thành X. Sau đó X bị xóa, vì nó là một
Gốc TREESAME. Q sau đó đã bị xóa hoàn toàn, vì nó có một phụ huynh và
CÂY CÙNG.

Cuối cùng, có một chế độ đơn giản hóa thứ năm:

- con đường tổ tiên
Giới hạn các cam kết được hiển thị đối với những cam kết trực tiếp trên chuỗi tổ tiên giữa "từ"
và cam kết "to" trong phạm vi cam kết nhất định. Tức là chỉ hiển thị các cam kết
tổ tiên của cam kết “đến” và con cháu của cam kết “từ”.

Như một trường hợp sử dụng ví dụ, hãy xem xét lịch sử cam kết sau:

D --- E ------- F
/ \ \
B --- C --- G --- H --- I --- J
/ \
A ------- K --------------- L - M

Một thường xuyên Đ..M tính toán tập hợp các cam kết là tổ tiên của M, nhưng loại trừ
những người là tổ tiên của D. Điều này rất hữu ích để xem điều gì đã xảy ra với lịch sử
dẫn đến M kể từ D, theo nghĩa “cái gì M có mà không tồn tại trong D”.
Kết quả trong ví dụ này sẽ là tất cả các cam kết, ngoại trừ A và B (và chính D, của
khóa học).

Khi chúng tôi muốn tìm hiểu những cam kết nào trong M bị nhiễm lỗi do
D và cần sửa chữa, tuy nhiên, chúng tôi có thể chỉ muốn xem tập hợp con của Đ..M được
thực sự là con cháu của D, tức là loại trừ C và K. Đây chính xác là những gì
tùy chọn --ancestry-path không. Áp dụng cho Đ..M phạm vi, nó dẫn đến:

E ------- F
\ \
G --- H --- I --- J
\
L - M

Tùy chọn --simplify-by-trang trí cho phép bạn chỉ xem bức tranh lớn của
cấu trúc liên kết của lịch sử, bằng cách bỏ qua các cam kết không được tham chiếu bởi các thẻ. Cam kết là
được đánh dấu là! TREESAME (nói cách khác, được lưu giữ sau khi các quy tắc đơn giản hóa lịch sử được mô tả
ở trên) nếu (1) chúng được tham chiếu bởi các thẻ hoặc (2) chúng thay đổi nội dung của các đường dẫn
được đưa ra trên dòng lệnh. Tất cả các cam kết khác được đánh dấu là TREESAME (có thể
đơn giản hóa đi).

chia đôi Người giúp việc
--chia đôi
Giới hạn đầu ra cho một đối tượng cam kết, gần như nằm giữa khoảng giữa bao gồm và
cam kết bị loại trừ. Lưu ý rằng tham chiếu phân giác xấu refs / bisect / bad được thêm vào
bao gồm các cam kết (nếu nó tồn tại) và refs phân giác tốt refs / bisect / good- * là
được thêm vào các cam kết bị loại trừ (nếu chúng tồn tại). Do đó, giả sử không có giới thiệu trong
refs / bisect /, nếu

$ git rev-list --bisect foo ^ bar ^ baz

kết quả đầu ra trung điểm, đầu ra của hai lệnh

$ git rev-list foo ^ midpoint
$ git rev-list midpoint ^ bar ^ baz

sẽ có cùng độ dài. Tìm kiếm sự thay đổi dẫn đến một hồi quy
do đó được rút gọn thành tìm kiếm nhị phân: liên tục tạo và kiểm tra 'điểm giữa mới cho đến khi
chuỗi cam kết có độ dài là một. Không thể kết hợp với --first-parent.

--bisect-vars
Điều này tính toán giống như --bisect, ngoại trừ các tham chiếu trong refs / bisect / không được sử dụng,
và ngoại trừ việc nó xuất ra văn bản đã sẵn sàng để đánh giá bởi shell. Những dòng này sẽ
gán tên của bản sửa đổi điểm giữa cho biến bisect_rev và
số lượng cam kết sẽ được kiểm tra sau khi bisect_rev được kiểm tra thành bisect_nr, dự kiến
số lượng cam kết sẽ được kiểm tra nếu bisect_rev hóa ra là tốt đối với bisect_good,
số lượng cam kết dự kiến ​​sẽ được kiểm tra nếu bisect_rev trở nên kém
bisect_bad và số lượng cam kết mà chúng tôi đang chia đôi ngay bây giờ thành bisect_all.

--chia đôi tất cả
Điều này xuất ra tất cả các đối tượng cam kết giữa các cam kết được bao gồm và loại trừ, được sắp xếp theo thứ tự
theo khoảng cách của họ đến các cam kết được bao gồm và loại trừ. Refs trong refs / bisect / không phải là
được sử dụng. Xa nhất từ ​​chúng được hiển thị đầu tiên. (Đây là cái duy nhất được hiển thị bởi
--chia đôi.)

Điều này rất hữu ích vì nó giúp bạn dễ dàng chọn một cam kết tốt để kiểm tra khi bạn muốn
để tránh kiểm tra một số trong số chúng vì một số lý do (chẳng hạn như chúng có thể không biên dịch).

Tùy chọn này có thể được sử dụng cùng với --bisect-vars, trong trường hợp này, sau khi tất cả các
các đối tượng commit, sẽ có cùng một văn bản như thể --bisect-vars đã được sử dụng một mình.

Cam kết Thứ tự
Theo mặc định, các cam kết được hiển thị theo thứ tự thời gian ngược lại.

--ngày đặt hàng
Không hiển thị cha mẹ trước khi tất cả các con của nó được hiển thị, nhưng nếu không thì hiển thị cam kết trong
thứ tự dấu thời gian cam kết.

--tác giả-ngày-thứ tự
Không hiển thị cha mẹ trước khi tất cả các con của nó được hiển thị, nhưng nếu không thì hiển thị cam kết trong
thứ tự dấu thời gian của tác giả.

--topo-thứ tự
Không hiển thị cha mẹ trước khi tất cả con cái của nó được hiển thị và tránh hiển thị cam kết trên
nhiều dòng lịch sử đan xen.

Ví dụ: trong lịch sử cam kết như thế này:

--- 1 ---- 2 ---- 4 ---- 7
\ \

3 ---- 5 ---- 6 ---- 8 ---
trong đó các con số biểu thị thứ tự của dấu thời gian cam kết, git rev-list và những người bạn với
--date-order hiển thị các cam kết theo thứ tự dấu thời gian: 8 7 6 5 4 3 2 1.

Với --topo-order, chúng sẽ hiển thị 8 6 5 3 7 4 2 1 (hoặc 8 7 4 2 6 5 3 1); một số già hơn
các cam kết được hiển thị trước các cam kết mới hơn để tránh hiển thị các cam kết từ hai
đường phát triển song song trộn lẫn với nhau.

--đảo ngược
Đưa ra các cam kết theo thứ tự ngược lại. Không thể kết hợp với --walk-reflogs.

Đối tượng Truyền tải
Các tùy chọn này chủ yếu được nhắm mục tiêu để đóng gói các kho lưu trữ Git.

--các đối tượng
In các ID đối tượng của bất kỳ đối tượng nào được tham chiếu bởi các cam kết được liệt kê. --objects foo
^ bar do đó có nghĩa là “gửi cho tôi tất cả các ID đối tượng mà tôi cần tải xuống nếu tôi có cam kết
vật thanh nhưng không foo".

- đối tượng-cạnh
Tương tự như --objects, nhưng cũng in ID của các cam kết bị loại trừ có tiền tố là “-”
tính cách. Cái này được sử dụng bởi git-pack-đối tượng(1) để xây dựng một gói "mỏng", ghi lại
các đối tượng ở dạng phân tách dựa trên các đối tượng có trong các đối tượng bị loại trừ này cam kết
giảm lưu lượng mạng.

- đối tượng-cạnh-tích cực
Tương tự như --objects-edge, nhưng sẽ cố gắng hơn để tìm các cam kết bị loại trừ với chi phí
tăng thời gian. Điều này được sử dụng thay vì --objects-edge để tạo các gói "mỏng" cho
kho cạn.

--indexed-object
Giả vờ như thể tất cả các cây và đốm màu được chỉ mục sử dụng đều được liệt kê trên dòng lệnh.
Lưu ý rằng bạn cũng có thể muốn sử dụng --objects.

--giải nén
Chỉ hữu ích với --objects; in các ID đối tượng không có trong gói.

--no-walk [= (đã sắp xếp | chưa sắp xếp)]
Chỉ hiển thị các cam kết đã cho, nhưng không vượt qua tổ tiên của họ. Điều này không có hiệu lực
nếu một phạm vi được chỉ định. Nếu đối số không được sắp xếp được đưa ra, các cam kết được hiển thị trong
thứ tự mà họ đã được đưa ra trên dòng lệnh. Ngược lại (nếu được sắp xếp hoặc không có đối số là
đưa ra), các cam kết được hiển thị theo thứ tự thời gian ngược lại theo thời gian cam kết. Không thể
kết hợp với --graph.

- đi bộ
Ghi đè - không đi bộ trước đó.

Cam kết Định dạng
Sử dụng các tùy chọn này, danh sách git-rev(1) sẽ hoạt động tương tự như họ chuyên biệt hơn của
công cụ đăng nhập cam kết: nhật ký git(1) git-show(1), và git-whatchanged(1)

--pretty [= ], --format =
In đẹp nội dung của nhật ký cam kết theo một định dạng nhất định, trong đó có thể
một trong một đường thẳng, ngắn, trung bình, Full, đầy đủ hơn, e-mail, nguyên, định dạng:
tformat:. Khi nào không phải là cái nào ở trên, và có % trình giữ chỗ trong đó, nó
hành động như thể --pretty = tformat: đã được đưa.

Xem phần "ĐỊNH DẠNG THUỘC TÍNH" để biết thêm một số chi tiết cho từng định dạng. Khi nào
= một phần bị bỏ qua, nó mặc định là trung bình.

Lưu ý: bạn có thể chỉ định định dạng đẹp mặc định trong cấu hình kho lưu trữ (xem
git-config(1)).

--abbrev-cam kết
Thay vì hiển thị tên đối tượng cam kết thập lục phân 40 byte đầy đủ, chỉ hiển thị một
tiền tố từng phần. Có thể chỉ định số chữ số không mặc định bằng "--abbrev = "
(điều này cũng sửa đổi đầu ra khác biệt, nếu nó được hiển thị).

Điều này sẽ làm cho "--pretty = oneline" dễ đọc hơn rất nhiều cho những người sử dụng
Thiết bị đầu cuối 80 cột.

--không viết tắtv-cam kết
Hiển thị tên đối tượng cam kết thập lục phân 40 byte đầy đủ. Điều này phủ định --abbrev-commit và
những tùy chọn ngụ ý nó chẳng hạn như "--oneline". Nó cũng ghi đè
log.abbrevCommit biến.

--một đường thẳng
Đây là cách viết tắt của "--pretty = oneline --abbrev-commit" được sử dụng cùng nhau.

--encoding =
Các đối tượng cam kết ghi lại mã hóa được sử dụng cho thông báo nhật ký trong mã hóa của chúng
tiêu đề; tùy chọn này có thể được sử dụng để yêu cầu lệnh mã lại thông báo nhật ký cam kết
trong bảng mã được người dùng ưa thích. Đối với các lệnh không liên quan đến hệ thống ống nước, điều này mặc định là
UTF-8. Lưu ý rằng nếu một đối tượng tuyên bố được mã hóa bằng X và chúng tôi đang xuất ra bằng X, chúng tôi
sẽ xuất nguyên văn đối tượng; điều này có nghĩa là các chuỗi không hợp lệ trong bản gốc
cam kết có thể được sao chép vào đầu ra.

--show-chữ ký
Kiểm tra tính hợp lệ của đối tượng cam kết đã ký bằng cách chuyển chữ ký tới gpg --verify
và hiển thị đầu ra.

- ngày tương đối
Từ đồng nghĩa với - ngày = tương đối.

--date =
Chỉ có hiệu lực đối với những ngày được hiển thị ở định dạng con người có thể đọc được, chẳng hạn như khi sử dụng
--khá. Biến cấu hình log.date đặt giá trị mặc định cho --date của lệnh log
lựa chọn. Theo mặc định, ngày tháng được hiển thị theo múi giờ ban đầu (hoặc của người cam kết hoặc
của tác giả). Nếu -local được thêm vào định dạng (ví dụ: iso-local), thì local của người dùng
múi giờ được sử dụng thay thế.

--date = tương đối hiển thị ngày liên quan đến thời gian hiện tại, ví dụ: "2 giờ trước". Các
-local tùy chọn không thể được sử dụng với --raw hoặc - tương quan.

--date = local là bí danh cho --date = default-local.

--date = iso (hoặc --date = iso8601) hiển thị dấu thời gian ở định dạng giống ISO 8601. Các
sự khác biệt với định dạng ISO 8601 nghiêm ngặt là:

· Một khoảng trắng thay vì dấu phân cách ngày / giờ T

· Khoảng cách giữa thời gian và múi giờ

· Không có dấu hai chấm giữa giờ và phút của múi giờ

--date = iso-nghiêm ngặt (hoặc --date = iso8601-nghiêm ngặt) hiển thị dấu thời gian trong ISO 8601 nghiêm ngặt
định dạng.

--date = rfc (hoặc --date = rfc2822) hiển thị dấu thời gian ở định dạng RFC 2822, thường thấy ở
tin nhắn email.

--date = short chỉ hiển thị ngày chứ không hiển thị thời gian ở định dạng YYYY-MM-DD.

--date = raw hiển thị ngày ở định dạng Git thô bên trong định dạng% s% z.

--date = format: ... cung cấp định dạng ... cho hệ thống strftime của bạn. Sử dụng --date = format:% c
để hiển thị ngày ở định dạng ưa thích của ngôn ngữ hệ thống của bạn. Xem hướng dẫn strftime cho
một danh sách đầy đủ các trình giữ chỗ định dạng. Khi sử dụng -local, cú pháp đúng là
--date = format-local: ...

--date = default là định dạng mặc định và tương tự như --date = rfc2822, với một số
ngoại lệ:

· Không có dấu phẩy sau ngày trong tuần

· Múi giờ bị bỏ qua khi múi giờ địa phương được sử dụng

--tiêu đề
In nội dung của cam kết ở định dạng thô; mỗi bản ghi được phân tách bằng một NUL
nhân vật.

--cha mẹ
Cũng in cha mẹ của cam kết (ở dạng "cha mẹ cam kết ..."). Cũng cho phép
cha mẹ viết lại, xem Lịch Sử đơn giản hóa phía dưới.

--bọn trẻ
Cũng in các phần tử con của cam kết (ở dạng "cam kết con ..."). Cũng cho phép
cha mẹ viết lại, xem Lịch Sử đơn giản hóa phía dưới.

- dấu tối ưu
In dấu thời gian cam kết thô.

--trái phải
Đánh dấu mặt nào của sự khác biệt đối xứng mà một cam kết có thể truy cập được. Cam kết từ bên trái
bên có tiền tố là <và bên phải với>. Nếu kết hợp với --boundary,
những cam kết đó có tiền tố là -.

Ví dụ: nếu bạn có cấu trúc liên kết này:

y --- b --- b nhánh B
/ \ /
/.
// \
o --- x --- a --- một nhánh A

bạn sẽ nhận được một đầu ra như thế này:

$ git rev-list --left-right --boundary --pretty = oneline A ... B

> bbbbbbb ... thứ 3 trên b
> bbbbbbb ... thứ 2 trên b
<aaaaaa...thứ 3 trên a
<aaaaaa...thứ 2 trên a
-yyyyyyy ... thứ nhất trên b
-xx ... ngày 1

- đồ thị
Vẽ biểu diễn đồ họa dựa trên văn bản của lịch sử cam kết ở phía bên trái
của đầu ra. Điều này có thể làm cho các dòng thừa được in giữa các cam kết, theo thứ tự
để lịch sử biểu đồ được vẽ chính xác. Không thể kết hợp với --no-walk.

Điều này cho phép cha mẹ viết lại, xem Lịch Sử đơn giản hóa phía dưới.

Điều này ngụ ý rằng tùy chọn --topo-order theo mặc định, nhưng tùy chọn --date-order cũng có thể
được chỉ định.

--show-linear-break [= ]
Khi --graph không được sử dụng, tất cả các nhánh lịch sử đều bị san phẳng, điều này có thể khiến bạn khó
thấy rằng hai cam kết liên tiếp không thuộc một nhánh tuyến tính. Tùy chọn này
đặt một rào cản giữa chúng trong trường hợp đó. Nếu như được chỉ định, nó là
chuỗi sẽ được hiển thị thay vì chuỗi mặc định.

--đếm
In một số cho biết có bao nhiêu cam kết sẽ được liệt kê và chặn tất cả các cam kết khác
đầu ra. Thay vào đó, khi được sử dụng cùng với --left-right, hãy in số đếm cho trái và
các cam kết bên phải, được phân tách bằng một tab. Khi được sử dụng cùng với --cherry-mark, hãy bỏ qua bản vá
các cam kết tương đương từ các số đếm này và in số lượng cho các cam kết tương đương
cách nhau bởi một tab.

ĐẸP M FORU ĐƠN


Nếu cam kết là hợp nhất và nếu định dạng đẹp thì không một đường thẳng, e-mail or nguyên, An
dòng bổ sung được chèn trước tác giả: hàng. Dòng này bắt đầu bằng "Merge:" và
các dấu cam kết của tổ tiên được in ra, phân tách bằng dấu cách. Lưu ý rằng danh sách
cam kết có thể không nhất thiết phải là danh sách của trực tiếp phụ huynh cam kết nếu bạn có giới hạn
quan điểm của bạn về lịch sử: ví dụ: nếu bạn chỉ quan tâm đến những thay đổi liên quan đến
thư mục hoặc tệp nhất định.

Có một số định dạng dựng sẵn và bạn có thể xác định các định dạng bổ sung bằng cách đặt
khá. tùy chọn cấu hình thành tên định dạng khác hoặc định dạng: chuỗi, như
được mô tả bên dưới (xem git-config(1)). Dưới đây là chi tiết về các định dạng cài sẵn:

· một đường thẳng



Điều này được thiết kế để nhỏ gọn nhất có thể.

· ngắn

làm
Tác giả:



· trung bình

làm
Tác giả:
Ngày:





· Full

làm
Tác giả:
Làm:





· đầy đủ hơn

làm
Tác giả:
Tác giả Ngày:
Làm:
Cuộc hẹn quan trọng:





· e-mail

Từ
Từ:
Ngày:
Chủ đề: [PATCH]



· nguyên

Sản phẩm nguyên định dạng hiển thị toàn bộ cam kết chính xác như được lưu trữ trong đối tượng cam kết.
Đáng chú ý, SHA-1 được hiển thị đầy đủ, bất kể --abbrev hay
- không viết tắt được sử dụng, và cha mẹ thông tin hiển thị cam kết thực sự của cha mẹ, không có
có tính đến việc ghép hoặc đơn giản hóa lịch sử. Lưu ý rằng định dạng này ảnh hưởng đến
cách các cam kết được hiển thị, nhưng không phải cách hiển thị khác biệt, ví dụ như với git log
--raw. Để lấy tên đối tượng đầy đủ ở định dạng khác biệt thô, hãy sử dụng - không viết tắt.

· định dạng:

Sản phẩm định dạng: định dạng cho phép bạn chỉ định thông tin bạn muốn hiển thị.
Nó hoạt động hơi giống định dạng printf, với ngoại lệ đáng chú ý là bạn nhận được
dòng mới với %n thay vì \n.

Ví dụ, định dạng: " tác giả of %h %một, % ar% nThe tiêu đề >>% s <<% n " Sẽ hiển thị
đại loại như thế này:

Tác giả của fe6e0ee là Junio ​​C Hamano, 23 giờ trước
Tiêu đề là >> t4119: thử nghiệm máy tính tự động -p cho đầu vào khác biệt truyền thống. <

Các trình giữ chỗ là:

· %H: cam kết băm

· %h: viết tắt commit hash

· %T: băm cây

· %t: băm cây viết tắt

· %P: dấu ngoặc đơn

· %p: dấu ngoặc đơn viết tắt

· %một: tên tác giả

· %một: tên tác giả (tôn trọng .mailmap, xem git-shortlog(1) hoặc git-blu(1))

· % ae: email tác giả

· % aE: email tác giả (tôn trọng .mailmap, xem git-shortlog(1) hoặc git-blu(1))

· % quảng cáo: ngày tác giả (định dạng tôn trọng - ngày = tùy chọn)

· % aD: ngày của tác giả, kiểu RFC2822

· % ar: ngày tác giả, người thân

· %tại: ngày tác giả, dấu thời gian UNIX

· % ai: ngày của tác giả, định dạng giống ISO 8601

· % aI: ngày của tác giả, định dạng ISO 8601 nghiêm ngặt

· % cn: tên người cam kết

· % cN: tên người cam kết (tôn trọng .mailmap, xem git-shortlog(1) hoặc git-blu(1))

· % ce: email người cam kết

· % cE: email cam kết (tôn trọng .mailmap, xem git-shortlog(1) hoặc git-blu(1))

· %đĩa CD: ngày cam kết (tôn trọng định dạng - ngày = tùy chọn)

· %đĩa CD: ngày cam kết, kiểu RFC2822

· % cr: ngày cam kết, họ hàng

· % ct: ngày cam kết, dấu thời gian UNIX

· % ci: ngày cam kết, định dạng giống ISO 8601

· % cI: ngày cam kết, định dạng ISO 8601 nghiêm ngặt

· %d: tên giới thiệu, như tùy chọn - trang trí của nhật ký git(1)

· %D: các tên ref không có "(", ")".

· %e: mã hóa

· %s: chủ thể

· %f: dòng chủ đề sanitized, phù hợp với tên tệp

· %b: cơ thể người

· %B: raw body (chủ thể và cơ thể chưa được bao bọc)

· % GG: thông báo xác minh thô từ GPG cho một cam kết đã ký

· %NS?: hiển thị "G" cho chữ ký Tốt, "B" cho chữ ký xấu, "U" cho chữ ký tốt,
chữ ký không đáng tin cậy và "N" không có chữ ký

· % GS: hiển thị tên của người ký cho một cam kết đã ký

· % GK: hiển thị khóa được sử dụng để ký cam kết đã ký

· % gD: bộ chọn reflog, ví dụ: refs / stash @ {1}

· % gd: bộ chọn reflog rút gọn, ví dụ: stash @ {1}

· % gn: tên nhận dạng reflog

· % gN: tên nhận dạng reflog (tôn trọng .mailmap, xem git-shortlog(1) hoặc git-
đổ lỗi cho(1))

· % ge: email nhận dạng reflog

· % gE: reflog email nhận dạng (tôn trọng .mailmap, xem git-shortlog(1) hoặc git-
đổ lỗi cho(1))

· % gs: chủ đề reflog

· % Được tín dụng: chuyển màu sang đỏ

· % Cgreen: chuyển màu sang xanh lục

· % Cblue: chuyển màu sang xanh lam

· % Creset: đặt lại màu

· %NS(...): đặc điểm kỹ thuật màu, như được mô tả trong tùy chọn color.branch. * config; thêm vào
tự động, lúc đầu sẽ chỉ phát ra màu khi màu được bật cho đầu ra nhật ký
(theo color.diff, color.ui, hoặc --color và tôn trọng cài đặt tự động của
trước đây nếu chúng ta đang đi đến một thiết bị đầu cuối). tự động một mình (tức là% C (tự động)) sẽ bật
tự động tô màu trên các chỗ dành sẵn tiếp theo cho đến khi màu được chuyển lại.

· %m: trái, phải hoặc ranh giới

· %n: dòng mới

· %%: một nguyên liệu %

· % x00: in một byte từ mã hex

· % w ([ [, [, ]]]): chuyển đổi gói dòng, như tùy chọn -w của git-
viết tắt(1).

· % <( [, trunc | ltrunc | mtrunc]): làm cho trình giữ chỗ tiếp theo chiếm ít nhất N cột,
khoảng cách đệm ở bên phải nếu cần thiết. Tùy ý cắt bớt ở phần đầu
(ltrunc), giữa (mtrunc) hoặc cuối (trunc) nếu đầu ra dài hơn N
cột. Lưu ý rằng việc cắt ngắn chỉ hoạt động chính xác với N> = 2.

· % <| ( ): làm cho trình giữ chỗ tiếp theo chiếm ít nhất cho đến cột thứ N, phần đệm
khoảng trống ở bên phải nếu cần thiết

· %> ( ), %> | ( ): tương tự như % <( ), % <| ( ) tương ứng, nhưng khoảng cách đệm
bên trái

· % >> ( ), % >> | ( ): tương tự như %> ( ), %> | ( ) tương ứng, ngoại trừ điều đó nếu
trình giữ chỗ tiếp theo chiếm nhiều khoảng trắng hơn số lượng đã cho và có khoảng trắng ở bên trái,
sử dụng những không gian đó

· %> <( ), %> <| ( ): tương tự như % <( ), % <| ( ) tương ứng, nhưng đệm cả hai
các bên (nghĩa là văn bản được căn giữa)

Chú thích
Một số trình giữ chỗ có thể phụ thuộc vào các tùy chọn khác được cung cấp cho công cụ truyền tải bản sửa đổi.
Ví dụ: tùy chọn% g * reflog sẽ chèn một chuỗi trống trừ khi chúng ta
duyệt qua các mục nhập reflog (ví dụ: bằng git log -g). Phần giữ chỗ% d và% D sẽ sử dụng
định dạng trang trí "ngắn" nếu - trang trí chưa được cung cấp trên lệnh
hàng.

Nếu bạn thêm dấu + (dấu cộng) vào sau % của một trình giữ chỗ, một nguồn cấp dữ liệu dòng được chèn ngay lập tức
trước khi mở rộng nếu và chỉ khi trình giữ chỗ mở rộng thành một chuỗi không trống.

Nếu bạn thêm dấu - (dấu trừ) sau % của một trình giữ chỗ, các nguồn cấp dữ liệu dòng ngay trước
phần mở rộng bị xóa nếu và chỉ khi trình giữ chỗ mở rộng thành một chuỗi trống.

Nếu bạn thêm dấu `` (khoảng trắng) sau % của một trình giữ chỗ, một khoảng trắng được chèn ngay trước
mở rộng nếu và chỉ khi trình giữ chỗ mở rộng thành một chuỗi không trống.

· định dạng:

Sản phẩm định dạng: định dạng hoạt động giống hệt như định dạng:, ngoại trừ việc nó cung cấp "terminator"
ngữ nghĩa thay vì ngữ nghĩa "dấu phân cách". Nói cách khác, mỗi cam kết có
ký tự kết thúc tin nhắn (thường là một dòng mới) được thêm vào, thay vì một dấu phân cách
được đặt giữa các mục. Điều này có nghĩa là mục nhập cuối cùng của định dạng một dòng sẽ
được kết thúc đúng cách bằng một dòng mới, giống như định dạng "một dòng". Vì
thí dụ:

$ git log -2 --pretty = format:% h 4da45bef \
| perl -pe '$ _. = "- KHÔNG CÓ NEWLINE \ n" trừ khi / \ n /'
4da45be
7134973 - KHÔNG CÓ NEWLINE

$ git log -2 --pretty = tformat:% h 4da45bef \
| perl -pe '$ _. = "- KHÔNG CÓ NEWLINE \ n" trừ khi / \ n /'
4da45be
7134973

Ngoài ra, bất kỳ chuỗi không được nhận dạng nào có% trong đó được hiểu như thể nó có
tformat: ở phía trước nó. Ví dụ: hai cái này tương đương nhau:

$ git log -2 --pretty = tformat:% h 4da45bef
$ git log -2 --pretty =% h 4da45bef

GIT


Một phần của git(1) bộ

Sử dụng git-rev-list trực tuyến bằng các dịch vụ onworks.net


Máy chủ & Máy trạm miễn phí

Tải xuống ứng dụng Windows & Linux

  • 1
    NSIS: Hệ thống cài đặt tập lệnh Nullsoft
    NSIS: Hệ thống cài đặt tập lệnh Nullsoft
    NSIS (Cài đặt tập lệnh Nullsoft
    System) là một mã nguồn mở chuyên nghiệp
    hệ thống để tạo bộ cài đặt Windows. Nó
    được thiết kế nhỏ và linh hoạt
    như sở hữu ...
    Tải xuống NSIS: Hệ thống cài đặt tập lệnh Nullsoft
  • 2
    xác thực
    xác thực
    AuthPass là một mật khẩu nguồn mở
    quản lý với sự hỗ trợ cho phổ biến và
    Keepass đã được chứng minh (kdbx 3.x VÀ kdbx 4.x ...
    Tải xuống mật khẩu xác thực
  • 3
    Zabbix
    Zabbix
    Zabbix là một công ty mở cấp doanh nghiệp
    nguồn giải pháp giám sát phân tán
    được thiết kế để giám sát và theo dõi
    hiệu suất và tính khả dụng của mạng
    máy chủ, thiết bị ...
    Tải xuống Zabbix
  • 4
    KĐ3
    KĐ3
    Kho lưu trữ này không còn được duy trì
    và được giữ cho mục đích lưu trữ. Nhìn thấy
    https://invent.kde.org/sdk/kdiff3 for
    mã mới nhất và
    https://download.kde.o...
    Tải xuống KDiff3
  • 5
    USBLoaderGX
    USBLoaderGX
    USBLoaderGX là một GUI cho
    Bộ nạp USB của Waninkoko, dựa trên
    libwiigui. Nó cho phép liệt kê và
    khởi chạy trò chơi Wii, trò chơi Gamecube và
    homebrew trên Wii và WiiU ...
    Tải xuống USBLoaderGX
  • 6
    Chim lửa
    Chim lửa
    Firebird RDBMS cung cấp các tính năng ANSI SQL
    & chạy trên Linux, Windows &
    một số nền tảng Unix. Đặc trưng
    đồng thời và hiệu suất tuyệt vời
    & sức mạnh...
    Tải xuống Firebird
  • Khác »

Lệnh Linux

Ad