         branch.read('META-INF/container.xml').fail () ->
           auth.$el.find('[data-repo-missing]').show()
           auth.editRepoModal()
+          promise.reject()
         .then () ->
           # Silently clear the settings first. This forces a reload even if
           # the user leaves the settings unchanged.  The reason for


    # Show a diff of all unsaved models
    showDiffsModal: () ->
      $modal = @$el.find('#diffs-modal')

      $body = $modal.find('.modal-body').empty()

                newRepo.getBranch('gh-pages').writeMany(files).done ->

                  # go there
                  auth._selectRepo(bookOwnerName, bookName).done ->

                    # once it loads, open the book metadata modal
                    require ['cs!gh-book/epub-container', 'cs!gh-book/opf-file'], (epubContainer, opfFile) ->
                      epubContainer::instance().load().done ->
                        allContent.findWhere({mediaType: opfFile.prototype.mediaType}).load().done ->
                          opf.triggerMetadataEdit()
          .fail ->
            auth.$el.find('[data-repo-missing]').hide()
            auth.$el.find('[data-error-creating]').show()
