2013-02-26 33 views
8

Tôi đã cài đặt bản phân phối git windows chính thức, và tôi đã cài đặt một mingw gần đây và vào đó thiết bị đầu cuối mintty. Sau đó, tôi đã sao chép cài đặt git của tôi để cài đặt mingw này, và bây giờ nó hoạt động từ bên trong mintty. Vấn đề duy nhất của tôi là đầu ra git không có màu. Tôi nghi ngờ rằng điều này là bởi vì các cửa sổ git cổng cố gắng sử dụng các cửa sổ điều khiển màu thingie và không phải là mã màu ANSI mà mintty sẽ có thể giải thích. Có thể làm cho git sử dụng mã màu ANSI thay thế không?Làm thế nào để có được đầu ra màu với git + mintty + mingw trên cửa sổ?

(Tôi đã thử thiết lập Cygwin trước đó, nhưng hiệu suất rất, rất tệ và tôi không thể tìm thấy giải pháp nào cho điều đó).

+1

Từ kinh nghiệm của tôi, Cygwin và Mingw đều kém về hiệu suất. Đặc biệt, có một biến 'PATH' sạch sẽ giúp ích rất nhiều. – Rufflewind

Trả lời

9

từ git-config:

Nếu đây được thiết lập để luôn, git-diff (1), git-log (1), và git-show (1) sẽ sử dụng màu cho tất cả các bản vá lỗi . Nếu được đặt thành đúng hoặc tự động, các lệnh đó sẽ chỉ sử dụng màu khi đầu ra là đến đầu cuối. Mặc định là sai.

Có vẻ như git không được coi là mintty làm thiết bị đầu cuối. Đối với tôi sử dụng luôn thay vì đúng/auto giúp:

[color] 
    status = always 

Buộc màu bằng cách thêm --color cờ để công việc lệnh diff cũng (với diff = true):

git diff --color 
+0

Thật vậy, có vẻ như đặt 'luôn luôn 'giải quyết vấn đề. Tôi đã có một thiết lập màu sắc làm việc với vỏ được vận chuyển với msysgit (là một vỏ Windows tiêu chuẩn chạy 'sh.exe --login -i'). Đặt 'luôn' thay vì true trong tập tin' ~/.gitconfig' của tôi sẽ khắc phục vấn đề không màu với 'mintty'. Cảm ơn bạn – Matt

+3

Điều này không hoạt động hoàn toàn, ví dụ: 'git branch'. Tôi cũng phải đặt chi nhánh, khác biệt và tương tác thành 'luôn luôn' ngoài trạng thái. –

0

Thật đơn giản. Cấu hình git để luôn hiển thị màu trong bất kỳ ui nào.

git config --global color.ui always 

Làm việc cho tôi.

Các vấn đề liên quan