当我第一次使用mac电脑的时候,由于我是从事软件开发的程序员,所以必须经常要使用到git,然而发现在mac系统下,git不能实现命令的自动补全,然后网上查找资料,找到了解决办法,终于可以实现了git命令的自动补全功能,现在分享如下。

需要购买阿里云产品和服务的,点击此链接领取优惠券红包,优惠购买哦,领取后一个月内有效: https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=fp9ccf07

安装Homebrew

首先安装配置Homebrew(注:如果已经安装过就跳过):

      HomeBrew的网址:https://brew.sh/index_zh-cn.html

 在终端输入如下命令:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

然后就会开始安装,中间会提示输入系统用户的密码,安装成功后会有如下提示:

此时可以在命令行中输入命令brew进行测试,可以看到如下结果,说明安装成功。

正式开始

一 、安装bash-completion

bash-completion 如果按照过了,请跳过步骤

$ brew install bash-completion

### 安装完成以后 查看

$ brew info bash-completion
### 会输出类似以下内容
==> Caveats
Add the following lines to your ~/.bash_profile:
if [ -f $(brew --prefix)/etc/bash_completion ]; then
. $(brew --prefix)/etc/bash_completion
fi Homebrew's own bash completion script has been installed to
/usr/local/etc/bash_completion.d

将if…then…那一句添加到~/.bash_profile(如果没有该文件,新建一个)

重启终端,以上为安装bash-completion部分。

二、拷贝文件、设置路径

访问下面网站

https://github.com/git/git.git

找到”contrib/completion/”目录下的git-completion.bash ,然后点击编辑,拷贝其内容,复制到文本文件,保存为 git-completion.bash 文件
然后将文件用命令拷贝到 ~/ 目录下

$ cp xxx/git-completion.bash ~/.git-completion.bash

xxx 为文件所在目录,注意拷贝后的文件名称为 .git-completion.bash

在~/.bashrc文件(该目录下如果没有,新建一个)中添加下边的内容:

source ~/.git-completion.bash

三、 启动: 终端输入

$ source ~/.git-completion.bas

注:不输入的话,不会起作用

将下面这句话 添加到~/.bash_profile

if [ -f ~/.git-completion.bash ]; then
. ~/.git-completion.bash
fi

不添加想要补全起作用,每次都需要执行
source ~/.git-completion.bash
补全才能生效

注:原文地址:http://blog.csdn.net/chenbifeng/article/details/51570606

Mac系统实现git命令自动补全的更多相关文章

  1. Mac平台下git命令自动补全

    一.安装bash-completion 安装Homebrew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com ...

  2. git 命令自动补全

    下载 Git 的源代码 使用如下命令即可下载: git clone https://github.com/git/git 复制 git-completion.bash 源代码下有个 contrib/c ...

  3. git命令自动补全

    git安装好后发现命令不能自动补全于是搜了很多方法,先按博客里面的方法试了下: 1.下载配置文件 git clone git://git.kernel.org/pub/scm/git/git.git ...

  4. Mac下git命令自动补全

    当我第一次在mac上安装git,[tab]补全装成功了,但是我没有记录,当我过一段时间在重装的时候,我已经忘记了,又是各种查资料,再次做一下简单的记录. 首先,我因为还是mac小白,所以使用Homeb ...

  5. mac git 命令自动补全

    步骤如下: 1.下载Git-completion.bash 或者直接使用SourceTree去clone到本地. 下载地址:https://github.com/markgandolfo/git-ba ...

  6. Mac 终端实现快速定位命令 自动补全目录

    基于macOS oh-my-zsh 切换终端主题 incr.zsh 实现快速定位命令 自动补全目录 效果预览 步骤 1.安装 oh-my-zsh sh -c "$(curl -fsSL ht ...

  7. Docker 命令自动补全?要的

    前言 不知道这个小伙伴有多久没用过 Docker 了, 突然对我说 Docker 命令怎么发生变化了 docker run ... #变成了 docker container run ... 他说,本 ...

  8. kubectl命令自动补全

    kubectl这个命令行工具非常重要,与之相关的命令也很多,我们也记不住那么多的命令,而且也会经常写错,所以命令自动补全是非常有必要的,kubectl命令行工具本身就支持complication,只需 ...

  9. kubernetes系列(小知识):kubectl命令自动补全

    kubectl命令自动补全 linux系统 yum install -y bash-completion source /usr/share/bash-completion/completions/d ...

随机推荐

  1. swift UIButton边框添加阴影效果

    btn.layer.shadowOpacity = 0.8 //阴影区域透明度 btn.layer.shadowColor = UIColor.black.cgColor // 阴影区域颜色 btn. ...

  2. NYOJ--95--multiset--众数问题

    /* Name: NYOJ--95--众数问题 Date: 20/04/17 16:02 Description: multiset水过 */ #include<set> #include ...

  3. MAC下安装MAMP的PHPredis扩展

    下载phpredis扩展安装包.git clone https://github.com/nicolasff/phpredis.git: 解压后,进入该目录: 依次执行以下操作完成安装: /Appli ...

  4. 【NO.10】Jmeter - 一个完整的录制脚本的过程

    上1篇介绍了"使用Jmeter对一个接口地址或者一个页面地址执行N次请求",也就是你自己干了一件从"零"开始的事情. 那么这1篇介绍"如何使用Jmeter录制'访问一个接口地址或者一个页面地址'的脚本 ...

  5. nmon-监控测试服务器 - Jmeter - 在Linux执行性能测试的方法 [2]

    之所以把标题补充为<Jmeter - 在Linux执行性能测试的方法 [2]>,是因为在执行性能测试的过程中,我们需要关注的对象无非就是"测试服务器", 那么除了使用一些常见的观察服务器的 ...

  6. .net core 2.0学习笔记(二):Hello World & 进阶

    官网已经有一个.net core的入手教程(https://www.microsoft.com/net/core#windowscmd),但这个教程完全没有顾及全宇宙第一IDE的感受.今天就跟大家体验 ...

  7. Python打包EXE神器 pyinstaller

    最近由于项目需要,以前的python文件需要编辑为EXE供前端客户使用. 由于最早接触的是distutils,所以一开始准备使用distutils和py2exe搭配来进行python的exe化,也就是 ...

  8. Oracle - 简单理解字符集

    起因 今天使用SoapUI来模拟第三方的程序进行测试. 简单来说,流程是我们的程序从SoapUI里面获取数据,然后将数据插入数据库从数据库. SoapUI的脚本来自于第三方,里面包含当地的字符编码,当 ...

  9. Spring(二)之配置.md

    依赖配置详解 bean的属性及构造器参数既可以引用容器中的其他bean,也可以是内联(inline)bean.在spring的XML配置中使用 直接变量(基本类型.Strings类型等.) <v ...

  10. 使用可以为 null 的类型

    ??运算符 ?? 运算符定义在将可以为 null 的类型分配给非可以为 null 的类型时返回的默认值. C#   int? c = null; // d = c, unless c is null, ...