在克隆 git 存储库时,我面临以下致命错误。
fatal: cannot process 'refs/remotes/origin/rr' and 'refs/remotes/origin/rr/ee' at the same time
Run Code Online (Sandbox Code Playgroud)
该代表托管在 AWS 中,我使用该存储库已有一年多了。最近两天我无法克隆这个。
Git 有两种方法将引用写入磁盘:作为文件系统中的文件,以及作为 Packed-refs 文件中的条目。
当您将引用写入文件系统时,您不能同时拥有refs/remotes/origin/r2(因为那将是一个文件)和refs/remotes/origin/r2/qe(因为那将创建r2一个目录)。显然,r2不能同时是文件和目录,所以Git失败。
如果服务器具有这两个引用,则它们可能位于文件中packed-refs,该文件用于引用其对象全部被打包的引用。这比在文件系统中存储大量未更改的引用更有效,因此 Git 在打包存储库时会更新此文件。尽管不可能在所有情况下都使用该文件,但它也不会遇到上面提到的文件目录问题。
如果您只是尝试进行提取而不是完整克隆,您可能需要首先git fetch --prune origin删除不在服务器上的分支。
如果您明确尝试克隆两个分支,则需要跳过指定两个分支,因为这是不可能的。如果您的存储库遇到此问题,最好通知维护该存储库的人员并要求他们删除其中一个引用,因为这会给任何尝试克隆的人带来问题。
如果您不能这样做,您可以使用 克隆git clone --single-branch -b master origin来仅克隆遥控器master的分支(或您喜欢的任何分支)origin,然后根据需要使用 拉入其他分支git fetch。
| 归档时间: |
|
| 查看次数: |
1523 次 |
| 最近记录: |