在更新到最新的Windows (1.6.2中的2.5.0)之后,我发现我无法重新定位一个分支:
C:\core\guidewire\Dev\2.4>git checkout fhcf-assumptiondate && git rebase master
Previous HEAD position was d032e17... Merge branch 'de8041'
Switched to branch 'fhcf-assumptiondate'
First, rewinding head to replay your work on top of it...
fatal: C:\Program Files\Git\mingw64/libexec/git-core\git-am cannot be used without a working tree.关于这个问题的注释暗示了Git安装冲突,但是旧版本现在已经完全删除了,包括一个挥之不去的DLL和检查陈旧的环境vars。
查看git脚本,我发现错误消息来自使用git rev-parse --is-inside-work-tree的git-sh-设置中的测试。直接咨询rev-parse表明,它似乎不理解我真的在工作副本中:
C:\core\guidewire\Dev\2.4>dir .git
Volume in drive C is System (Local)
Volume Serial Number is D4EC-4ED4
Directory of C:\core\guidewire\Dev\2.4
08/04/2015 21:16 27 .git
1 File(s) 27 bytes
0 Dir(s) 155,451,965,440 bytes free
C:\core\guidewire\Dev\2.4>git rev-parse --is-inside-work-tree
false...Except一些命令能够正确地区分不同之处:
C:\core\guidewire\Dev\2.4>git status
HEAD detached from refs/heads/fhcf-assumptiondate
nothing to commit, working directory clean
C:\core\guidewire\Dev\2.4>cd ..
C:\core\guidewire\Dev>git status
fatal: Not a git repository (or any of the parent directories): .git是什么让Git对我是否在正确的目录上感到困惑呢?
可能的兴趣点:
--separate-git-dir克隆了该重组子。checkout、status、add、commit和其他公司都没有出现问题。发布于 2015-08-31 19:38:41
要在升级到Windows 2.5之后继续使用现有的(1.6.x创建的)存储库,请更新repo的gitconfig:
[core]
worktree = c:/core/guidewire/Dev/2.4至
[core]
worktree = C:/core/guidewire/Dev/2.4新的Git安装要么获得与旧的不同的路径,要么不再对路径不区分大小写。因此,现有的回购工作树位置会出现错误,因为c:\core\guidewire\Dev\2.4下的任何文件夹都不会有C:\core\guidewire\Dev\2.4的前缀。当前版本的Git源没有显示不区分大小写的迹象,因此msys分叉可能已经修改了路径检查函数,或者在比较之前破坏了所有路径。
https://stackoverflow.com/questions/32280644
复制相似问题