web-dev-qa-db-fra.com

Github Windows 'Impossible de synchroniser cette branche'

J'utilise Github Windows 1.0.38.1 et lorsque je clique sur le bouton "Sync" après avoir validé, j'obtiens le message d'erreur. 

enter image description here

Comment puis-je déboguer ce problème? Si je suis dans la coquille, que dois-je faire?

La synchronisation fonctionne bien si je fais un git Push ou git pull, mais la prochaine fois que je veux synchroniser à l'aide de fenêtres Github, j'obtiens la même erreur.

125
Nyxynyx

Quand il dit cela, ouvrez simplement le shell et faites git status. Cela vous donnera une idée décente de ce qui pourrait ne pas être correct et de l'état de votre repo.

Je ne peux pas vous donner d'erreur spécifique car cela se produit pour plusieurs raisons dans Github pour Windows, comme par exemple un problème de mise à jour des sous-modules, etc.

115
manojlds

Cette erreur est due à un conflit de fusion dans les fichiers. J'y ai fait face après avoir mis à jour le pom.xml de mon projet Maven, mais je ne l'ai pas validé. En utilisant 

git status
error: Your local changes to the following files would be overwritten by merge:
<my project>/pom.xml
Please, commit your changes or stash them before you can merge.
Aborting

comme suggéré dans le post ci-dessus a aidé à trouver des modifications contradictoires et vous pouvez décider de vous en défaire ou de vous engager.

16
Navin Mishra

