有时,可能需要执行以下命令将存储库克隆到本地。repo大约是100 is。那么,有没有办法/如何设置‘克隆’远程服务器'examplecode.org‘中的代码库到本地服务器,这样它就不需要远程获取代码库了?
最初,要执行的命令是:
$repo init -u git://examplecode.org/platform/manifest.git -b release -m ${MyTag} --repo-url=git://examplecode.org/tools/repo.git --repo-branch=my-branch-stable
$repo sync -f -j${CPUS}假设192.168.1.100是本地网络中的服务器,理想情况下,在设置之后,命令将如下所示:
$repo init -u git://192.168.1.100/platform/manifest.git -b release -m ${MyTag} --repo-url=git://192.168.1.100/tools/repo.git --repo-branch=my-branch-stable
$repo sync -f -j${CPUS}repo的意思是git-repo
非常感谢
发布于 2019-12-17 08:40:23
你的回购是100 GB?如果这不是一个打字错误,你可以考虑减小大小的方法。
一个好的开始方法可能是通过寻找逻辑方法来拆分现有的代码(可能还有很多非代码...)跨多个存储库。代码库是否足够模块化,以便您可以将不同的模块移动到它们自己的存储库?
说到非代码,存储库中是否保存了大量大型二进制文件?也许这些可以从版本控制系统中删除,并转移到其他地方,如LAN驱动器或sharepoint站点。在二进制文件中,版本控制的许多好处都会丢失,最终会占用大量的空间。
最后,您可能想要run git-gc to clean/optimize the repository。如果你正在自托管一个集中的“主”服务器(而不是使用Github或类似的东西),这一点尤其正确,因为这可能不会定期自动发生。
编辑
我意识到这并没有直接回答所说的问题。但似乎OP可能还有其他一些领域需要探索,以使寻求的解决方案不那么紧迫。
编辑2
从评论中可以看出,对于git做了什么,以及repo (git的安卓包装器)在git之上提供给你的是什么,似乎存在一些混淆。首先,也是最重要的,您可以在repo和git命令之间自由切换。使用其中一个并不会阻止您使用另一个。repo脚本只是一个包装器,它简化了一些在为安卓开发时很常见的操作,但使用git手动完成这些操作很麻烦。除了这些操作之外,大多数存储库操作可能会使用标准的git命令来完成。
关于原始问题,您所描述的是git clone命令:
NAME
git-clone -将存储库克隆到新目录中
概要 git克隆-s -q --bare -o -u --dissociate -深度--无单分支]--无标记--递归子模块=]--[no-]浅子模块--
描述
将资料库克隆到新创建的目录中,为克隆的资料库中的每个分支创建远程跟踪分支(使用git branch -r可见),创建并检出从克隆的资料库的当前活动分支派生的初始分支。
在克隆之后,不带参数的普通git fetch将更新所有远程跟踪分支,而不带参数的git pull将另外将远程主分支合并到当前主分支中...
由于您特别提到希望在本地网络上拥有代码库,因此您将首先克隆存储库,然后提取所有分支:
git clone [remote URL]
git pull --all完成后,您可以使用任何repo和常规git命令来管理存储库的本地副本。
发布于 2019-12-30 08:55:31
我找到了两种方法:
repo的--mirror选项创建本地镜像,然后使用--reference通过grokmirror引用镜像grokmirrorhttps://stackoverflow.com/questions/59365960
复制相似问题