[英]Git for Windows changes commit message?
做完之后
git commit -am '/logs whatever'
我最終得到了提交消息C:/Program Files/Git/logs whatever
。 這是怎么發生的? 通過谷歌搜索諸如“git commit message autocomplete”之類的內容,我沒有成功找到任何相關信息。
$ git --version
git version 2.20.1.windows.1
$ bash --version
GNU bash, version 4.4.23(1)-release (x86_64-pc-msys)
附加調查路徑不一定存在,它只是附加到C:/Program Files/Git
,但如果存在,事情可能會有所不同(注意/usr/
,兩個路徑都存在):
$ git commit -am '/bin/git.exe something'
[master 22f9915] C:/Program Files/Git/usr/bin/git.exe something
顯然,這是一個已知問題。 Git for Windows 維護者 Johannes Schindelin 描述了它和可能的修復:
如果您指定以斜杠開頭的命令行選項,POSIX-to-Windows 路徑轉換將啟動,例如將“
/usr/bin/bash.exe
”轉換為“C:\\Program Files\\Git\\usr\\bin\\bash.exe
”。 當不需要時——例如“--upload-pack=/opt/git/bin/git-upload-pack
”或“-L/regex/
”——你需要臨時設置環境變量MSYS_NO_PATHCONV
,像這樣:
MSYS_NO_PATHCONV=1 git blame -L/pathconv/ msys2_path_conv.cc
或者,您可以將第一個斜杠加倍以避免 POSIX 到 Windows 路徑轉換。
即使在您的情況下,這不是這樣的路徑,但消息以斜杠開頭的事實必須觸發此行為。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.