Before:
$ git log -p -1 88fd399bec | wc
50015 134879 2016086
After:
$ git log -p -1 88fd399bec | wc
1554 6624 229028
$ git log -a -p -1 88fd399bec | wc
50015 134879 2016086
Also add some organization and explanatory comments to this file,
following what we have in zulip-mobile:.gitattributes .
This reverts commit a717ac6d85.
.gitattributes affects the behavior of many Git operations like rebase
and merge and mergetool, not just the output of show and diff.
Treating yarn.lock as binary was making it too hard to deal with
yarn.lock diffs when we actually needed them. Also, the GitHub
website ignores this setting and suppresses large parts of diffs
regardless.
Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
This makes many diffs that touch our JS dependencies in package.json
much, much more readable by suppressing multi-thousand-line changes.
With that kind of change routine, it's clear this isn't a file people
are closely reviewing the text diffs in anyway.
Unfortunately, GitHub's web UI for generating release tarballs uses
`.gitattributes` to control what files to download, and thus if you
downloaded a source tarball for older Zulip versions using the GitHub
web UI, you'd be missing important files.
We fix this for future releases by moving the blacklist out of
.gitattributes.
Fixes#129.
This file hasn't reflected the actual configuration of any live
installation for some time, nor been part of any tests or other
mechanism to regularly validate it, so it's naturally fallen
behind as we make changes to the set of settings and typically
don't update this file accordingly. Just remove it; all the
documentation functions it serves are already served just as
well by prod_settings_template.py and its ample comments.
This moves the analytics module from being a default-off module that
is somewhat difficult to install to being a default part of the
Zulip distribution (both tarballs and what is enabled by default).
We need to update provision.py to compile the messages files, since
they are needed for the new i18n tests. And of course we need to
include the .mo files in release tarballs; there's a bit of complexity
there around how the tarball archives are created.
For git that's not between version 1.8.1.1 and 1.8.1.6, the previous
version did not actually exclude those things from the tarballs on
some git versions, due to changes in the syntax for that file that
were made in 1.8.1.1 and reverted in 1.8.1.6.
Kevin's also adding a check that we're not including any of the files
intended to be excluded here.
(imported from commit 503ec24ed8db4cc32c29bdf5a361e5013a02b995)
This moves the list of removed files from .gitattributes to
tools/build-local-server-tarball because static/ and tools/ are
necessary for update-prod-static, and it seemed best to keep the
entire list in one place.
(imported from commit 2a447cbde29e90d776da43bb333650a40d4d363c)
Arguably this shouldn't live in git at all, but given that it does, we
can at least move it to saner location.
(imported from commit 72aad4c68e15a06bb2dffe54539999b1a8f8f66d)
We need to maintain this by labeling the files that we don't want to
ship with our local server tarballs in the .gitattributes file.
(imported from commit e29f38c477a4cdfd80fbb8e4e95c611b34f3b212)