A common workflow for using Git LFS is to declare which files are intercepted through a rules-based system, just like .gitignore
files.
Much of time, wildcards are used to pick certain file-types to blanket track.
e.g. git lfs track "*.psd"
When a file matching the above pattern is added them committed, when it is then pushed to the remote, it will be uploaded separately, with a pointer replacing the file in the remote repository.
After a file has been tracked with lfs, your .gitattributes
file will be updated accordingly. Github recommends committing your local .gitattributes
file, rather than working with a global .gitattributes
file, to help ensure you don't have any issues when working with different projects.