Когда я разрабатываю код, у меня обычно есть куча «личных» файлов, которыми я не хочу делиться с другими разработчиками, потому что они свойственны моему уникальному рабочему процессу.Эти файлы включают в себя личные файлы Makefile, небольшие тестовые сценарии, файлы тестовых данных и т. Д. Это не было страшной проблемой: я просто перечисляю эти файлы в .gitignore, и больше мне не нужно беспокоиться о моих коротких путях.
Однако, все не так уж и безразлично.Например, если я клонирую этот репозиторий, мои личные тестовые файлы не приходят для поездки, а также эти файлы не имеют версий.То есть, по мере изменения кода мои тестовые файлы и сценарии, а также файлы Makefile должны изменяться вместе с кодом.Если я вернусь к более ранней версии кода, мои скрипты и тестовые файлы будут повреждены.Или, если я работаю из дома и вытаскиваю клон Git на свой рабочий компьютер, эти личные файлы не переносятся на мой домашний компьютер.
Итак, что было бы действительно интересно, если бы Gitимел представление о отслеживаемых и общих файлах как отличающихся от отслеживаемых и личных файлов.Когда я отправляю в общий репозиторий, приватные файлы не передаются, даже если Git отслеживает их и создает версии для меня.И когда я клонирую репозиторий, у меня будет выбор: получить только общие файлы или как общие, так и личные файлы.
Я готов рискнуть предположить, что я просто SOL , насколько эта функция идет, но ты никогда не знаешь.Git, кажется, делает примерно все , так что, возможно, у него тоже есть способ сделать это, и я только что остался вне цикла.
Один из возможных способов обойти этосоздайте подкаталог для этого материала (например, «dougs-personal-crap») и скажите моим коллегам не связываться с ним.Но я действительно не хочу проветривать свое грязное белье, особенно если есть лучший способ.