AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1115564
Accepted
Dimitris Efst
Dimitris Efst
Asked: 2019-02-05 08:18:50 +0800 CST2019-02-05 08:18:50 +0800 CST 2019-02-05 08:18:50 +0800 CST

WSL Ubuntu 发行版 | 如何解决克隆存储库上的“不允许操作”

  • 772

我正在运行 Ubuntu 18.04,作为 Windows 的子系统。我已经在多台 PC 上做到了这一点,但从来没有遇到过这个问题。我尝试这样做git clone <repo>,我得到了这个:

Cloning into '<repo>'...
error: chmod on /mnt/c/Users/Efsta/Code/<repo>/.git/config.lock failed: Operation not permitted
fatal: could not set 'core.filemode' to 'false'

我尝试了以下方法:

  1. ❯ git config core.fileMode false, 有了这个结果 fatal: not in a git directory

  2. ❯ git config --global core.filemode false

  3. ❯ git config --add --global core.filemode false

似乎没有任何效果。我已经在这里尝试了几个答案,但 WSL 似乎有点棘手。任何人都知道如何解决这个问题?

我也尝试了这个问题的所有内容:https ://stackoverflow.com/questions/1580596/how-do-i-make-git-ignore-file-mode-chmod-changes ,似乎没有任何效果。

clone git chmod windows-subsystem-for-linux
  • 4 4 个回答
  • 92866 Views

4 个回答

  • Voted
  1. Wojtek
    2019-02-15T01:01:48+08:002019-02-15T01:01:48+08:00

    我遇到过同样的问题。尝试这个:

    sudo umount /mnt/c
    sudo mount -t drvfs C: /mnt/c -o metadata
    

    将驱动器号更改为您遇到问题的任何一个。

    • 131
  2. rsteckler
    2020-05-23T19:21:58+08:002020-05-23T19:21:58+08:00

    您可以使用元数据选项在 WSL 下自动挂载您的 Windows 驱动器,该选项允许 git 等应用程序使用 chmod 并修复此问题。

    编辑/etc/wsl.conf(如果它不存在则创建它)。添加以下内容:

    [automount]
    options = "metadata"
    

    然后:

    • 重新启动 Windows
    • 退出任何 WSL 会话,wsl --shutdown从 PowerShell 或 CMD 运行,然后再次启动 WSL
    • 退出你唯一的会话,用 终止它wsl --terminate <distroName>,然后重新开始,

    然后再也不用担心了。

    • 85
  3. Best Answer
    Thomas Ward
    2019-02-05T08:39:17+08:002019-02-05T08:39:17+08:00

    /mnt/c/Users/...位于 Windows NTFS 分区本身上,而不是在 WSL 的ext4格式化系统中。因此,您必须像对待实际 Ubuntu 安装中 USB 记忆棒上的 NTFS 分区一样对待它,并接受 NTFS 的限制。

    NTFS 分区不支持chmod或类似的 Linux 权限命令,并且与实际的 Ubuntu 安装不同,后者不会出错但不会更改任何权限,WSL 不会将此信息转发给您,它只是错误地显示在这里.

    由于 Linux 权限架构并且无法正常工作,您无法在 WSL 中git clone的空间中进行明智的操作。这是当前形式的 WSL 的一个限制。/mnt/c/...chmod

    • 32
  4. ZZX
    2019-08-22T16:30:58+08:002019-08-22T16:30:58+08:00

    我遇到了同样的问题。我的解决方案是在默认的 WSL 位置 git 克隆我的存储库(它可以工作),并使用 Visual Studio Code 远程访问我的 WSL 的存储库。这样你就不必使用 /mnt/c 了。

    链接: https ://code.visualstudio.com/docs/remote/wsl

    • 9

相关问题

  • 如何克隆或复制我的系统驱动器以将其恢复为更大的 HD?

  • git 和 git-core 包有什么区别?

  • Nautilus Git 集成

  • 克隆安装的最佳方式(复制到相同的硬件)

  • 文件权限如何工作?文件权限用户和组

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve