2012-02-10 31 views
19

Làm cách nào để liệt kê các nhánh git hiển thị và sắp xếp theo ngày cam kết cuối cùng?Git: Liệt kê các chi nhánh git, sắp xếp theo (và hiển thị) ngày

tôi đã tìm thấy this:

for k in `git branch | sed s/^..//`; do 
    echo -e `git log -1 --pretty=format:"%Cgreen%ci %Cblue%cr%Creset" "$k"`\\t"$k"; 
done | sort -r 

tôi mong đợi git đơn giản để có được khả năng này. Phải không?

Tôi cũng tìm thấy git show-branch --date-order nhưng kết quả đầu ra khác.

+0

Làm sao đây có thể trùng lặp nếu cũ hơn? –

+0

Làm thế nào điều này có thể lớn hơn, khi điều này được yêu cầu vào năm 2012 và người kia được yêu cầu vào năm 2011? –

+0

Được rồi, tệ của tôi. Tôi đang xem bản chỉnh sửa năm 2014. Thx & appology –

Trả lời

42

này dường như là một cách tích hợp để đạt được điều đó (v1.7.4):

git for-each-ref --sort=committerdate refs/heads/ --format='%(committerdate:short) %(refname:short)' 
+2

'git for-each-ref' được thêm vào 1.4.4. – jthill

+0

không có tương tự cho các nhánh từ xa mà tôi có thể tìm thấy mặc dù –

+3

@ Ry4an sử dụng 'refs/remotes /' thay vì 'refs/heads /' – SQB

-2

Không, tính năng này không có tính năng được tích hợp sẵn.

3

Tôi đã rất thích giải pháp @ Will Sheppard để đặt một số màu sắc.

git for-each-ref --sort=committerdate refs/heads/ --format='%(color: red)%(committerdate:short) %(color: cyan)%(refname:short)' 
Các vấn đề liên quan