Rya*_*ndy 319 git git-rebase
我正在使用git,并做了一个小提交,然后是一个大提交.git rebase在推动它们之前,我决定将两个提交压缩在一起.(我以前从未这样做过.)
所以我做了:
git rebase -i HEAD~2
这给了我我的编辑,在那里我选择了先前的提交并压缩了后一个提交.当我救了,git说:
错误:无法统计' 文件名 ':权限被拒绝
无法将sha1应用于以后的提交 ... 该提交的初始文本行
现在:
git log.git status 告诉我,我"目前不在任何分支机构."发生了什么!?我如何解决它?
小智 606
尝试关闭打开文件夹的所有程序,例如编辑器,资源管理器窗口,命令提示符和FTP程序.这总能解决我在Windows上的问题.
Man*_*Jan 259
只需关闭您的IDE(VISUAL STUDIO/ATOM等).它可能会奏效
CB *_*ley 183
我在Windows上只看到过这个错误,它似乎意味着git在尝试应用补丁时阻止git修改文件.
Windows倾向于给予进程对文件的独占访问权限,而实际上并不是必需的,过去病毒检查程序一直是怀疑的来源,但我从来没有证明这一点.
可能最容易做的就是中止并再试一次,希望下次不会发生这种情况.
git rebase --abort
Run Code Online (Sandbox Code Playgroud)
您可以尝试使用git apply和了解git在执行操作之前实际尝试执行的操作,git rebase --continue但是不诚实地我不建议这样做.我见过这种情况的大多数时候,尝试过的事情比偶然错过或搞砸了更好.
Mik*_*lin 24
当我在我的机器上看到这个时,它比仅仅"某个进程打开文件"更糟糕.文件的实际所有权被提升到我(以管理员身份运行)只能在重新启动后访问它的程度.
最近我可以说,IIS是问题的一部分.如果我在需要修改大量文件的两个主要分支之间切换,git将删除一个文件或目录(通常是DLL),而IIS正试图用它做一些事情.此时,IIS进程会自动使用已锁定且似乎由nobody拥有的版本覆盖磁盘上的文件.
此时停止IIS不会这样做.我发现最好的办法是重新启动,并记得在将来更改主要分支之前停止IIS.
我知道这并没有真正回答这个问题,但可能对其他人有所帮助.
rom*_*nlv 13
在Windows上,它可以是阻止这些文件的TortoiseGIT进程.打开任务管理器并结束进程TGitCache.exe.
The*_*eIT 13
我只是偶然发现了这个问题的答案 - 这个错误是一个虚假的错误.#error:无法统计'reddit/app/views/links':权限被拒绝
这就是我得到的 - 当试图合并时.我阅读了一些答案然后才实现 - 我所要做的就是关闭我的代码编辑器,它恰好是Atom.
一旦关闭编辑器 - 我再次运行"git merge"并且繁荣,它起作用了.
多么无意义的错误:(
Cri*_*nja 10
我偶尔在Windows中发生这种情况
错误:无法统计“文件名”:权限被拒绝
大多数情况下,我会打开多个bit bash实例,而git bash实例之一位于我要从其获取的远程分支中不存在的目录中。
关闭一个实例以外的所有git bash可以为我解决问题。
在Win 10中使用SourceTree,通过关闭Atom编辑器解决了该问题。
错误重现:
当您有预处理软件/应用程序观察项目时,通常会发生这种情况,例如Prepros或Codekit.此外,如果当前正在编辑项目中的文件,Atom和Sublime(甚至是Notepad ++)可能会导致这种情况发生.
解决问题的最简单方法是关闭项目文件打开的任何内容,合并分支,然后重新打开它们以刷新它.这也将避免程序不再发生任何已发生的更改的任何问题,从而迫使您手动刷新项目.
尝试关闭 IDE(例如 Sublime、VS Code、Webstorm...)并关闭打开该文件夹的程序(例如 CMD、Powershell、CMDer、Terminal...)将解决该问题。