Come posso aggiungere una soluzione esistente a GitHub da Visual Studio 2013


208

Ho esaminato molte pagine Web sulla nuova integrazione di Git in VS 2013 e non si occupano di aggiungere una soluzione esistente a Github. In realtà non riesco a trovare molto sull'utilizzo di GitHub invece di Visual Studio Online.

Qualcuno può dirmi come posso iniziare da una soluzione esistente e aggiungerlo a Github utilizzando gli strumenti di VS 2013.


Perché non farlo dalla riga di comando? Dovrebbero essere solo circa 5 comandi (creare repository, aggiungere progetto al repository [2 comandi], aggiungere remoto, spingere verso remoto) ? Tutti i comandi sono abbastanza ben documentati.
R0MANARMY

2
Aggiungendolo tramite github per VS, verrà aggiunto il pulsante "Apri con Visual Studio" nella pagina github. minore ma utile :)
Ateik

Risposte:


348

OK, questo ha funzionato per me.

  1. Apri la soluzione in Visual Studio 2013
  2. Seleziona File | Aggiungi al controllo del codice sorgente
  3. Seleziona il provider Microsoft Git

Ciò crea un repository GIT locale

  1. Naviga su GitHub
  2. Crea un nuovo repository NON SELEZIONARE Inizializza questo repository con un README

Ciò crea un repository vuoto senza ramo Master

  1. Una volta creato, apri il repository e copia l'URL (si trova sulla destra dello schermo nella versione corrente)
  2. Torna a Visual Studio
    • Assicurati di avere il provider Microsoft Git selezionato in Strumenti / Opzioni / Controllo del codice sorgente / Selezione plug-in
  3. Apri Team Explorer
  4. Seleziona Home | Impegni non sincronizzati
  5. Inserisci l'URL GitHub nella casella gialla (usa l'URL HTTPS, non quello predefinito mostrato SSH)
  6. Fai clic su Pubblica
  7. Seleziona Home | I cambiamenti
  8. Aggiungi un commento di commit
  9. Seleziona Commit e Push dal menu a discesa

La tua soluzione è ora in GitHub


4
Voglio aggiungere che attualmente ssh non è supportato, quindi devi usare il protocollo https. Se viene già utilizzato l'URL errato, è possibile utilizzare git remote set-url origin https: // ... per cambiarlo.
Michael Dietrich,

1
Grazie, questo mi ha aiutato. Controllare l'inizializzazione in github mi stava rovinando.
josha76,

6
Se ti capita di aver saltato la pistola e creato il repository con il file Leggimi, puoi recuperare aprendo una shell git (bash o ps) e dalla directory root digita git remote rm origin. Ciò riporterà la casella di testo URL in VS2013 e ti consentirà di aggiungere nuovamente il server remoto. Potrebbe esserci un modo per farlo in VS ma non sono riuscito a trovarlo.
bob

4
Quando faccio clic su Pubblica mi dice: You must commit changes to your local repository before you can publish.cosa devo fare? Come posso eseguire il commit delle modifiche nel mio repository locale?
Mark Kramer,

4
Fai clic su Home | I cambiamenti. Quindi immettere un messaggio di commit nella casella gialla e fare clic su Commit.
Richard210363,

82

C'è un modo molto più semplice per farlo che non richiede nemmeno di fare nulla al di fuori di Visual Studio.

  • Apri il tuo progetto in Visual Studio
  • File> Aggiungi al controllo del codice sorgente
  • Apri Team Explorer, fai clic sul pulsante Home , procedi a " Sincronizza " e lì troverai " Pubblica su GitHub ". Fai clic su " Inizia "
  • Digitare il titolo del repository e la descrizione (facoltativo).
  • Fai clic su " Pubblica "

È tutto. Il plug-in github di Visual Studio ha creato automaticamente un repository per te e ha configurato tutto. Ora fai clic su Home e seleziona la scheda " Modifiche " e infine esegui il primo commit.


17
Non lasciarti sopraffare dal numero di voti. Questo funziona ed è molto più semplice, almeno in VS2015.
dotNET

2
Non sono riuscito a trovare la cosa github Quindi ho dovuto usare questo: visualstudio.github.com
ʍѳђ ઽ ૯ ท

Questo è quello che stavo cercando. La mia esperienza è stata leggermente diversa. Quando ho colpito Add to source control, sono stato portato direttamente sullo schermo per aggiungere il primo commit a quello che sembrava essere un repository git locale creato automaticamente, che era esattamente quello che volevo. Comunità VS2015.
parker.sikand

3
Sono abbastanza sicuro che questa soluzione presupponga che sia installata l'estensione Github per VS2015. Puoi ottenerlo qui come un commento sopra descritto: visualstudio.github.com
Greg

2
Ho appena usato questo metodo per inviare una soluzione VS2017 a un repository Gogs locale.
Peter M

12

Questa domanda ha già ricevuto una risposta accurata da Richard210363.

Tuttavia, vorrei sottolineare che esiste un altro modo per farlo e di avvertire che questo approccio alternativo dovrebbe essere evitato , poiché causa problemi.

