I noticed many of the UI features are written in JavaScript, and I would potentially like to help with that. But when I clone the brave/brave-browser
repo and run npm init
, it appears to want to download the entire Chromium repo including all of its history.
That shouldn’t really be required in order to build a current release, should it? Git has the option of creating “shallow” clones, which basically consist of a snapshot of a recent commit. As far as I know, git pull
will still work on these and pull in new commits, the repository will just lack historical commits.
Is it possible to build Brave using such a shallow clone of Chromium in order to save bandwidth and disk space? If so, how would I go about it (since Chromium is downloaded by a script)?
EDIT: it looks like the Chromium download is done by running gclient sync --nohooks --revision src/brave@master --revision src@refs/tags/98.0.4758.66 --force --reset --with_tags --with_branch_heads --upstream
. I poked around that gclient command and it appears that it has a --shallow
option.
So I guess the question I’m asking is can I run the above command, replacing --with_branch_heads
(and potentially --with-tags
) with --shallow
?