I'll address some points from Zhaph - Ben Duguid's answer:
While you could indeed manage the project with a tool like GitHub (using the Issues feature), you might be better off initially managing the tasks through a tool like Trello which allows you to create tasks and move them through various status (i.e. Planned, In Progress, Review, Complete) in a fairly simple, intuitive user interface.
Github actually has this as well in the form of Project Boards. They integrate with the rest of the GitHub ecosystem, so you can reference issues, pull requests, assign milestones and labels, etc.
Git is a "Distributed Version Control System", which means that anyone can work on any file in the repository on their local machine - this is usually fine when working with text based files, but is not so good when you have binary files, because understanding the differences between two versions is often not easy.
This was a painful point for a long while. However, git now supports Large File Storage. It stores references to the files, so checking changes between commits would show that a file was updated and not waste space trying to calculate diffs. I have used this for images and other binary files and it works well, though it does add a small extra step to upload or download the files when pushing or pulling.
You could easily use LFS for the various binary files the programs use for creating.
Edit: File locking
I would strongly recommend that you consider a Centralised Version Control System such as Subversion (SVN) or Team Foundation Version Control (TFVC or TFS) as this allows your collaborators to "checkout" or "lock" a specific file to say they are working on it, and then when they've updated it, "check-in" their changes - this will (hopefully) get around the main pain points of trying to merge changes in these files, albeit with the caveat that you might still have people check-out a file and then "go dark" and forget to check it back in for a long time.
Git LFS also has file locking (Since 2.0, March 2017). I do agree that it is more complicated than SVN. I do not know if the web platforms or desktop apps (GitHub Desktop) show locks, but I do know that you can lock and manage locks via the command line:
git lfs lock file.ext # lock file
git lfs locks # show locked files
git lfs unlock file.ext # unlock file
You can enable locking for an extension across a repo by adding
*.[extension] lockable to your
.gitattributes file, and if a user has locked a file and disappeared someone with the proper permissions can unlock the file with
git lfs unlock file.ext --force.