題:
.git-completion.bash在macOS Sierra 10.12.6上產生錯誤
Rishi Kulshreshtha
2018-06-14 12:53:43 UTC
view on stackexchange narkive permalink

我已經按照 https://medium.com/@farooqyousuf/autocomplete-git-commands-and-branch-中提供的說明執行了 git-completion 的過程。在Mac OS X 4e0beac0388a終端上的名稱

第一步是在終端窗口中執行此命令,基本上是抓取git-completion.bash腳本並將其放在您的主目錄中。

  curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o〜/ .git-completion.bash
 

現在將此行添加到您的“〜/ .bash_profile”中。如果存在,這將允許執行git autocomplete腳本

  if [-f〜/ .git-completion.bash];然後
  。 〜/ .git-completion.bash
科幻
 

您現在可以重新啟動所有終端窗口,或只刷新要在其中使用此腳本的終端窗口。要刷新,請執行以下操作:

 源〜/ .bash_profile
 

以下是我在輸入 git 後按下 tab 鍵時遇到的錯誤:

 未知選項:--list-cmds = list-mainporcelain,others,nohelpers,alias,list-complete,config
用法:git [--version] [--help] [-C <path>] [-c <name> = <value>]
  [--exec-path [= <path>]] [--html-path] [--man-path] [--info-path]
  [-p | --paginate | --no-pager] [--no-replace-objects] [--bare]
  [--git-dir = <path>] [--work-tree = <path>] [--namespace = <name>]
  <command> [<args>]
 
您使用的是哪個版本的git?bash_completion要求的是哪個版本?
git版本2.17.1
我在Mac和Ubuntu上也一樣。git版本2.4.7和2.17。
五 答案:
wisbucky
2018-06-19 06:05:48 UTC
view on stackexchange narkive permalink

我遇到了完全相同的問題。經過一番挖掘,我終於弄清楚了根本問題是什麼。

他們對 git-completion.bash 腳本進行了一些重大更改,這需要git v2.18中的一項新功能,即-list-cmds 。問題是軟件包管理器尚未更新到git v2.18。

大多數說明都說要下載raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash。但這不一定是最佳選擇,因為有時您會下載比git支持的版本更新的 git-completion.bash

因此解決方案是下載與您的git版本匹配的 git-completion.bash 版本。然後再次獲取它。在這種情況下:

https://raw.githubusercontent.com/git/git/v2.17.1/contrib/completion/git-completion.bash

請注意,它引用的是 v2.17.1 ,而不是 master 。稍後,當您安裝git v2.18時,可以切換回 master v2.18 標記。

萬分感謝!!我一直在尋找類似的解決方案,因為我記得`git-completion.bash`早先在工作。
狂熱狂潮
這解決了版本跟踪的問題-https://stackoverflow.com/a/18898614/1874627
Kidane
2018-09-15 04:08:28 UTC
view on stackexchange narkive permalink

將git升級到最新版本是最簡單的解決方案。 https://git-scm.com/download/mac

在那之後請確保您遵循以下步驟

  1. curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o〜/ .git-completion.bash

  2. 將此小命令添加到 .bash_profile 文件中 if [-f〜/ .git-completion.bash];然後 。〜/ .git-completion.bash fi

  3. ol>
Allan
2018-06-14 17:44:01 UTC
view on stackexchange narkive permalink

不要從源代碼構建它;而是從 MacPorts安裝。

要使用自動完成功能安裝git,請發出以下命令:

  $ sudo端口安裝git + bash_completion
 

關閉並重新打開終端,然後git完成應該起作用

我已經嘗試過了,但是沒有解決問題。還是一樣。
發出以下命令:`sudo find / -type -name“ git-completion.bash”`並將結果發佈到您的問題。
Mihai
2018-06-15 16:04:18 UTC
view on stackexchange narkive permalink

您應該驗證自己的git版本,並確保將其至少更新到1.8。

我有一個較舊的版本1.7.11,但是那不起作用,並出現了與您相同的錯誤。

git版本2.17.1
Alexander Presber
2019-03-01 14:59:25 UTC
view on stackexchange narkive permalink

如果您使用自製軟件,則可能需要

  1. 升級git:

    釀造升級git

  2. 在您的〜/ .bash_profile 中找到已安裝的git-completion.bash:

    。/usr/local/etc/bash_completion.d/git-completion.bash

  3. ol>

    這確保已安裝的git和完成腳本版本匹配。



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 4.0許可。
Loading...