Comment ajouter une solution existante à GitHub à partir de Visual Studio 2013


208

J'ai parcouru de nombreuses pages Web sur la nouvelle intégration de Git dans VS 2013 et elles ne traitent pas de l'ajout d'une solution existante à Github. En fait, je ne trouve pas grand-chose sur l'utilisation de GitHub au lieu de Visual Studio Online.

Quelqu'un peut-il me dire comment je commence à partir d'une solution existante et l'ajouter à Github à l'aide des outils de VS 2013.


Pourquoi ne pas simplement le faire à partir de la ligne de commande? Il ne devrait y avoir qu'environ 5 commandes (créer un référentiel, ajouter un projet au référentiel [2 commandes], ajouter une télécommande, pousser vers une télécommande) ? Toutes les commandes sont assez bien documentées.
R0MANARMY

2
L'ajout via github pour VS ajoutera le bouton "Ouvrir avec Visual Studio" sur la page github. mineur mais utile :)
Ateik

Réponses:


348

OK, cela a fonctionné pour moi.

  1. Ouvrez la solution dans Visual Studio 2013
  2. Sélectionnez Fichier | Ajouter au contrôle de source
  3. Sélectionnez le fournisseur Microsoft Git

Cela crée un référentiel GIT local

  1. Surfez sur GitHub
  2. Créer un nouveau référentiel NE PAS SÉLECTIONNER Initialiser ce référentiel avec un README

Cela crée un référentiel vide sans branche principale

  1. Une fois créé, ouvrez le référentiel et copiez l'URL (c'est à droite de l'écran dans la version actuelle)
  2. Revenir à Visual Studio
    • Assurez-vous que le fournisseur Microsoft Git est sélectionné sous Outils / Options / Contrôle de source / Sélection de plug-in
  3. Ouvrez Team Explorer
  4. Sélectionnez Accueil | Commits non synchronisés
  5. Entrez l'URL GitHub dans la case jaune (utilisez l'URL HTTPS, pas l'URL SSH par défaut)
  6. Cliquez sur Publier
  7. Sélectionnez Accueil | Changements
  8. Ajouter un commentaire de validation
  9. Sélectionnez Valider et pousser dans le menu déroulant

Votre solution est maintenant dans GitHub


4
Je veux ajouter qu'actuellement, ssh n'est pas pris en charge, vous devez donc utiliser le protocole https. Si une mauvaise URL est déjà utilisée, vous pouvez utiliser git remote set-url origin https: // ... pour la changer.
Michael Dietrich

1
Merci, cela m'a aidé. Vérifier l'initialisation dans github me ruinait.
josha76

6
S'il vous arrive d'avoir sauté le pistolet et créé le dépôt avec le readme, vous pouvez récupérer en ouvrant un shell git (bash ou ps) et à partir du répertoire racine de type git remote rm origin. Cela ramènera la zone de texte URL dans VS2013 et vous permettra de rajouter le serveur distant. Il y a peut-être un moyen de le faire dans VS mais je ne l'ai pas trouvé.
bob

4
Lorsque je clique sur Publier, il me dit: You must commit changes to your local repository before you can publish.que dois-je faire? Comment valider des modifications dans mon référentiel local?
Mark Kramer

4
Vous cliquez sur Accueil | Changements. Saisissez ensuite un message de validation dans la zone jaune et cliquez sur Valider.
Richard210363

82

Il existe un moyen beaucoup plus facile de le faire qui ne vous oblige même pas à faire quoi que ce soit en dehors de Visual Studio.

  • Ouvrez votre projet dans Visual Studio
  • Fichier> Ajouter au contrôle de source
  • Ouvrez Team Explorer, cliquez sur le bouton Accueil , passez à " Sync " et vous y trouverez le " Publier sur GitHub ". Cliquez sur " Commencer "
  • Tapez le titre de votre référentiel et la description (facultatif).
  • Cliquez sur " Publier "

C'est tout. Le plugin Visual Studio github a automatiquement créé un référentiel pour vous et tout configuré. Maintenant, cliquez simplement sur Accueil et choisissez l' onglet " Modifications " et enfin validez votre premier commit.


17
Ne vous laissez pas submerger par le nombre de votes. Celui-ci fonctionne et est beaucoup plus simple, au moins dans VS2015.
dotNET

2
Je n'ai pas pu trouver le truc github J'ai donc dû utiliser ceci: visualstudio.github.com
ʍѳђ ઽ ૯ ท

C'est ce que je cherchais. Mon expérience était cependant légèrement différente. Quand j'ai frappé Add to source control, j'ai été amené directement à l'écran pour ajouter le premier commit à ce qui semblait être un dépôt git local créé automatiquement, ce qui était exactement ce que je voulais. Communauté VS2015.
parker.sikand

3
Je suis presque sûr que cette solution suppose que l'extension Github pour VS2015 est installée. Vous pouvez l'obtenir ici comme un commentaire ci-dessus décrit: visualstudio.github.com
Greg

2
Je viens d'utiliser cette méthode pour envoyer une solution VS2017 vers un référentiel Gogs local.
Peter M

12

Cette question a déjà été répondue avec précision par Richard210363.

Cependant, je voudrais souligner qu'il existe une autre façon de procéder et avertir que cette approche alternative doit être évitée , car elle cause des problèmes.

