Pull to refresh

Comments 10

Всегда путался в этих понятиях, спасибо!

Если коротко: в Windows надо всегда ставить autocrlf=true. Это означает что в репозитории всегда будет храниться LF. А при извлечении из репозитория - произойдет преобразование в CRLF. И это обеспечит консистентность если в будущем появится еще один разработчик, работающий в Linux или MacOS. Или если даже единственный разработчик вдруг возьмет макбук/установит Linux и т.д.

Остальное - как правило ненужная гибкость, которая востребована если вы точно понимаете что и зачем делаете.

UFO just landed and posted this here

Смотря как настроены средства разработки на винде. Если они умеют работать с LF - то да, можно так.

А какое значение у core.autocrlf по умолчанию?

В исходном коде:

enum auto_crlf auto_crlf = AUTO_CRLF_FALSE;

Как я понимаю, это значит, что умолчание — core.autocrlf=false.

Об этом написано в ответе на этот вопрос на сайте «Stack Overflow». Там еще отмечено, что в «Windows» установщик требует при установке явного выбора значения этого параметра. Сделанный выбор записывается в файл настроек программы «Git».

«Репозиторием» обычно называют папку (хранилище, базу данных), в которой хранится исходный код программы (папку проекта).

Первый раз вижу такую интерпретацию. Непонятно зачем вы вводите новую сущность.

Не усложняйте. Папка проекта это просто рабочая папка (рабочий каталог, Working Directory). Причем рабочих папок может быть несколько. Это каталоги, в которых лежит распакованный из репозитория код проекта. А репозиторий это собственно каталог .git, он же Git-репозиторий. Репозиторий не обязан лежать внутри папки проекта.

Я заметил, что термин «репозиторий» применяется в программировании не только в связи с программой «Git» или системами управления версиями вообще. Поэтому такая интерпретация. Изначально (на английском языке) это слово означает просто «хранилище». Поэтому я решил, что, в принципе, любую папку на компьютере можно назвать «репозиторием».

Вот даже в англоязычной википедии существует статья про репозитории для распространения дистрибутивов программ (software repository) и существует отдельная статья про репозитории в области систем управления версиями (repository (version control)). А что такое может быть репозиторий для распространения дистрибутивов программы? В простейшем случае это может быть просто папка с файлами, к которой открыт доступ из сети.

Вообще, мне кажется, что многие термины определены как-то расплывчато. Думаю, мне удалось передать смысл. В конце концов, вы, ведь, поняли, о чем идет речь.

Не, ну вы-то писали статью конкретно про гит. И использовать слово "репозиторий" не в том значении в котором оно применяется в котексте гит - это странно, это запутывает.

Вы правы, что логично при написании статьи о Git использовать подходящие для этой области термины. Но я слово «репозиторий» как таковое использовал только один раз в статье, для упоминания о его смысле в других областях при программировании.

Sign up to leave a comment.

Articles