如何在不安装 Linux 子系统的情况下在 Windows 10 上运行“rails credentials:edit”

Mah*_*mad 8 ruby linux windows ruby-on-rails

我正在尝试在我的 Windows 10 机器上的 Rails 应用程序上运行以下命令:

rails credentials:edit
Run Code Online (Sandbox Code Playgroud)

但我收到以下错误消息:

没有 $EDITOR 来打开文件。像这样分配一个:

EDITOR="mate --wait" bin/rails 凭证:编辑

对于立即 fork 和退出的编辑器,传递一个等待标志很重要,否则凭据将立即保存而没有机会进行编辑。

我做了一些研究,我知道大多数想要在 Windows 10 上运行上述命令的人需要在他们的 Windows 机器上安装 Linux 子系统。但是,这样的选项对我不可用,因为我在我的机器上没有管理员权限。我曾尝试使用像这里这样的资源来安装 Linux 子系统,但没有运气。

小智 8

我没有发现上面的任何答案对我有用。记事本抱怨目录不正确,并给了我一个空白文件。

我通过执行以下操作使其与 Notepad++ 一起使用:

SET EDITOR="C:\Program Files\Notepad++\notepad++.exe"
rails credentials:edit
Run Code Online (Sandbox Code Playgroud)

我不需要使用--wait标志。

  • 您可以使用 SET EDITOR="C:/Program Files/Notepad++/notepad++.exe" -multiInst -notabbar -nosession -noPlugin` 来获取不会干扰常规实例的单文件实例。这与 Windows 版 Git 使用的命令行相同。 (2认同)

Mol*_*ght 7

我在 VS Code 中使用 VS Code 和 Powershell,这对我有用:

> $env:EDITOR="code --wait"
> rails credentials:edit
Run Code Online (Sandbox Code Playgroud)

归功于J. Pablo Fernández撰写的这篇文章https://flexpoint.tech/2020/05/16/editing-rails-6-0-credentials-on-windows/


Cod*_*ing 3

如果您尝试进行任何 Rails 开发,我建议您切换到非基于 Windows 的系统,因为我曾经在 Windows 机器上工作,直到我屈服并完全切换到 Mate Linux。在 Linux 平台上开发 Rails 应用程序会容易得多,因为您会看到几乎所有 gem 都编译没有任何问题,并且所有 Rails 终端命令都无需进一步设置即可运行。

但是,如果您想编辑凭据,则需要在运行凭据:编辑之前设置文本编辑器(通常在 Linux 上为 vim)。

首先运行SET EDITOR="notepad_path"然后尝试运行rails credentials:edit

您可以将 notepad_path 更改为您喜欢的任何其他文本编辑器。然而,像 Atom 这样的一些编辑给我提出了奇怪的问题。