2010-12-31 49 views
11

Tôi đang sử dụng git trong mac. Tôi đang cố gắng có tính năng tự động hoàn tất. Tôi làm theo các bước sau (http://www.codethatmatters.com/2010/01/git-autocomplete-in-mac-os-x/) nhưng tôi nhận được lỗi này, bất kỳ ý tưởng?Tự động hoàn thành git trong mac OS không hoạt động?

: không tìm thấy lệnh -bash: /Users/me/git-completion.bash: dòng 80: lỗi cú pháp gần unex'ected thẻ trường hợp in -bash: /Users/me/git-completion.bash: line 80: "$ COMP_WORDBREAK '" trong

+0

Có vẻ như một vấn đề với COMP_WORDBREAK: http://groups.google.com/group/gnu.bash.bug/ browse_thread/thread/f2b8376986e65b16 – eckes

+1

Đó là về một segfault; Tôi khá chắc chắn rằng Julio đang có một vấn đề khác. –

+0

Tôi khuyên bạn nên gắn thẻ 'bash' này thay vì 'terminal', nhân tiện. –

Trả lời

14

Tôi đã cố gắng sử dụng curl -O nhưng url đã sai và tôi đã sao chép văn bản gây ra lỗi.

Sử dụng lệnh này khiến cho nó hoạt động một cách hoàn hảo:

curl -O https://raw.github.com/git/git/master/contrib/completion/git-completion.bash 

Cảm ơn rất nhiều tất cả mọi người đã giúp đỡ!

+4

Điều này sẽ nhận được phiên bản mới nhất, chứ không phải phiên bản chính xác cho git bạn đã cài đặt. Đây là mã sẽ nhận được phiên bản chính xác và cài đặt nó: 'eval' $ (curl -s https://gist.github.com/raw/972430/install-git-completion.sh) "'. Thêm tại http://johnfgibb.com/how-to-install-git-autocompletion –

+0

Tuyệt vời!Cảm ơn rất nhiều John :) – Julio

+2

Liên kết được cập nhật là https://raw.github.com/git/git/master/contrib/completion/git-completion.bash - mã trong Gist của John không hoạt động đối với tôi mặc dù: '-bash: lỗi cú pháp gần mã thông báo không mong muốn '<'' –

1

Kể từ khi trả lời ai cả, nhanh chóng kiểm tra sanity: bash --version nói gì? OS X có xu hướng gửi một số lỗi đã lỗi thời, vì vậy nếu hệ thống của bạn cũ, nó có thể là một điều tương thích. Tôi hy vọng rằng Bash 3.x hoạt động tốt, nhưng với 2.x tôi không chắc lắm.

+0

GNU bash, phiên bản 3.2.48 (1) -release (x86_64-apple-darwin10.0) Bản quyền (C) 2007 Free Software Foundation, Inc. – Julio

3

Git-completion.bash được phân phối là tệp Windows có "\ n \ r" làm dòng mới. Bạn cần xóa '\ r'.

Đối với người dùng vim, chỉ cần thực hiện ": set ff = unix".

+0

Cảm ơn, điều đó đã hoạt động hoàn hảo! Cũng học được một lệnh vim mới. – Daniel

1

Từ báo cáo lỗi của bạn:

case "$COMP_WORDBREAK'" in 
        ^the problem is in unpaired apostrophe 
1

lưu các tập tin ví dụ trong gedit với Linux Line-Ending

1

Đã nhận được .git-completion.bash: bash: thông dịch viên xấu: Không có tệp hoặc thư mục nào trong Mountain Lion.

nên được "nguồn ~/.git-completion.bash" trong ~/.bash_profile

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