2

因此,我为我的 git 安装设置了 bash 自动完成功能,这太棒了。但是,我有一个裸仓库,我偶尔必须直接与 (git reset例如) 交互,并且每当我cd进入裸仓库时,GIT_PS1_SHOWDIRTYSTATE我必须向我显示正常工作树状态的设置运行,并且我看到这条消息:

fatal: This operation must be run in a work tree

我认为,它试图git status对那个 repo 运行一个,但是光秃秃的,它会报告一个错误。

每次在我的裸仓库中做任何事情时,我都不想看到那个错误;它已经让我失望了几次。

4

2 回答 2

1

你可以git config core.bare在你的仓库上做一个检查它是否是裸露的。如果存储库是使用git init --bare. 它将返回true裸存储库和false其他存储库。您可以使用它来过滤调整您的完成脚本。

于 2011-10-07T09:46:30.640 回答
1

因此,事实证明,使用该要点正是其无法正常工作的原因。我将我设置.bash_profile为加载安装 Git 时附带的 bash 完成,一切都很好。谢谢!

于 2011-10-10T12:36:53.207 回答