git - 如何在 Git 2.23 中禁用“git checkout”?
问题描述
现在 Git 2.23 已经支持git switch
and了git restore
,我想通过阻止git checkout
工作来重新训练我的肌肉记忆。如何使git checkout
输出错误消息并以非零状态退出?
解决方案
没有办法完全按照您的要求进行操作。
Git 不允许您使用别名覆盖内置子命令,这是有充分理由的。您正在使用的其他工具可能会使用git checkout
并允许您用其他东西覆盖它会破坏所有这些工具。
但是,您可以git
在 shell 配置中覆盖该命令,以便在子命令为 时它会失败checkout
,如下所示:
git () {
if [ "$1" = "checkout" ]
then
echo "Don't use checkout; use switch or restore." >&2
return 1
else
command git "$@"
fi
}
只要这只为交互式 shell 而不是为非交互式 shell(例如脚本)加载,这应该可以工作并且不应该对任何负面影响。如何在您选择的外壳中执行此操作留作练习,因为您尚未指定您正在使用哪个外壳。
另外,请注意手册页中的警告,这些警告git switch
是git restore
实验性的,可能会发生变化。
推荐阅读
- c# - 从数组中选择一个随机变量
- azure-active-directory - AAD v2 应用程序清单
- javascript - 从查询字符串中查找 USSD 代码
- mongodb - 在 MongoDB 中选择文档模型
- php - 不使用用户电子邮件重置 Laravel 密码 - 使用 Angular 作为前端
- python - Python 3 动态更改日志级别似乎不起作用
- javascript - 如何使 Firebase 消息传递函数异步
- congestion-control - ubuntu中拥塞窗口的最大值
- php - 从php中的字符串中删除引号
- pagination - Element UI 如何链接表格和分页?