Если у вас уже есть имя пакета, которое вы хотите активировать, вы можете использовать следующий код, который является более общим:
PackageManager pm = context.getPackageManager();
Intent appStartIntent = pm.getLaunchIntentForPackage(appPackageName);
if (null != appStartIntent)
{
context.startActivity(appStartIntent);
}
Я обнаружил, что он работает лучше для случаев, когда основное действие не был найден обычным методом запуска MAIN-активности.
Вам нужно убедиться, что другие пользователи этого репозитория извлекают неправильные изменения или пытаются построить поверх коммитов, которые вы хотите удалить, потому что вы собираетесь перемотать историю.
Затем вам нужно «принудительно» нажать старую ссылку.
git push -f origin last_known_good_commit:branch_name
или в вашем случае
git push -f origin cc4b63bebb6:alpha-0.3.0
] Вы можете получить . denyNonFastForwards
установлен в удаленном репозитории. В этом случае вы получите сообщение об ошибке, содержащее фразу [удаленный отказ]
.
В этом случае вам придется удалить и заново создать ветку.
git push origin :alpha-0.3.0
git push origin cc4b63bebb6:refs/heads/alpha-0.3.0
Если это не так. не работает - возможно, из-за того, что у вас установлен receive.denyDeletes
, тогда у вас должен быть прямой доступ к репозиторию. Затем в удаленном репозитории вам нужно выполнить что-то вроде следующей команды сантехники.
git update-ref refs/heads/alpha-0.3.0 cc4b63bebb6 83c9191dea8
Существующие ответы хороши и корректны, однако что, если необходимо отменить push
, но:
Использование эта команда возвращаться изменение в:
git push -f origin refs/remotes/origin/<branch>@{1}:<branch>
Я считаю, что вы также можете сделать это:
git checkout alpha-0.3.0
git reset --hard cc4b63bebb6
git push origin +alpha-0.3.0
Это очень похоже на последний метод, за исключением того, что вам не нужно копаться в удаленном репо.