What to exclude while using Unity3d with Git?

I looked over the internet and all the websites say to exclude different things. What should I exclude in the .gitignore?

Here’s our standard .gitignore file:

# Ignore the contributor's local assets folder, subfolders, and files
ProjectName/Assets/~Local/*
ProjectName/Assets/~Local/**/*
ProjectName/Assets/~Local.meta

# Ignore Library files
ProjectName/Library/*
ProjectName/Library/**/*

# Ignore local build files
ProjectName/obj/*
ProjectName/obj/**/*
ProjectName/Temp/*
ProjectName/Temp/**/*

# Ignore local project files
ProjectName/*.csproj
ProjectName/*.pidb
ProjectName/*.sln
ProjectName/*.suo
ProjectName/*.unityproj
ProjectName/*.userprefs

The ~Local folder is used by our team for changes that we’re not ready to check in and is optional. All of the others can be rebuilt from the files in the Assets and ProjectSettings folders (assuming, of course, that .meta files are turned on).