Storing binaries elsewhere
Though binaries can't easily be diffed, there is nothing to prevent them from being stored in a Git repository, and there are no issues in doing so. However, if one or more binaries in a repository are updated frequently, it can cause the repository to grow quickly in size, making clones and updates slow as a lot of data needs to be transferred. By using the clean and smudge filters for the binaries, it is possible to move them to another location while adding them to Git and fetch them from that location while checking out the specific version of the file.
Getting ready
We'll use the same repositories as in the previous example, but the no_binaries
branch:
$ git clone https://github.com/dvaske/attributes_example.git $ cd attributes_example $ git checkout no_binaries
How to do it...
First, we need to set up the clean and smudge filters for the files. Then, we are only going to run the filter on jpg
files in this example, so let's set it up and create the configuration...