访问被拒绝在Windows 7上为管理员帐户提交文件

时间:2010-12-29 03:19:10

标签: windows git windows-7 access-denied administrator

我想在我的Windows 7框中删除由git创建的git存储库(.git文件夹)。它说拒绝访问.git / refs / header文件夹。

我打开一个具有管理员角色的控制台,发出命令“takeown / F heads / A / R”,它仍然显示“ERROR:Access is denied。”,我也无法通过GUI安全对话框进行操作。

有什么建议吗?

此致 绿色

1 个答案:

答案 0 :(得分:17)

访问被拒绝错误可能意味着该文件正被另一个进程使用,对于GIT存储库而言,这似乎比文件权限问题更可能。

(我假设GIT就像SVN,其中存储库中的每个文件都是由您自己的帐户使用标准权限创建的。如果不是这样,那么我可能是错的。)

  • 作为第一步,以管理员身份运行Process Explorer并按Ctrl-F打开一个窗口,您可以在其中键入文件名并查看哪些进程(如果有)打开该文件。

    当我说“以管理员身份运行”时:

    我不仅仅意味着以管理员身份登录。 Windows 7的UAC意味着管理员帐户默认情况下不会运行具有完全管理员权限的内容。右键单击procmon.exe并选择“以管理员身份运行”选项。

    我假设您已经熟悉这个以管理员身份运行命令提示符。 如果您刚刚更改为管理员帐户,但未在命令提示符下使用“以管理员身份运行”,则可能是该命令提示失败的原因。命令提示符应显示“管理员:”如果它被正确提升,则在其窗口标题中,除非UAC完全关闭。

  • 如果列出了一个或多个进程,请确认列表中的完整文件路径(如果磁盘上的某些其他文件具有相似的名称)。

  • 关闭所有打开文件的进程。如果可以,请尝试正常关闭它们。作为最后的手段,您可以最终完成任务。如果它是作为另一个用户/帐户运行的进程,则它可能是您可以停止的服务。

    (确保查看所有用户的查看 - >显示流程,然后通过PID列找到有问题的流程。如果您认为这是一项服务,请将鼠标悬停在该服务上,然后会出现工具提示,告诉您姓名( s)正在运行的任何服务。)

  • 如果您找不到访问该文件的任何进程,或者关闭它们仍会导致访问被拒绝错误,并且您肯定尝试从提升的命令提示符中删除,那么您可能想要尝试告诉Windows下次重新启动时删除该文件。您可以使用SysInternals MoveFile工具。