#1 add protect by clean and .gitignore