簡體   English   中英

git log --pretty = format Windows奇怪的行為

[英]git log --pretty=format windows strange behavior

我將問題降低到最低限度。 在linux下,這樣的git命令:

git log --pretty=format:{"commit":"%H"}

給我一個有效的json元素,所以像這樣:

{"commit":"20cafdecc9898113ac6215ae70cd7622dc2cae3b"}

在Windows下,我獲得了一個無效的json元素,因為在某種程度上,Windows似乎刪除了雙引號元素,因此獲得:

{commit:20cafdecc9898113ac6215ae70cd7622dc2cae3b}

您知道為什么嗎,或者如何解決使其在兩個操作系統下都能正常工作? 謝謝!

我假設你在Linux shell不是一個bash外殼,因為我bash在Linux上殼給我的輸出上的Windows一樣-沒有雙引號。

雙引號是大多數shell的特殊字符-因此您必須通過“轉義”或“引用”來保護它們。

git log --pretty=format:{\"commit\":\"%H\"}
git log --pretty='format:{"commit":"%H"}'

這適用於Linux上的bash和Windows上的bash。 我尚未在Windows上使用cmd對其進行測試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM