Un outil de contrôle de code source GitHub a été ajouté à ma copie de Visual Studio 2013 et, lorsque je clique avec le bouton droit de la souris sur la solution, je crée un commit et dit que le commit a été créé localement. Lorsque j'essaie de synchroniser la validation avec le serveur, le bouton de synchronisation est grisé.
Ma question est la suivante: comment puis-je le configurer ou quelles mesures dois-je prendre pour que la validation soit transmise au serveur?
Il semble que la branche/branche distante en amont ne soit pas configurée pour cette branche. Visual Studio fonctionne comme si la configuration "Push.default" était définie sur "en amont".
Si vous allez à la page des branches, cette branche devrait être listée dans la section des branches "non publiées". À partir de cette page, vous pouvez choisir de "publier" cette branche en cliquant avec le bouton droit de la souris sur la branche non publiée et en sélectionnant publier dans le menu contextuel résultant. Cela va pousser la branche sur la télécommande d'origine (avec une branche du même nom que votre branche locale) et définir les informations de suivi en amont pour cette branche. À partir de ce moment, vous pouvez pousser et récupérer à partir de la page Commits non synchronisés.
Voici une capture d'écran de l'endroit où vous devez aller pour publier une branche non publiée:
Vous devez ajouter le dépôt en ligne GitHub en tant que télécommande dans votre dépôt git local.
Sur la ligne de commande, c'est git remote add Origin <urL>
; Je ne sais pas si l'interface utilisateur VS git expose cela.
Nous utilisons Atlassian Stash mais nous avons également trouvé l'interface utilisateur de Visual Studio un peu déroutante au début. La séquence qui fonctionne pour nous, en utilisant uniquement l'interface utilisateur , est la suivante:
git Push Origin master
mais Microsoft a choisi de créer de la confusion en lui attribuant un autre nom.Remarque: Si vous créez une autre branche localement, vous devez appuyer sur la touche «Publier» avant de la connaître.
Note finale: Visual Studio ne créera pas de projets et de repos pour vous sur la télécommande. Vous devez vous assurer que le référentiel est configuré sur la télécommande avant de pouvoir y insérer une branche.
Problème étrange: Nous avons constaté que si vous tentez d'envoyer à une branche mais échouez (en raison d'une URL incorrecte ou d'un problème d'autorisations), nous devions revenir à la commande Invite pour "réparer" la configuration distante du référentiel. /branche. Ceci utilise la commande standard git:
git remote add Origin https://[email protected]/scm/myproject/myrepo.git
Après avoir publié une branche comme dans la réponse de @ jamill, vous pouvez vous heurter à cela.
Dans Team Explorer, j'ai pu publier une branche, mais je ne pouvais plus rien faire. Tirer et pousser étaient grisés comme indiqué:
J'ai donc fait Actions> Ouvrir l'invite de commande . Puis tapez:
git Push Origin My_Branch_Name
Après cela, je pouvais voir la branche et mon commit dans ma télécommande. (Github ou quoi que ce soit dans votre cas). De plus, lors de l'exécution de la commande, le résultat dit,
remote: Create pull request for My_Branch_Name:
Si vous souhaitez conserver cette branche et la fusionner en maître, vous pouvez créer une demande d'extraction sur votre télécommande. Sinon, comme dans mon cas, je veux abandonner la succursale. Tu n'as rien à faire.