FIX: Gracefully handle force pushes for remote themes (#11325)

Force pushing a commit to a theme repository used to break the updater,
because the system was not able to count the commits behind the old and
new version. This operation failed because a force push deleted the old
commits.

The user was prompted with a simple "500 server error" message.
This commit is contained in:
Bianca Nenciu
2020-11-23 15:29:22 +02:00
committed by GitHub
parent 139c5dc356
commit 60bc38e6a8
5 changed files with 39 additions and 2 deletions

View File

@ -35,7 +35,7 @@ class ThemeStore::GitImporter
Discourse::Utils.execute_command(chdir: @temp_folder) do |runner|
commit_hash = runner.exec("git", "rev-parse", "HEAD").strip
commits_behind = runner.exec("git", "rev-list", "#{hash}..HEAD", "--count").strip
commits_behind = runner.exec("git", "rev-list", "#{hash}..HEAD", "--count").strip rescue -1
end
[commit_hash, commits_behind]