Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google repo工具(主分支)无法从Windows上的本地镜像同步_Windows_Git_Repo - Fatal编程技术网

Google repo工具(主分支)无法从Windows上的本地镜像同步

Google repo工具(主分支)无法从Windows上的本地镜像同步,windows,git,repo,Windows,Git,Repo,最近,谷歌回购工具的主分支已经更新,以支持Windows操作系统。从提交日志中可以清楚地看到: 我能够在Windows上使用repo工具运行repo init和repo sync等基本命令,该工具在Windows上使用MinGW Git。在我的工作中,我需要创建存储库的本地镜像,然后使用它。repo工具可以很好地创建镜像存储库 以下是用于在Windows操作系统的本地驱动器上创建镜像存储库的命令 $ repo.cmd init -u <URL> -b <branch_name&

最近,谷歌回购工具的主分支已经更新,以支持Windows操作系统。从提交日志中可以清楚地看到:

我能够在Windows上使用repo工具运行repo init和repo sync等基本命令,该工具在Windows上使用MinGW Git。在我的工作中,我需要创建存储库的本地镜像,然后使用它。repo工具可以很好地创建镜像存储库

以下是用于在Windows操作系统的本地驱动器上创建镜像存储库的命令

$ repo.cmd init -u <URL> -b <branch_name> -m <manifest_file_name> --mirror --no-repo-verify

$ repo.cmd sync --no-tags
我尝试了其他格式以提供参考价值:

Git format: "/C/git-repo/test/mirror-testing/mirror"
Cygwin format: "/cygdrive/c/git-repo/test/mirror-testing/mirror"
在参考中使用上述格式不会在对象目录中创建替换文件

在上述所有情况下,repoinit time只是表示镜像不被引用,初始化是从网络完成的

当我使用Cygwin Git+Google repo tool stable branch重复相同的测试时,我没有看到任何错误,并且repo初始化时间和同步时间与镜像初始化时间和同步时间相比非常少,这只是表明镜像被引用

cmd是一个批处理文件包装器,用于使用python调用repo工具。 repo.cmd文件包含一行

@调用python%dp0\repo%*

我正在使用Windows7中的Cygwin终端来运行这些命令

需要澄清的是,repo init和repo sync在引用镜像时显示错误,但它通过从外部网络同步成功完成。问题是镜像没有被引用


是否有人在Windows上使用Google repo创建镜像并在其他驱动器中同步作为参考?

我在Windows 7和Windows 10上使用MinGW Git测试了Google repo工具主分支。 repo init和repo sync在这两个操作系统上都可以工作

即使使用-mirror创建本地镜像也能正常工作,但在其他驱动器中引用要同步的本地镜像也无法正常工作,并显示错误:找不到对象目录

需要明确的是,使用-引用本地镜像会显示错误,但它最终会使用网络并忽略本地镜像。最终,该命令成功完成,但它没有使用本地镜像。目前,我还没有在Windows上看到任何解决方法

同时,Windows10在不使用任何虚拟机的情况下本机支持LinuxBash。 WSL,Linux的Windows子系统,是Windows 10的一个免费可选功能,允许Linux程序在Windows上运行。它为您提供了一个Windows版本的bash shell和一个兼容层,允许许多Linux程序在您的Windows机器上本机运行。使用此选项,您可以用Linux Git替换Cygwin Git

我已经在LinuxBash上测试了repo工具,并为repo init、sync、mirror和reference命令安装了Ubuntu发行版,它可以正常工作。事实上,我们使用LinuxBash,所以GooleRepoStable分支可以简单地工作,您不需要使用主分支就可以工作

C:\git-repo\test\mirror-testing\mirror\project/manifest.git\objects
Git format: "/C/git-repo/test/mirror-testing/mirror"
Cygwin format: "/cygdrive/c/git-repo/test/mirror-testing/mirror"