Как мне скопировать версию одного файла из одной ветки git в другую?

Поскольку API 18, объект Местоположение имеет метод .isFromMockProvider () , поэтому вы можете отфильтровывать поддельные местоположения.

Если вы хотите поддерживать версии до 18, можно использовать что-то вроде этого:

boolean isMock = false;
if (android.os.Build.VERSION.SDK_INT >= 18) {
    isMock = location.isFromMockProvider();
} else {
    isMock = !Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ALLOW_MOCK_LOCATION).equals("0");
}

844
задан einpoklum 22 February 2019 в 20:03
поделиться

2 ответа

Выполните это от ответвления, где Вы хотите, чтобы файл закончился:

git checkout otherbranch myfile.txt

Общие формулы:

git checkout <commit_hash> <relative_path_to_file_or_dir>
git checkout <remote_name>/<branch_name> <file_or_dir>

Некоторые примечания (из комментариев):

  • Используя хеш фиксации можно вытянуть файлы от любой фиксации
  • , Это работает на файлы и каталоги
  • перезаписи, Подстановочные знаки файла myfile.txt и mydir
  • не работают, но относительные пути делают
  • , Разнообразные пути могут быть определены

альтернатива:

git show commit_id:path/to/file > path/to/file
1514
ответ дан nickf 22 February 2019 в 20:03
поделиться

Как насчет использования команды проверки:

  git diff --stat "$branch"
  git checkout --merge "$branch" "$file"
  git diff --stat "$branch"
51
ответ дан 22 November 2019 в 21:06
поделиться
Другие вопросы по тегам:

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