Единственный способ понять эту возможную ситуацию - создать два разных файла, каждый из которых имеет одинаковое имя файла, в независимых ветвях.
i.e. предположим, что ветви master
и dev
уже существуют.
file.txt
до master
dev
, затем снова создайте и зафиксируйте file.txt
до dev
. Теперь, поскольку вы создали два разных файла, git рассматривает их как два отдельных объекта, несмотря на одно и то же имя файла, что лишает его цели. file.txt
из dev
dev
в master
, а low и behold file.txt
все еще существуют в master
, и это имеет смысл, потому что, как я уже сказал, git рассматривает два файла как полностью независимые. обратите внимание, что если вы не удалили file.txt
из dev
и попытались слить, тогда вы получили конфликт слияния, потому что git не знал, как обрабатывать два разных объекта с помощью тот же путь / имя файла.
Если это ваш сценарий, то я буду рисковать высокомерием и сказать, что вы делаете это неправильно;)
Точка контроля версий система должна позволить инструменту управлять вашими различиями между файлом на разных этапах времени, а также соотношением этих изменений с другими файлами в репозитории.
Мое предложение улучшить рабочий процесс в этой ситуации было бы для проверки конкретного файла из другой ветки:
file.txt
в master
dev
, а затем просто захватить конкретный файл из другая ветвь git checkout master -- file.txt
В этой ситуации вы все равно будете находиться на ветке dev
, но теперь добавили file.txt
из ветви master
. dev
dev
в master
теперь удалит file.txt
с master
Для Вашего определенного примера нет никакой потребности волноваться об этом. Веб-браузеры выполняют типографский рендеринг и помещают корректную сумму пространства между периодами и независимо от того, что символ следует (и это отличается в зависимости от следующего символа, согласно использующим кернинг правилам.)
Если Вы хотите разрывы строки, <br/> не является действительно грандиозным предприятием, не так ли?
Не уверенный, что достойно downmod здесь... Вы не должны вызывать два пробелов после периода, если Вы не используете моноширинный шрифт. Для пропорциональных шрифтов rederer использует кернинг правильная сумма пространства после периода. Посмотрите здесь и здесь для детальных обсуждений.
Если Вы действительно хотите, чтобы Ваш пробел был сохранен, попробуйте свойство CSS: пробел: пред;
Или, Вы могли просто использовать <пред> тег в Вашей разметке.
Между прочим, это - хорошая вещь, что браузеры HTML игнорируют пробел в целом, это позволяет нам ясно форматировать исходный код, не влияя на вывод.
Это не может быть очень изящно, но я применяю CSS к <пред> тег.
Всегда существует "пробел" атрибут CSS, но это может быть немного бессистемно.
Можно использовать стилизованное пред блок для сохранения пробела. Большинство WYSIWYG-редакторов также вставляет для Вас...
В целом, хорошо, что браузер игнорирует пробел. Просто просмотрите источник на этом веб-сайте для себя и вообразите, как сумасшедший сайт посмотрел бы, если бы каждое пространство было отображено.
Смотрите на пред тег. Это могло бы сделать то, что Вы хотите.
Необходимо использовать пробел: расфасуйте, чем пробел: пред или С Вашим примером последние решения могут запустить новую строку на "правилах  "; просто, потому что Ваше небьющееся пространство поразило конец строки.
ПРЕД тег может быть допустимое решение, в зависимости от Ваших потребностей. Однако, при попытке использовать 2 правила пространства в предложениях всюду по Вашему сайту, то Вы скоро найдете, что другие символы ПРЕД консервы тега являются переводом строки / возвраты каретки (или отсутствие) испачкает любое моделирование, Вы пытаетесь сделать.
В целом я склонен игнорировать "2 пробелов после предложения" правило, или если бы Вы - сторонник его, я придерживался бы но Вы будете иногда сталкиваться с проблемой, которую заявил Nicolas.
Существует страница относительно этой темы на webtypography.net. Тот сайт имеет много других интересных вещей о создании текста для сети с точки зрения типографии, вещи, о которых часто даже не думают разработчики веб-страницы. Это стоит считать.