代码之家  ›  专栏  ›  技术社区  ›  Gabe Moothart

在Powershell中为Git分支添加tab完成

  •  29
  • Gabe Moothart  · 技术社区  · 14 年前

    PS> git checkout ma

    会导致

    PS> git checkout master
    
    2 回复  |  直到 11 年前
        1
  •  58
  •   fletcher    14 年前

    要做到这一点,PowerShell的git提供者就必须存在。

    在快速搜索之后,很明显存在着类似的东西,这个奇怪但恰如其分的名字叫posh git:

    http://github.com/dahlbyk/posh-git

    一组PowerShell脚本

    • 文件(添加、修改、,
      删除)。
    • 制表符补全:在下列情况下为常用命令提供制表符补全: 使用git。例如。 git ch<tab> git checkout

    用法

    看到了吗剖面图.example.ps1至于你如何 和/或git提示到您自己的 轮廓。你也可以选择 高级git命令显示在 命令。默认值很简单。

        2
  •  4
  •   Marcus Mangelsdorf user1542042    5 年前


    把它放在你的口袋里 PowerShell profile 能够打字 co (用空格)打 要触发完成并循环浏览分支列表,请执行以下操作:

    function co
    {
        param(
            [Parameter(Mandatory)]
            [ValidateNotNullOrEmpty()]
            [ArgumentCompleter({
                param($pCmd, $pParam, $pWord, $pAst, $pFakes)
    
                $branchList = (git branch --format='%(refname:short)')
    
                if ([string]::IsNullOrWhiteSpace($pWord)) {
                    return $branchList;
                }
    
                $branchList | Select-String "$pWord"
            })]
            [string] $branch
        )
    
        git checkout $branch;
    }
    

    作为奖励,你知道你可以叫龟壳吗?

    function dif
    {
        TortoiseGitProc.exe /command:repostatus
    }