Question

J'ai un grand clone de taille pour pousser Google Code, et il prend beaucoup de temps pour le dialogue Authentifier pour apparaître après la poussée est tiré, donc ne les données push tortoisehg premier authentifient seconde?

Était-ce utile?

La solution

Mise à jour : Le bug est maintenant fixe .

Modifier par durin42 : Il est pas entièrement fixe. Nous sommes proches, mais il y a encore du travail à faire pour moi avant que la réécriture est par défaut. Nous essayons d'être vraiment prudent avec le passage. (Statut précis à partir de Janvier 2012, montre les notes de version pour Mercurial pour d'autres mises à jour.)


TL; DR: httplib est essentiellement rompu ici, et qui cause ce problème hg. Les gens travaillent sur la fixation de ce.

Ceci est un effet secondaire malheureux de qu'urllib façon et le travail de httplib. httplib / urllib n'envoyer préventivement l'autorisation, ce qui est regrettable.

Les bonnes nouvelles sont qu'il ya des travaux en cours pour résoudre ce problème, les mauvaises nouvelles est qu'il semble que ça va prendre essentiellement une réécriture complète de httplib pour l'obtenir à un comportement raisonnable. En particulier, httplib est semi-duplex, et n'a aucun moyen de jeter un regard sur les paquets entrants (pour détecter une réponse précoce), il doit envoyer une demande avant de pouvoir obtenir une invite digest (utilisation en supposant digérer auth, qui est la meilleure option). Certaines implémentations de serveur, même fermer le socket une fois qu'ils envoient un 401 requis d'autorisation, qui rompt effectivement httplib complètement en soulevant une erreur de tuyau cassé. Je soumettais une solution à ce problème qui est en hg 1.4, mais il est seulement une solution-gêne utilisateur, et non une solution de performance réelle.

Autres conseils

Je pense qu'il recueillera une liste de changesets du serveur afin qu'il sache que changesets locales ne semblent pas sur le serveur, et doivent donc être transférés. Fondamentalement, l'équivalent de hg outgoing. Une seule fois il a déterminé les changesets de pousser-t-il besoin d'écrire quoi que ce soit (et potentiellement pas, s'il n'y a pas de différences) afin de ne pas authentifier jusqu'à ce qu'il a réellement besoin.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top