V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
echooo0
V2EX  ›  程序员

Git check out 子模块的问题

  •  
  •   echooo0 · May 8, 2021 · 2066 views
    This topic created in 1824 days ago, the information mentioned may be changed or developed.

    使用 git check out 包含子模块的代码,使用的是如下命令

    git checkout --recurse-submodules -b develop 991234
    

    但是子模块 submodule 的 url 以前发生过变化,导致无法 checkout 成功,提示如下错误

    atal: failed to unpack tree object 1241245aabbb
    error: Cannot update submodule:
    	aaaa/bbb
    

    不知道这种应该如何解决

    5 replies    2021-05-17 16:22:56 +08:00
    billlee
        1
    billlee  
       May 8, 2021
    编辑父仓库的 .gitmodules
    echooo0
        2
    echooo0  
    OP
       May 8, 2021
    @billlee 只能手动编辑这种嘛?
    billlee
        3
    billlee  
       May 8, 2021
    @echooo0 编辑这个没有任何问题

    我日常手动编辑这个文件把里面的绝对 URL 改成相对 URL, 以便同时兼容 ssh 和 http
    786375312123
        4
    786375312123  
       May 9, 2021
    @echooo0 为啥要手动编辑,这个文件一般来讲是放在主模块里,你更新主模块,就应该自动更新。
    he1a2s0
        5
    he1a2s0  
       May 17, 2021
    或者 git submodule set-url 更新一下 url,跟手动编辑结果一样
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   914 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 21:56 · PVG 05:56 · LAX 14:56 · JFK 17:56
    ♥ Do have faith in what you're doing.