gpt4 book ai didi

git - Cygwin git 将错误的路径传递给我的编辑器以获取提交消息

转载 作者:太空狗 更新时间:2023-10-29 13:20:03 26 4
gpt4 key购买 nike

我在 cygwin 下使用 git,但它没有将正确的路径传递给我的编辑器以获取提交消息。

我在位于我的驱动器上的测试存储库中工作:

d:\X\git\myproject

在 cygwin 终端中,它显示此路径为:

/cygdrive/d/X/git/myproject

当我在没有 -m 标志的情况下提交时(这样它会打开我的编辑器让我输入消息),我的编辑器会尝试将文件写入错误的路径:

d:\cygdrive\d\x\git\myproject\.git\commit_editmsg

注意添加“\cygdrive\d”

如何让 git 将 windows 路径(而不是 cygwin/unix 路径)传递给我的编辑器?

最佳答案

cygwin 有一个名为 cygpath 的实用程序,可用于在 cygwin 和 native Windows 文件路径之间进行转换。例如:

$ cygpath --windows /cygdrive/d/X/git/myproject
D:\X\git\myproject

我们将创建一个脚本,该脚本使用此实用程序在将路径传递给您的编辑器之前对其进行转换。我们将以 emacs 为例,假设它安装在 C:\emacs 中。创建一个名为 ~/bin/git-editor.sh 的文件:

#!/bin/sh
/cygdrive/c/emacs/bin/emacsclientw.exe $(cygpath --windows "${1}")

(因为这是 Windows,我们不需要在此文件上设置可执行标志)

现在,将您的 git 编辑器设置为指向此脚本:

$ git config --global core.editor "~/bin/git-editor.sh"

关于git - Cygwin git 将错误的路径传递给我的编辑器以获取提交消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32081685/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com