GIT Rebase Fatal on Multiple 0.5GB Binary Files

柔情痞子 提交于 2019-12-04 00:53:01

In the comments you've said that doing the same with a computer that contains more, in this case 32GB, memory has resolved the issue. Based on that, I would conclude that you just had too little memory available to do this on the machine you first tried it with.

You won't know if your machine is big enough until failing on the 'git rebase' but by that point your directory is in a munged state. During the rebase another branch was checked out (main) so that the 'secc' changes could be applied to it. Recover, and proceed with:

git checkout secc

Having failed on the rebase, as you've noted you've got two options:

  1. If rebase is not required, go with 'git merge main'
  2. Get a bigger machine and retry 'git rebase main'

You don't have a practical option to ignore the 0.5GB files, do the rebase, and then get those giga files back.

Try putting these in .git/info/attributes:

# whatever gets them...
yourfile binary -delta merge=binary
*.yourext binary -delta merge=binary

that'll cause merge conflicts if those files change, and you'll have to figure out what to do with them. check the gitattributes and rebase doc for other merge strategies, I'm not even going to name the dangerous ones here.

I'm not sure it's the actual merge trying to get the whole thing in core from running, but it seems worth a try.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!