Мерзавец-svn может быть заставлен обработать CRLF как собственные клиенты подверсии?

Просто и легко. Вы можете сделать это из URI, как показано ниже!

public void getContents(Uri uri)
{
    Cursor vidCursor = getActivity.getContentResolver().query(uri, null, null,
                                                              null, null);
    if (vidCursor.moveToFirst())
    {
        int column_index =
        vidCursor .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
        Uri filePathUri = Uri.parse(vidCursor .getString(column_index));
        String video_name =  filePathUri.getLastPathSegment().toString();
        String file_path=filePathUri.getPath();
        Log.i("TAG", video_name + "\b" file_path);
    }
}
9
задан toholio 1 July 2009 в 06:53
поделиться

6 ответов

Поскольку мой другой ответ не подходит вам, вот другой способ справиться с ситуацией:

Используйте как svn, так и git; в том же рабочем каталоге.

В основном вы будете работать с git, извлекая данные из исходного репозитория, делая локальные изменения, локальные ветки и т. д .; все, что вы обычно делаете, когда работаете над локальным проектом git.

Затем, когда вы хотите выполнить фиксацию в центральном репозитории svn, используйте клиент svn.

У меня был некоторый опыт в этом, только я бы не стал выполните svn commit , но вместо этого создайте патч с svn diff и отправьте его (поскольку у меня все равно не было доступа к фиксации).

1
ответ дан 4 December 2019 в 21:51
поделиться

У меня была аналогичная проблема. Чтобы решить эту проблему, после клона git-svn я применил unix2dos ко всем файлам, потому что в моем случае все файлы в репозитории SVN использовали CRLF. Итак, я думаю, вам следует попробовать преобразование CRLF-LF вручную сразу после git-svn.

1
ответ дан 4 December 2019 в 21:51
поделиться

Обычно я очищаю свой клон git-svn с помощью git-filter-branch вместо recode dos..ascii -f . (Это также помогло преобразованию latin1..utf8 .)

1
ответ дан 4 December 2019 в 21:51
поделиться

Сделайте себе одолжение и не связывайтесь с окончаниями строк, оставьте их как есть. установите autocrlf в false .

Любой полуприличный текстовый редактор в Windows должен уметь обрабатывать окончания строк в стиле unix.

core.autocrlf = false показывает изменения в все.

Я думаю, что если вы сделаете это только постфактум , это не принесет вам никакой пользы.

Вы должны удалить этот репозиторий, установить для autocrlf значение false и , затем выполнить клонирование.

6
ответ дан 4 December 2019 в 21:51
поделиться

Обычно вы хотите установить параметр core.autocrlf следующим образом:

git config core.autocrlf true

Но согласно этой статье , это выглядит так: он не очень хорошо работает с git-svn. Возможно, стоит попробовать вторую безопасную копию вашего репозитория SVN, чтобы проверить, работает ли она.

0
ответ дан 4 December 2019 в 21:51
поделиться

Еще одна хорошая беседа здесь о core.autocrlf .

0
ответ дан 4 December 2019 в 21:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: