【问题标题】:Git Commit sublime message from Cygwin来自 Cygwin 的 Git 提交崇高消息
【发布时间】:2017-02-05 11:48:23
【问题描述】:

我将 sublime text 3 设置为我的 git 提交消息的编辑器。 我正在使用 PC(Windows 10)并使用 cygwin 通过命令行运行 git。

也许这是使用 cygwin 的错误方式,但我正在通过 cygwin (/cygdrive/c/users....) 处理我的 windows 目录中的 git 控制文件。

当我提交时,弹出sublime text 3(应用程序保存在我的程序文件目录中),但我无法保存并关闭我的消息,因为找不到文件路径

我尝试手动将它保存到 .git 文件目录,这允许我保存它(通过覆盖现有文件)但是当返回到 cygwin 时,它显示'Aborting commit due to empty message'

有没有办法解决这个问题,所以我可以在管理 windows 文件夹时使用 sublime text 3 作为我的编辑器和来自 cygwin 的 git?

感谢您的帮助。

【问题讨论】:

    标签: python git github cygwin sublimetext3


    【解决方案1】:

    Windows 上安装的 Sublime Text 无法使用开箱即用的 cygwin 路径。

    您可能需要一些包装脚本来将 cygwin 路径转换为 ​​Sublime Text 的 Windows 路径。 它可以使用cygpath 来做到这一点。

    类似这样的:

    git config --global core.editor /path/to/editor_wrapper.sh

    editor_wrapper.sh

    #!/bin/bash
    /cygdrive/c/.../path/to/sublime_text $(cygpath -w "$1")
    

    注意: 我相信这不是唯一的方法,但它清楚地表明了方法。

    【讨论】:

    • 因此您创建了一个 .sh 文件来处理 cygwin 路径(使用 cygpath... 必须对此进行调查)。将 editor_wrapper.sh 文件放置在哪个目录中?
    • cygwin 可以访问的任何内容,例如~/editor_wrapper.sh
    • 谢谢!重新审视的问题......没有运气。我在 root (~) 中打开 VI,并使用 sublime text 3 目录路径 (C:\Program Files\Sublime Text 3) 创建了 editor_wrapper.sh 文件。运行 git config,然后提交并收到以下错误:error: cannot run editor_wrapper.sh: No such file or directory。 错误: 无法启动编辑器 'editor_wrapper.sh' 尝试在我的 git 存储库中创建此文件,还检查了我的根文件夹中的那个。我确实按照您在上面输入的方式运行了 git config (git config --global core.editor editor_wrapper.sh)。尝试使用“subl”而不是 core.editor 进行 git config ..
    • 嘿。我刚刚编辑了答案以使其更具可读性,您还应该提供包装器的完整路径。例如。 git config --global core.editor ~/editor_wrapper.sh
    猜你喜欢
    • 2016-11-17
    • 2019-11-22
    • 2011-09-07
    • 2021-03-06
    • 2015-10-30
    • 1970-01-01
    • 2013-04-16
    • 2015-01-30
    • 1970-01-01
    相关资源
    最近更新 更多