IMPORTANT READ ME: Git users

We reorganized the Git repository recently. There were lots of gigantic, unused, binary files in the history that we wanted to clean out. The repository had grown to more than 800M and had some very serious problems with GitHub file size limits. Using Cocos2D-X as a git submodule was also very painful since it took more than 30 minutes to check out and gobbled up a lot of expensive SSD storage.

This has been avoided for a long time since it’s a very invasive change that breaks the repository’s history by rewriting it to remove the large files. We were able to reduce the checkout size to less than 80MB (without calculating the size of submodules) which should help things out in the long run. The 3rd prebuilt libraries were packed as a zip file from cocos2d-x-3rd-party-libs-bin/releases. So every time you pull that latest codes from github, please run download-deps.py to make sure the prebuilt libraries you used are updated too.

We made a backup fork of the repository at cocos2d-x-classic. You’ll need to use this if you want Git access to older versions, but please don’t send any Pull Request to this repo.

Since we have already renamed the branch(gles1.1 -> v1, master -> v2, develop -> v3), all Pull Requests sent to master or develop branch were closed by github automatically. We are going to have to dig through the list of closed requests by hand now. It would be help speed things up if you have the time to resubmit them against the new branches. Really sorry for the inconvenience.

If you had cloned Cocos2D-X, you don’t have to clone it again. There is a way to check out a clean v3 branch which is synchronizing upstream/v3.
Suppose you have a remote name called upstream which points to cocos2d-x.

$ git fetch upstream v3
$ git checkout -B v3 upstream/v3     # Replace current v3 branch with the upstream one
$ python download-deps.py

Pull the latest codes from github

$ git pull upstream v3
$ git submodule update --init
$ python download-deps.py      # It will only download the dependence 3rd party libraries when there's a new version
1 Like

Thanks guys for taking care of this. Making the transition will definitely be a bit painful, but nothing compared to the takeaway in the long run.

Cheers,

@Mazyod
Thanks for understanding.