На репо:
Вы должны использовать репозиторий VCS как можно скорее.Он не только позволяет создавать резервные копии за пределами сайта, но и позволяет отслеживать изменения.Чтобы узнать, когда была введена ошибка.
Наличие VCS, особенно распределенной VCS, такой как Mercurial, изменит ваш код.Вам не нужно быть осторожным, чтобы не сломать вещи, потому что у вас всегда есть старая версия, к которой вы можете вернуться.Если по прошествии нескольких недель или месяцев вы решите, что определенный курс разработки был плохой идеей, вы можете перемотать все назад до какого-то предыдущего момента.
Обычно вы должны совершать каждый день или каждыйраз вы закончите задачу.Например, у вас может быть 4-часовое задание «написать этот класс и заставить его работать».Вы совершаете после этого.Когда вы закончите на день, вы делаете это.Я бы не советовал делать коммит в некомпилированном состоянии, поэтому вам следует постараться остановиться на тот день только тогда, когда все еще собирается.
Что касается игнорирования, вы должны игнорировать вещи, которые вы не намереваетесь делатьсовершить.Вещи, которые вы не хотели бы в репо.Сгенерированные файлы, временные файлы, вещи, которые вам не нужны.
В репо должно быть 100% информации, необходимой для создания проекта с нуля (за исключением внешних зависимостей).
По лицензиям:
Я бы сказал, что очень грубо создавать публичный репозиторий без какой-либо лицензии.Без лицензии это означает, что любой, кто даже вытаскивает из репо (что вы и предлагаете, обнародовав), является нарушением ваших авторских прав без прямого, явного разрешения с вашей стороны.
Так что либо посмотрите накак работает авторское право и выберите лицензию, чтобы выпускать свои материалы или сохранять свои репозитории закрытыми.