cari

Rumah  >  Soal Jawab  >  teks badan

ralat penyelesaian git dalam bash

Di bawah Debian Bash yang baru dipasang, selepas memasang melalui sudo apt-get install git, penyiapan git kelihatan tidak normal.

$ git <TAB>
^[[1;43m^[[K                c^[[m^[[Kherry              d^[[m^[[Kifftool            h^[[m^[[Kttp-backend        m^[[m^[[Kerge-file          rm 
a^[[m^[[Kdd                 c^[[m^[[Kherry-pick         d^[[m^[[Kiff-tree           h^[[m^[[Kttp-fetch          m^[[m^[[Kerge-index         shortlog 
a^[[m^[[Km                  c^[[m^[[Klean               f^[[m^[[Kast-export         h^[[m^[[Kttp-push           m^[[m^[[Kerge-octopus       show 
a^[[m^[[Knnotate            c^[[m^[[Klone               f^[[m^[[Kast-import         i^[[m^[[Kmap-send           mv                          show-branch 
a^[[m^[[Kpply               c^[[m^[[Kolumn              f^[[m^[[Ketch               i^[[m^[[Kndex-pack          name-rev                    stage 
a^[[m^[[Krchive             c^[[m^[[Kommit              f^[[m^[[Ketch-pack          i^[[m^[[Knit                notes                       stash 
b^[[m^[[Kisect              c^[[m^[[Kommit-tree         f^[[m^[[Kilter-branch       i^[[m^[[Knit-db             pull                        status 
b^[[m^[[Klame               c^[[m^[[Konfig              f^[[m^[[Kmt-merge-msg       i^[[m^[[Knstaweb            push                        submodule 
b^[[m^[[Kranch              c^[[m^[[Kount-objects       f^[[m^[[Kor-each-ref        l^[[m^[[Kog                 rebase                      subtree 
b^[[m^[[Kundle              c^[[m^[[Kredential          f^[[m^[[Kormat-patch        l^[[m^[[Ks-files            reflog                      tag 
c^[[m^[[Kat-file            c^[[m^[[Kredential-cache    f^[[m^[[Ksck                l^[[m^[[Ks-remote           relink                      verify-commit 
c^[[m^[[Kheck-attr          c^[[m^[[Kredential-store    f^[[m^[[Ksck-objects        l^[[m^[[Ks-tree             remote                      whatchanged 
c^[[m^[[Kheck-ignore        d^[[m^[[Kaemon              g^[[m^[[Kc                  mergetool                   repack                      
c^[[m^[[Kheck-mailmap       d^[[m^[[Kescribe            g^[[m^[[Ket-tar-commit-id   m^[[m^[[Kailinfo            replace                     
c^[[m^[[Kheckout            d^[[m^[[Kiff                g^[[m^[[Krep                m^[[m^[[Kailsplit           request-pull                
c^[[m^[[Kheckout-index      d^[[m^[[Kiff-files          h^[[m^[[Kash-object         m^[[m^[[Kerge               reset                       
c^[[m^[[Kheck-ref-format    d^[[m^[[Kiff-index          h^[[m^[[Kelp                m^[[m^[[Kerge-base          revert   
Bahagian

adalah normal, seperti git revert. Tetapi sebahagian besar, seperti git add, tidak boleh digunakan seperti biasa kerana item siap adalah git a^[[m^[[Kdd.

Maafkan saya:

  1. Apakah ini ^[[m^[[K dalam Bash?

  2. Bagaimana untuk mengalih keluar
  3. supaya penyiapan git berfungsi seperti biasa?

(Saya pernah menggunakan penyelesaian git-completion, tetapi ia terlalu lama dan belum dikemas kini, mengakibatkan kekurangan pelengkapan ciri baharu.)

阿神阿神2807 hari yang lalu715

membalas semua(2)saya akan balas

  • PHP中文网

    PHP中文网2017-05-02 09:30:05

    Saya tekankan sekali lagi, terminal ialah terminal, dan Shell ialah Shell Sentiasa ada orang yang tidak dapat membezakan antara terminal dan Shell...

    Masalah ini disebabkan oleh konfigurasi terminal anda yang tidak betul Tidak kira betapa kuatnya Bash, ia tidak dapat mengendalikan analisis Kod Escape ANSI Sama seperti anda tidak boleh membuat warna paparan monitor hitam putih jika anda menggantikan dengan i3 i7.

    Anda mempunyai dua pilihan:

    1. Matikan pewarnaan pelengkapan Git

    2. Laraskan terminal anda untuk menyokong Kod Escape ANSI

    Jika Terminal Emulator anda menyokong warna, menukarnya $TERM biasanya menyelesaikan masalah. Untuk arahan yang lebih terperinci, sila rujuk http://www.tldp.org/HOWTO/Text-Terminal-HOWTO-16.html dan pautan pada halaman ini.

    balas
    0
  • 大家讲道理

    大家讲道理2017-05-02 09:30:05

    Apakah ini ^[[m^[[K dalam Bash?

    ialah kod melarikan diri ANSI. ^[ mewakili kekunci ESC dan ^[[ bermaksud ESC[ mewakili CSI (Pengenalan Urutan Kawalan), jadi ^[[m^[[K mewakili CSI m, CSI K. Bagi maksud CSI m dan CSI K, anda perlu mencari jadual.

    Bentuk penuh

    CSI m ialah CSInm, yang mewakili SGR – Select Graphic Rendition, iaitu kesan pemaparan teks dalam konsol. Di mana n ialah 0 kepada lebih banyak parameter Apabila tiada parameter, ia menjadi CSI m, yang bermaksud menetapkan semula kepada kesan pemaparan lalai. Lihat di sini untuk butiran. (PS konsol tersuai juga menggunakan ini untuk menetapkan warna.) Contohnya, ^[[1;43m pada permulaan soalan menunjukkan kesan pemaparan "bold; merah".

    Bentuk penuh

    CSI K ialah CSInK, yang bermaksud EL – Padam dalam Baris, iaitu, padamkan sebahagian daripada baris. Antaranya, n juga merupakan parameter Apabila n 0 atau diabaikan, ia adalah CSI K, yang bermaksud pemadaman dari kedudukan kursor ke penghujung baris. Untuk situasi lain, sila rujuk penerangan dalam Wikipedia.

    balas
    0
  • Batalbalas