我正在编写一个在Git和ClearCase存储库之间来回移动提交的应用程序。在
Git版本为:1.8.3.msysgit.0
代码是用Python(2.7.5)编写的,我得到一个wierd错误。命令行上的行为与应用程序中同一命令的行为不同:
从我的应用程序日志中,我得到以下信息:
[git diff --name-status -M -z --ignore-submodules 4dc7ad29d69ee2385802b262bfb9a4f1e28f10ac^..4dc7ad29d69ee2385802b262bfb9a4f1e28f10ac --] exit code: 128
Command output for [git diff --name-status -M -z --ignore-submodules 4dc7ad29d69ee2385802b262bfb9a4f1e28f10ac^..4dc7ad29d69ee2385802b262bfb9a4f1e28f10ac --]:
stderr >> fatal: bad revision '4dc7ad29d69ee2385802b262bfb9a4f1e28f10ac^..4dc7ad29d69ee2385802b262bfb9a4f1e28f10ac'
但是,从同一个Windows命令行,没有结果,但也没有错误:
^{pr2}$同样,如果我运行这个命令行(显示差异,而不仅仅是重命名的文件),我得到的输出是:
C:\Temp\gitcc_test>git diff --ignore-submodules 6a4db18a0048db2dfe0e6639cabcdf10e265a1b6..4dc7ad29d69ee2385802b262bfb9a4f1e28f10ac --
diff --git a/hello.txt b/hello.txt
index 3eecb7d..da588dd 100644
--- a/hello.txt
+++ b/hello.txt
@@ -1 +1 @@
-Bonjour!
+Hello!
C:\Temp\gitcc_test>
但是这个命令什么也不返回:
C:\Temp\gitcc_test>git diff --ignore-submodules 4dc7ad29d69ee2385802b262bfb9a4f1e28f10ac^..4dc7ad29d69ee2385802b262bfb9a4f1e28f10ac --
C:\Temp\gitcc_test>
4dc7的父提交。。。是6a4d…,那么4dc7…^为什么不给我任何结果?在
提前谢谢!在
事实证明,在命令行和Python下,不使用“..”并将插入符号放在散列的另一端都是一种处理方法。在
所以这个:
变成这样:
^{pr2}$一切都很好!在
相关问题 更多 >
编程相关推荐