Что может привести к тому, что только что извлеченные файлы git будут отображать изменения (не окончания строк, а реальные изменения)? - PullRequest
0 голосов
/ 28 января 2020

У меня есть куча файлов, показывающих «изменения, которые должны быть зафиксированы» сразу после клона fre sh. Естественно, мой первый шаг состоял в том, чтобы проверить изменения, предполагая, что это конец строки или изменение режима файла, и это оказывается фактическим изменением строки кода, например:

$git status

[snip]
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)
    [snip]
    modified:   custom/Extension/application/Ext/Language/en_us.CSTM.php

no changes added to commit (use "git add" and/or "git commit -a")

$ git diff custom/Extension/application/Ext/Language/en_us.CSTM.php

diff --git a/custom/Extension/application/Ext/Language/en_us.CSTM.php     b/custom/Extension/application/Ext/Language/en_us.CSTM.php
index 47b9668e27..85bb53235b 100755
--- a/custom/Extension/application/Ext/Language/en_us.CSTM.php
+++ b/custom/Extension/application/Ext/Language/en_us.CSTM.php
@@ -1,316 +1,7 @@
 <?php 
-$app_list_strings['repeat_type_dom'] = array (
-  '' => 'None',
-  'Daily' => 'Daily',
-  'Weekly' => 'Weekly',
-  'Monthly' => 'Monthly',
[snip]

Эти строки фактически удаляются в файл, который я вижу, когда проверяю сам файл. Я не сделал, так как это клон fre sh. Я также проверил основную ветку на GitHub, какая версия файла самая последняя, ​​и это версия с удаленными строками. Как это возможно?

Чтобы добавить дополнительный контекст:

Несколько месяцев go на бесплатной sh проверке этого репо Я получил эту ошибку:

warning: the following paths have collided (e.g. case-sensitive paths
on a case-insensitive filesystem) and only one from the same
colliding group is in the working tree:

  'custom/Extension/application/Ext/Language/en_us.CSTM.php'
  'custom/Extension/application/Ext/Language/en_us.cstm.php'

... а затем список изменений, упомянутых выше. Кто-то, очевидно, исправил дубликаты файлов, так как они больше не существуют в репо, но изменения файлов по-прежнему появляются, когда репо только что клонировано.

РЕДАКТИРОВАТЬ:

Ради аргумента:

$ git ls-files '*.php'
[snip]
en_us.CA_ASSEMENTS.php
en_us.CSTM.php
en_us.CallType.php
[snip]

1 Ответ

0 голосов
/ 29 января 2020

Похоже, это связано с тем, что некоторые системы чувствительны к регистру имен файлов, а другие - нет. Если ваша система не соблюдает регистр, то, возможно, .CSTM извлекается, а .cstm извлекается и перезаписывает .CSTM, из-за чего создается впечатление, что есть изменения в .CSTM (или наоборот)

В этом случае вам не будет казаться, что их два, потому что вы видите только один. Я думаю, что приведенное выше предложение с использованием git ls-files '*. php' может быть полезным для ответа на этот вопрос.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...