Comme R0MANARMY l'a indiqué dans un commentaire à la question d'origine, il est possible de créer un référentiel à partir du dossier de solution existant en utilisant la ligne de commande git ou même Git Gui. Cependant, lorsque vous faites cela, il ajoute tous les fichiers sous ce dossier au référentiel, y compris les fichiers d'options utilisateur de sortie de génération (bin / obj / dossiers) (.suo, .csproj.user) et de nombreux autres fichiers qui peuvent être dans votre solution dossier mais que vous ne souhaitez pas inclure dans votre référentiel. Un effet secondaire indésirable de cela est qu'après la construction locale, la sortie de la construction apparaîtra dans votre liste de "modifications".

Lorsque vous ajoutez à l'aide de «Sélectionner un fichier | Ajouter au contrôle de code source» dans Visual Studio, il inclut intelligemment les fichiers de projet et de solution corrects et laisse les autres de côté. De plus, il crée automatiquement un fichier .gitignore qui aide à empêcher ces fichiers indésirables d'être ajoutés au référentiel à l'avenir.

Si vous avez déjà créé un référentiel qui inclut ces fichiers indésirables, puis ajoutez le fichier .gitignore à une date ultérieure, les fichiers indésirables resteront toujours partie du référentiel et devront être supprimés manuellement ... il est probablement plus facile de supprimer le repo et recommencer en créant le repo correctement.


J'ai utilisé la méthode proposée ci-dessus par MaKiPL. Ça a marché. et il n'avait PAS les défauts décrits par jjjjs. J'ai trouvé la méthode proposée par MaKiPL beaucoup plus facile que d'utiliser une commande Git.
glenn garson

6
  • Dans le menu Team Explorer, cliquez sur "ajouter" dans la section du référentiel Git (vous devrez ajouter le répertoire de la solution au référentiel Git local)
  • Ouvrez la solution à partir de Team Explorer (clic droit sur la solution ajoutée - ouverte)
  • Cliquez sur le bouton commit et recherchez le lien "push"

Visual Studio devrait maintenant demander vos informations d'identification GitHub, puis procéder au téléchargement de votre solution.

Étant donné que mon compte Windows est connecté à Visual Studio pour travailler avec Team Foundation, je ne sais pas si cela fonctionne sans compte, Visual Studio gardera une trace de qui s'engage, donc si vous n'êtes pas connecté, il vous demandera probablement de commencer.


3
Il n'y a ni ajout ni section Git dans mon Team Explorer
Richard210363

4

Eh bien, je comprends que cette question est liée à l'interface graphique de Visual Studio, mais peut-être que le demandeur peut également essayer cette astuce. Donner juste une perspective différente pour résoudre ce problème.

J'aime beaucoup utiliser le terminal pour GIT, voici donc les étapes simples:

Conditions préalables...

  • Si c'est Linux ou MAC, vous devriez avoir des paquets git installés sur votre machine
  • Si c'est Windows, vous pouvez essayer de télécharger le logiciel git bash

Maintenant,

  1. Goto Github.com
  2. Dans votre compte, créez un nouveau référentiel
  3. Ne créez aucun fichier à l'intérieur du référentiel. Gardez-le vide. Copiez son URL. Cela devrait être quelque chose comme https://github.com/Username/ProjectName.git

  4. Ouvrez le terminal et redirigez-le vers votre répertoire de projet Visual Studio

  5. Configurez vos informations d'identification

    git config --global user.name "your_git_username"
    git config --global user.email "your_git_email"
    
  6. Tapez ensuite ces commandes

    git init
    git add .
    git commit -m "First Migration Commit"
    git remote add origin paste_your_URL_here
    git push -u origin master
    

Terminé ... j'espère que cela vous aidera


sur la dernière ligne, ce git push -u origin master, il a donné une erreur en disant que remote contient du travail que vous n'avez pas localement (il a été fraîchement créé et était vide). Puis, quand j'ai essayé de tirer à nouveau. "il n'y a pas d'informations de suivi de la branche actuelle" Git est un mystère
Blue Clouds

ce lien fournit une explication des commandes mentionnées ci-dessus
Tendai Mare

Ça marche vraiment. Merci ...
:)

0

Mon problème est que lorsque j'utilise https pour l'URL distante, cela ne fonctionne pas, j'utilise donc http à la place. Cela me permet de publier / synchroniser avec GitHub à partir de Team Explorer instantanément.


Je souhaite savoir ce que «ne fonctionne pas» signifie donc j'ai eu une meilleure idée de savoir si cela pourrait être pertinent pour les problèmes que j'ai eu.
user34660

0

Aucune des réponses n'était spécifique à mon problème, alors voici comment je l'ai fait.

C'est pour Visual Studio 2015 et j'avais déjà fait un dépôt sur Github.com

Si vous avez déjà votre URL de référentiel, copiez-la, puis dans Visual Studio:

  • Accédez à Team Explorer
  • Cliquez sur le bouton "Sync"
  • Il devrait avoir 3 options répertoriées avec des liens "get started".
  • J'ai choisi le lien "commencer" contre "publier dans un référentiel distant", qui est celui du bas
  • Une boîte jaune apparaîtra vous demandant l'URL. Collez-y simplement l'URL et cliquez sur publier.

0

Il s'agit de quelques clics de moins dans VS2017, et si le référentiel local est en avance sur le clone Git, cliquez sur Contrôle source dans le menu contextuel du projet: Cela fait apparaître la boîte de dialogue Modifications de Team Explorer: Tapez une description - ici c'est "Débordement de pile Exemple de validation ". Faites un choix parmi les trois options proposées, qui sont toutes expliquées ici .

entrez la description de l'image ici


entrez la description de l'image ici

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.