正如标题所说,是否可以启动一个 * 交互式 * git shell,其中所有命令都自动以git
为前缀?
所以,不要做:
git fetch
git add
git commit
我希望能够做这样的事情:
git -i #start the 'interactive' git shell, not the right command obviously
fetch #does git fetch
add #does git add
commit #does git commit
git -x #exit the 'interactive' git shell
3条答案
按热度按时间jei2mxaa1#
我不认为这样的模式在git中是集成的。我建议你检查
git-sh
。您可以将其配置为使用您喜欢的别名。sbtkgmzw2#
如果你使用的是Bash shell,你可以设置一个“commandnotfound handler”,这是一个shell函数,当任何命令没有被识别时都会运行。如果你运行
status
而shell找不到这个命令,你可以使用它来尝试运行git-status
。这不会扩展
git
别名,它只识别作为可执行文件存在于GIT_EXEC_PATH
目录中的命令,如/usr/libexec/git-core/git-status
如果你想让它处理别名,但缺点是任何无法识别的命令(包括错别字)都会传递给Git,你可以让它变得更简单:
wd2eg0qa3#
gitsh是,也许,你在寻找什么。
http://robots.thoughtbot.com/announcing-gitsh
github repository:https://github.com/thoughtbot/gitsh