Ответ 1
Эта страница справки GitHub относится к этой конкретной теме и позволяет выполнить одну из следующих шагов, чтобы правильно настроить Git.
В принципе, если вы работаете с Mac/Linux, используйте
$ git config --global core.autocrlf input
Если вы скорее парень Windows, используйте
$ git config --global core.autocrlf true
Примечание. Это позволит конвертировать окончательные строки на ходу, выполняя проверку или фиксацию и гарантируя, что ваши текстовые файлы будут иметь окончание строки LF в вашем репозитории, в то время как у вас есть собственные окончания строки в вашем рабочий каталог.
Примечание 2. Это будет не переписать историю вашего репозитория. Существующие фиксации в репо сохраняют потенциально смешанные окончания линий.
Примечание 3. Убедитесь, что каждый коммиттер выполняет этот шаг конфигурации до их следующего фиксации.
Существует альтернативный подход, который не включает принуждение каждого изменить свою конфигурацию. Это требует добавления в ваш репозиторий определенного имени файла .gitattributes. Подробнее о его теме в официальной Git официальной документации gitattributes.
Примечание 4: Тим Клем, githubber, опубликовал очень подробное сообщение в блоге (Запомните конец вашей линии) о концах строк, связанных конфигурационных записях и преимуществах gitattributes. Абсолютно необходимо прочитать, если вы готовы хорошо понять концепции, "почему" и внутреннюю технику.