J'ai eu le même problème. Cela m'est arrivé à cause de changements contradictoires. J'ai supprimé le référentiel local de mon projet de mon bureau, puis je l'ai cloné à nouveau à partir du site Web github (en utilisant l'option de clonage dans mon compte), l'erreur avait disparu.

11
rk2

J'ai eu le même problème quand j'ai essayé de l'intérieur de Visual Studio et "statut git" dans Shell n'a montré aucun problème. Mais j'ai réussi à pousser les modifications locales avec "git push" via Shell.

4
rovsen

J'ai eu ce problème et j'ai trouvé que c'était dû au proxy. J'ai résolu le problème en utilisant cette commande: 

 git config --global http.proxy %HTTP_PROXY%
4
Tom

Avez-vous changé votre mot de passe Windows récemment ou au moins celui que vous utilisez pour vous connecter à votre proxy?

C'était mon problème et git status n'a pas pu m'aider. J'ai dû changer mes identifiants de connexion dans le fichier ".git/config" pour éviter cette erreur.

2
Ralph Lavelle

Il s’agit probablement d’un cas Edge, mais chaque fois que j’ai cette erreur spécifique, c’est parce que j’ai récemment mappé un lecteur sous Windows et que powershell ne le trouve pas.

Un redémarrage de l'ordinateur (de toutes choses) corrige l'erreur pour moi, car powershell peut maintenant récupérer le lecteur nouvellement mappé. Assurez-vous simplement de vous connecter au lecteur mappé AVANT d’ouvrir le client github.

2
kwakwa

J'ai eu le même problème. Dans mon cas, git n'a pas pu trouver la variable globale %HTTP_PROXY%, simplement parce que Windows ne la fournissait pas/ne l'utilisait pas.

Je l'ai résolu en excluant la variable du fichier de configuration git (situé dans %USERPROFILE%\.gitconfig):

[http]
#   proxy = %HTTP_PROXY%
2
Steven

Cela peut également être causé lorsque vous mappez un lecteur réseau ou connectez un disque dur virtuel après le démarrage de GitHub Desktop. La raison en est que GitHub Desktop utilise ssh-agent à partir de l’installation portable GIT pour établir des connexions, et ne le ferme jamais ... même si vous désinstallez l’application. Le processus commence sans aucune connaissance du nouveau lecteur et ne se rafraîchit jamais. Lorsqu'il est utilisé pour exécuter les commandes GIT afin de travailler sur votre référentiel, il échoue car il ne comprend pas les chemins.

Dans ce cas, la solution consiste à fermer GitHub Desktop et à utiliser le Gestionnaire des tâches pour mettre fin à l'agent ssh en cours d'exécution avant de le redémarrer. Cela démarrera une nouvelle instance de ssh-agent si nécessaire, qui récupérera les nouveaux mappages de lecteurs, etc.

1
Corey

Cette erreur se produit également si la branche que vous essayez de synchroniser a été supprimée. 

git status ne vous dira pas cela, mais vous obtiendrez un message "si aucune référence n'a été récupérée" si vous essayez git pull.

1
Libby

Assurez-vous que la branche vers laquelle vous essayez de pousser n'est pas protégée. J'essayais de pousser vers une branche protégée et j'ai échoué comme vous.

1
mikii123

J'ai essayé avec Android Studio de valider des modifications et de les pousser à maîtriser, mais Window a montré une fenêtre contextuelle dans laquelle je dois entrer les informations d'identification Github ( https://github.com ). Je me suis inscrit avec mon compte Gmail. J'ai donc essayé d'entrer mon identifiant Gmail ainsi que son mot de passe. De toute évidence, Git n'a pas mon mot de passe Gmail et ne peut pas correspondre à ce que je fournis, j'ai donc annulé le Push.
Lorsque j'ai essayé de synchroniser mes modifications via la fenêtre de l'interface graphique de GitHub, j'ai rencontré cette erreur. Sur la commande git status, Git Shell a suggéré de transmettre les modifications en tant que

Your branch is ahead of 'Origin/master' by 1 commit.
  (use "git Push" to publish your local commits)

J'ai fait la même chose que suggéré par Git Shell (git Push) et tout va bien maintenant.

Remarque: pour les débutants dans git, vous devez changer le chemin d'accès au dossier dans lequel se trouve votre fichier .git. Chaque commande que vous entrez dans Git Shell indiquera l'erreur que ce n'est pas un référentiel git.

fatal: Not a git repository (or any of the parent directories):

Par exemple, si votre projet est dans le lecteur D dans un dossier, vous devez procéder de la même manière que ci-dessous, comme dans cmd pour changer de répertoire.

cd D:\someFolder     // if your project is not deep in `D`

Et si son dans le dossier imbriqué dans D

cd D:\somefolder\someNestedFolder\nestedInNested     // if your project is not deep in `D`

Si quelqu'un sait comment se connecter à Github popup à partir de Windows comme je l'ai fait avec un compte Google et voici 2 champs uniquement le nom d'utilisateur Github, mot de passe S'il vous plaît laissez-moi savoir. J'ai résolu le problème, mais avec une perte de temps, je souhaite également connaître les informations de connexion.

0
Inzimam Tariq IT

J'ai eu le même problème, et "statut git" n'a également montré aucun problème, alors je viens Redémarré le client saint GitHub pour Windows et cela a fonctionné comme un charme.

0
Qasim

Le journal de débogage peut fournir des informations. J'utilise v3.3.4.0, votre expérience peut être différente mais devrait être similaire. Dans le menu des paramètres, choisissez "À propos de Github Desktop ...". Cliquez sur le lien pour afficher le journal de débogage. Dans mon cas, il y avait une erreur très claire:

*** erreur fatale - incompatibilité de base cygheap détectée - 0x1157408/0x1167408 . Ce problème est probablement dû à l'utilisation de versions incompatibles de la DLL cygwin.

Il a même fourni des conseils utiles pour résoudre le problème.

Je ne sais pas pourquoi cette information n'est pas exposée dans l'invite d'erreur, mais au moins, elle était disponible.

0
Opsimath

vérifiez " git status " et " git pull " dans Shell et découvrez ce qui ne va pas. et mon problème est http.proxy node dans config, donc Github Windows devrait être beaucoup plus intelligent, il suffit de faire apparaître le shell et de donner plus de conseils après l’émission des erreurs.

0
Alex Kon

J'ai eu le même problème. J'ai supprimé le dépôt du client Windows GitHub (menu contextuel) et l'a ajouté de nouveau. Quand j'ai ré-ajouté, j'ai remarqué que j'avais 300 modifications non validées et que cela signalait une erreur de mémoire. J'ai ignoré tous les changements, puis la synchronisation a de nouveau fonctionné correctement. (Utilisateur Rookie Git - Je suis sûr qu'il existe de meilleurs moyens de le faire en ligne de commande)

0
Stephen Kearns

Dans les lignes des réponses du proxy HTTP, cela peut également se produire en raison d'une connexion VPN. La déconnexion de ma connexion VPN a résolu le problème pour moi.

0
Byron Claiborne