Come ha affermato R0MANARMY in un commento alla domanda originale, è possibile creare un repository dalla cartella della soluzione esistente utilizzando la riga di comando git o persino Git Gui. Tuttavia, quando lo fai aggiunge tutti i file sotto quella cartella al repository, inclusi i file delle opzioni utente di output di compilazione (bin / obj / cartelle) (.suo, .csproj.user) e numerosi altri file che potrebbero essere nella tua soluzione cartella ma che non si desidera includere nel repository. Un effetto collaterale indesiderato di questo è che dopo la compilazione locale, l'output di compilazione verrà visualizzato nell'elenco delle "modifiche".

Quando si aggiunge utilizzando "Seleziona file | Aggiungi al controllo del codice sorgente" in Visual Studio, include in modo intelligente i file corretti del progetto e della soluzione e lascia fuori gli altri. Inoltre, crea automaticamente un file .gitignore che aiuta a impedire che questi file indesiderati vengano aggiunti al repository in futuro.

Se hai già creato un repository che include questi file indesiderati e successivamente aggiungi il file .gitignore in un secondo momento, i file indesiderati rimarranno comunque parte del repository e dovranno essere rimossi manualmente ... probabilmente è più facile eliminare il file repository e ricominciare creando il repository nel modo corretto.


Ho usato il metodo proposto sopra da MaKiPL. Ha funzionato. e NON aveva le carenze descritte da jjjjs. Ho trovato il metodo proposto da MaKiPL molto più semplice rispetto all'utilizzo dei comandi Git.
Glenn Garson,

6
  • Dal menu Team Explorer, fai clic su "Aggiungi" nella sezione del repository Git (dovrai aggiungere la directory della soluzione al repository Git locale)
  • Apri la soluzione da Team Explorer (fai clic destro sulla soluzione aggiunta - apri)
  • Fai clic sul pulsante di commit e cerca il link "push"

Visual Studio ora dovrebbe richiedere le credenziali di GitHub e quindi procedere con il caricamento della soluzione.

Dal momento che il mio account Windows è collegato a Visual Studio per funzionare con Team Foundation, non so se funziona senza un account, Visual Studio terrà traccia di chi si impegna, quindi se non sei loggato probabilmente ti chiederà prima.


3
Non ci sono aggiunte e sezioni Git nel mio Team Explorer
Richard210363,

4

Bene, capisco che questa domanda è correlata alla GUI di Visual Studio, ma forse il richiedente può provare anche questo trucco. Basta dare una prospettiva diversa per risolvere questo problema.

Mi piace usare il terminale molto per GIT, quindi ecco i semplici passaggi:

Pre-requisiti ...

  • Se è Linux o MAC, dovresti avere pacchetti git installati sul tuo computer
  • Se è Windows, puoi provare a scaricare il software git bash

Adesso,

  1. Vai a Github.com
  2. Nel tuo account, crea un nuovo repository
  3. Non creare alcun file all'interno del repository. Tienilo vuoto. Copia il suo URL. Dovrebbe essere qualcosa come https://github.com/Username/ProjectName.git

  4. Aprire il terminale e reindirizzare alla directory del progetto Visual Studio

  5. Configura le tue credenziali

    git config --global user.name "your_git_username"
    git config --global user.email "your_git_email"
    
  6. Quindi digitare questi comandi

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

Fatto ... Spero che questo aiuti


nell'ultima riga, questo git push -u origin master, ha dato l'errore dicendo che remote contiene lavori che non hai localmente (è stato appena creato ed era vuoto). Quindi, quando ha provato a tirare di nuovo. "Non ci sono informazioni di tracciamento del ramo corrente" Git è un mistero
Blue Clouds,

questo link fornisce una spiegazione dei comandi sopra menzionati
Tendai Mare,

Funziona veramente. Grazie ...
:)

0

Il mio problema è che quando uso https per l'URL remoto, non funziona, quindi uso invece http. Questo mi permette di pubblicare / sincronizzare istantaneamente con GitHub da Team Explorer.


Vorrei sapere cosa significa "non funziona", quindi ho avuto un'idea più chiara se ciò potesse essere rilevante per i problemi che ho avuto.
user34660,

0

Nessuna delle risposte era specifica per il mio problema, quindi ecco come l'ho fatto.

Questo è per Visual Studio 2015 e avevo già creato un repository su Github.com

Se hai già l'URL del tuo repository copiarlo e quindi in Visual Studio:

  • Vai a Team Explorer
  • Fai clic sul pulsante "Sincronizza"
  • Dovrebbe avere 3 opzioni elencate con i link "Inizia".
  • Ho scelto il link "Inizia" rispetto a "pubblica nel repository remoto", che è quello in basso
  • Apparirà una casella gialla che richiede l'URL. Basta incollare l'URL lì e fare clic su pubblica.

0

Sono pochi i clic in meno in VS2017 e se il repository locale è in anticipo rispetto al clone Git, fai clic su Controllo del codice sorgente dal menu a comparsa del progetto: viene visualizzata la finestra di dialogo Cambiamenti di Team Explorer: digita una descrizione, qui è "Stack Overflow Esempio di commit ". Fai una scelta tra le tre opzioni in offerta, tutte spiegate qui .

inserisci qui la descrizione dell'immagine


inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.