我认为SHA1值在任何平台上都是相同的。今天我遇到了一个问题,希望在这里能得到一些澄清。
我的测试字符串是:
在CMD(Windows 10)中:
在PowerShell 5.0(Windows 10)中:
我现在很困惑git在这里是如何工作的,因为文件内容的SHA1密钥在不同的环境中非常不同,我不确定如果我将一个在 Powershell 中构建的项目克隆到我的Linux机器上是否会起作用?这种行为在git或SHA1中是否是预期的?
我的测试字符串是:
'Apple Pie'
在Bash中:echo 'Apple Pie' | git hash-object --stdin
23991897e13e47ed0adb91a0082c31c82fe0cbe5
在CMD(Windows 10)中:
echo 'Apple Pie' | git hash-object --stdin
f554ff1fdde0e3c2ca9f67849791456302b5c12b
在PowerShell 5.0(Windows 10)中:
echo 'Apple Pie' | git hash-object --stdin
157cb7be4778a9cfad23b6fb514e364522167053
我现在很困惑git在这里是如何工作的,因为文件内容的SHA1密钥在不同的环境中非常不同,我不确定如果我将一个在 Powershell 中构建的项目克隆到我的Linux机器上是否会起作用?这种行为在git或SHA1中是否是预期的?
echo
命令上,而不是实际文件内容上,非常感谢。 - Dilshad Abduwaliprintf "'Apple Pie' \r\n" | git hash-object --stdin
。在DOS和现在的CMD中,解析引号和空格取决于各个程序。 - that other guy