если код не может получить произвольный человек - он не открытый :)
так что думай в другую сторону.
можно сделать "открытый" код в виде доступности на рид-онли, а запись в репозиторий отдать комерсам. тогда что-то искомое получится.
в принципе лицензии регламентируют доступ пользователя к исходным кодам.
а условия внесения пользовательских изменений в оригинальный исходный код оставляют за автором.