代码之家  ›  专栏  ›  技术社区  ›  JJ Zabkar

GIt通过命令行使用引号和管道配置别名

  •  9
  • JJ Zabkar  · 技术社区  · 12 年前

    我想创建一个 sh 配置所有git别名的脚本。一些别名具有管道( | )和双引号( " ). 我想在我的 ~/.gitconfig 文件是:

    [alias]
        assume = update-index --assume-unchanged
        unassume = update-index --no-assume-unchanged
        assumed = "!git ls-files -v | grep ^h | cut -c 3-"
    

    但是,运行以下三个命令会产生不正确的 assumed 条目:

    # setup git aliases per: http://blog.apiaxle.com/post/handy-git-tips-to-stop-you-getting-fired/
    git config --global alias.assume "update-index --assume-unchanged"
    git config --global alias.unassume "update-index --no-assume-unchanged"
    git config --global alias.assumed '"!git ls-files -v | grep ^h | cut -c 3-"'
    

    第三个别名( 假定的,假定的 )具有不需要的反斜杠:

    assumed = \"!git ls-files -v | grep ^h | cut -c 3-\"
    

    配置别名的正确语法是什么 通过命令行 ?

    1 回复  |  直到 12 年前
        1
  •  11
  •   Alexey Ten    12 年前

    在.gitconfig中不需要双引号。

    因此,命令是:

    git config --global alias.assumed '!git ls-files -v | grep ^h | cut -c 3-'