windows - 带符号链接(symbolic link)的 Git init

标签 windows git docker bitbucket symlink

我正在尝试在 Docker 容器 (Windows Nano) 的上下文中运行 Atlassian BitKeeper。主目录存储在容器上下文之外。因此,它在其中显示为符号链接(symbolic link)。

使用符号链接(symbolic link)目录中包含的存储库运行 git init 会导致错误:

Invalid path '/ContainerMappedDirectories': No such file or directory.

这是与符号链接(symbolic link)相关的根目录列表部分:

03/09/2017  02:22 PM    <SYMLINKD>     host [\\?\ContainerMappedDirectories\06928B3D-65E2-4BA6-AADB-7851FD273002]

最佳答案

我在 Docker 容器内运行 Jenkins(使用 Git)时遇到了同样的问题。这曾经对我有用,但在一些 Git 更新后就停止了,所以我比较了几个版本,我注意到在容器内工作的最后一个版本是 2.11.1。

这是证据 - C:\temp 是从 docker 主机挂载的:

06/06/2017  04:44 PM    <SYMLINKD>     temp [\\?\ContainerMappedDirectories\3090B08B-4EA2-49CB-8C30-227E982EC311]

尝试使用 2.11.1:

PS C:\Program Files\git\bin> .\git.exe --version
git version 2.11.1.windows.1
PS C:\Program Files\git\bin> .\git.exe init C:\temp\git11.1\
Initialized empty Git repository in C:/temp/git11.1/.git/

尝试使用 2.12.1:

PS C:\Program Files\Git\bin> .\git.exe --version
git version 2.12.1.windows.1
PS C:\Program Files\Git\bin> .\git.exe init C:\temp\git12.1\
fatal: Invalid path '/ContainerMappedDirectories': No such file or directory

与 MinGit 相同:

PS C:\> .\Min\MinGit-2.13.0-64-bit\cmd\git.exe init C:\temp\MinGitRepo\
fatal: Invalid path '/ContainerMappedDirectories': No such file or directory

PS C:\> .\Min\MinGit-2.11.1-64-bit\cmd\git.exe init C:\temp\MinGitRepo\
Initialized empty Git repository in C:/temp/MinGitRepo/.git/

很难说发生了什么变化,我将深入研究 Git 变更日志,因为目前使用 2.11.1 对我来说似乎是一个不错的解决方法。让我知道它是否对您有用。

关于windows - 带符号链接(symbolic link)的 Git init,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42705748/

相关文章:

git diff - 只显示远程的新内容

Git:切换分支时保留忽略的文件

git - 如何从 git merge --log 获取完整消息

docker - 在不停止整个容器的情况下停止在 docker 容器内运行的服务

html - 一个网页,可以让用户从中下载某个文件,但不会透露该文件的位置——这有可能吗?

windows - 如何使用 Visual Studio 进行修补程序部署?

windows - 从 Windows 批处理部分意外退出

c++ - Windows:构建同一 DLL 的 32 位和 64 位版本

docker - 无法从不同机器(在同一网络中)访问docker selenium hub [docker selenium网格不起作用]

docker - Kubernetes是实现自己的容器还是使用Docker容器,还是两者都使用?