Inserisci il progetto esistente in Github


224

Ho una cartella con le fonti del mio progetto. Come posso inserire questo progetto nel repository di Github?

Ho provato a usare questi passaggi:

  1. Ho creato un repository vuoto su GitHub.
  2. Corro git-bash e ho digitato git init, quindi nella .gitcartella principale del progetto appariva la cartella.
  3. Ho aggiunto alcuni file al controllo versione utilizzando git add sourcesFolderName
  4. Ho eseguito il commit dei file aggiunti nel passaggio precedente utilizzando git commit -m "initial commit"
  5. Ho specificato il repository remoto usando git remote add MyProject <url>
  6. Infine git push, ma nulla viene inviato al repository remoto ... (nessun errore di autorizzazione)

Quindi, come posso spingere le fonti esistenti nel repository github appena creato?


4
Qual è stato esattamente l'output di git push?
1615903

1
@ user1615903 Sono sicuro di avere una sequenza errata di passaggi. Penso di aver bisogno di qualcosa del genere git clone. Non ricordo l'output di git push, ma penso che non sia significativo. Perché problema in un altro posto
MyTitle il

Hai fatto git push MyProject master?
Felix Kling,

Questo post sul blog potrebbe aiutare chiunque voglia svolgere questo compito. Tutti i passaggi sono descritti in modo semplice e dettagliato. samranga.blogspot.com/2015/07/…
Samitha Chathuranga

1
Un piccolo consiglio, prova a utilizzare l'app SourceTree.L'interfaccia utente è molto bella.
Mohammad fece l'

Risposte:


340
git init
git add .
git commit -m "Initial commit"
git remote add origin <project url>
git push -f origin master

L' -fopzione su git pushforza la spinta. Se non lo usi, vedrai un errore come questo:

To git@github.com:roseperrone/project.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'git@github.com:roseperrone/project.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first merge the remote changes (e.g.,
hint: 'git pull') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

5
Questo risolto il mio problema, ma non potevo fare il comando 4 git remote add origin <project url>dicendo command syntax not correct. L'ho ignorato e ha funzionato
Khalil Khalaf il

4
Solo una nota a margine, se non si desidera mai utilizzare il sito Web GitHub, è possibile aggiungerlo dopo il terzo passaggio: curl -u 'USER' https://api.github.com/user/repos -d '{"name":"REPO"}'sostituire USER con il proprio nome utente e REPO con il nome del repository da creare.
MD XF,

1
Inoltre, penso che non puoi più semplicemente fare git add ., dovresti cambiarlo in cat "# reponamehere" >README.mde poi git add README.md. Ecco come dice la documentazione di GitHub per farlo
MD XF

2
Credo che la -fbandiera forzerà la scomparsa della storia remota? Sembra un operatore pericoloso.
van abel,

112

In termini meno tecnici

La mia risposta non è diversa ma sto aggiungendo ulteriori informazioni perché quelle nuove potrebbero trarre vantaggio dal colmare le lacune nelle informazioni.

Dopo aver creato il repository su github hanno le istruzioni. Puoi seguirli. Ma ecco alcuni suggerimenti aggiuntivi perché so quanto sia frustrante iniziare con Git.

Diciamo che hai già avviato il tuo progetto localmente. Quanto hai non importa. Ma facciamo finta di avere un progetto php. Diciamo che hai index.php, contact.php e una cartella delle risorse con immagini, CSS e font. Puoi farlo in questo modo (facile), ma ci sono molte opzioni:

opzione 1

Accedi al tuo account github e crea il repository.

inserisci qui la descrizione dell'immagine

Nella schermata seguente puoi copiarlo dove serve se fai clic sul pulsante (lato destro dello schermo) per "clonare sul desktop".

inserisci qui la descrizione dell'immagine

Puoi (o farlo in un altro modo) quindi copiare i contenuti dal tuo progetto esistente nel tuo nuovo repository. Utilizzando l'app github, puoi semplicemente eseguire il commit da lì utilizzando la loro GUI (ciò significa che fai semplicemente clic sui pulsanti nell'applicazione). Naturalmente inserisci i tuoi appunti per il commit.

opzione 2

  • Crea il tuo repository su github come menzionato sopra.
  • Sul tuo computer, vai alla tua directory usando il terminale. utilizzando la riga di comando di Linux si dovrebbe cd nella directory. Da qui esegui i seguenti comandi per "connettere" il tuo progetto esistente al tuo repository su github. (Questo presuppone che tu abbia creato il tuo repository su github ed è attualmente vuoto)

prima fai questo per inizializzare git (controllo versione).

git init

quindi fai questo per aggiungere tutti i tuoi file da "monitorare". Se hai file che vuoi ignorare, devi aggiungere un .gitignorema per semplicità, basta usare questo esempio per imparare.

git add .

Quindi commetti e aggiungi una nota tra il """primo commit" simile ecc.

 git commit -m "Initial Commit"

Ora, qui è dove aggiungi il tuo repository esistente

git remote add github <project url>

Ma non digitare letteralmente <project url>, ma l'URL del tuo progetto. Come lo ottieni? Vai al link in cui si trova il tuo repository su github, quindi copia il link. Nel mio caso, uno dei miei repository è https://github.com/JGallardo/urbanhistorical, quindi il mio URL risultante per questo comando aggiungerebbe solo .git dopo. Quindi eccolo qui

git remote add github https://github.com/JGallardo/urbanhistorical.git

Prova per vedere che ha funzionato facendo

git remote -v

Dovresti vedere a cosa è collegato il tuo repository.

inserisci qui la descrizione dell'immagine

Quindi puoi inviare le tue modifiche a github

git push github master

o

git push origin master

Se ricevi ancora un errore, puoi forzarlo con -f. Ma se lavori in un ambiente di squadra, fai attenzione a non forzare o potresti creare più problemi.

git push -f origin master

3
La tua è la migliore spiegazione. Per gli altri che leggono questo: ho creato prima il mio repository su github, quindi non mi lasciava spingere. Ho dovuto> github pull <project url> e poi github push. Dopo ciò, tutto andò bene.
Philologon

1
Grazie mille per questo! L'opzione 1 mi ha salvato la vita dopo che tutte le altre opzioni sono fallite! : D
Sara Inés Calderón il

2
Grande spiegazione! Tuttavia aggiungerei le seguenti righe: git remote aggiungi origin <project url> e poi git push -f origin master. Senza -f, si verificherà un errore
Javiar Sandra,

1
per favore aggiungi l'opzione -f all'ultimo comando, in questo modo la tua risposta è la migliore
Jacobo Koenig,

1
Questo mi ha davvero aiutato! Ho accidentalmente inizializzato il repository github con un README, quindi non ha funzionato. L'ho fatto di nuovo con un repository vuoto e ha funzionato.
Verena Haunschmid,

36

sarà necessario specificare quale ramo e quale telecomando quando si preme:

➤ git init ./
➤ git add Readme.md
➤ git commit -m "Initial Commit"
➤ git remote add github <project url>
➤ git push github master

Funzionerà come previsto.

Puoi configurarlo di default facendo:

➤ git branch -u github/master master

che ti permetterà di fare un git pushmaster senza specificare il telecomando o il ramo.


1
Corretta. È inoltre possibile saltare la /masterparte, poiché è ridondante.
Gabriele Petronella,

1
"git add Readme.md" non è corretto. Se esiste già, non è necessario aggiungere. Se non esiste, il comando non riesce. Ad ogni modo, questo non è corretto.
Mitch

1
@Mitch questa non è un'invocazione magica segreta che farà improvvisamente fare al tuo computer quello che vuoi. È un esempio per dare alle persone e idea di cosa dovrebbero fare. Mi aspetto che le persone capiscano i comandi che stanno digitando nella loro macchina.
brice

9

Se sei su un Mac (e questo probabilmente funziona allo stesso modo su un PC), ecco un modo molto semplice per farlo. Stranamente ho guardato in alto e in basso per questo semplice processo e non l'ho mai trovato.

  • Non fare nulla su Github (tranne avere un account e non aver esaurito tutti i repository disponibili).
  • Scarica GitHub per Mac e installa. Passare attraverso la configurazione dell'account, ecc. NON creare alcun repository per il progetto esistente.
  • "Aggiungi nuovo repository locale" nei repository.
  • Seleziona la tua cartella esistente. Ti chiederà se vuoi farlo, di si.
  • Una volta fatto, vedrai un elenco di tutti i tuoi file, ecc. Commitali.
  • Vai a Archivi e Pubblica (questo creerà il nuovo repository su GitHub per te, se hai impostato correttamente il tuo account).
  • Vai a Repository e Push (vedrai la cosa "niente da spingere", o invierà i tuoi file / modifiche al repository appena fatto automaticamente).
    • Mi chiedo perché non sei riuscito a trovare questo semplice processo altrove.

So che non è consigliabile utilizzare la cartella del progetto come cartella repository. Lo faccio sempre, funziona sempre, lo rende semplice e non ho mai avuto problemi.


Mi sembra che l'app GitHub consenta a un utente di farlo in questo modo, quindi deve andare bene.
johnnieb


5

Seguirò il precedente commento di Rose P. Mi ci è voluto molto tempo per trovare la soluzione, quindi sto ripubblicando (si spera in un inglese semplice) cosa ha funzionato per me ...

passaggio 1: crea il tuo nuovo repository su Github.com (salta se ne hai già uno)

passaggio 2: chiudere XCode ... non necessario

passo 3: Apri una nuova finestra Terminale (sì, devi usare il terminale ... Ho provato tutti gli altri modi ... niente ha funzionato)

passaggio 4: utilizzo del comando cd per trovare la posizione della cartella nel progetto (il progetto che si desidera aggiungere al repository esistente o nuovo)

passaggio 5: digita git init otterrai qualcosa del genere. Reinizializzato il repository Git esistente in / {directory corrente}

passaggio 6: digitare git add. non succede nulla dopo questo passaggio, ma digitalo e vai al passaggio successivo.

passo 7: digita git commit -m "Iniziale commit" otterrai quanto segue: # Sul master della filiale nulla da impegnare, directory di lavoro pulita

o

alcune spiegazioni sulla configurazione e quindi un elenco di file che sono stati modificati.

passaggio 8: digitare git remote add origin {project url} L'URL del progetto è disponibile in Github.com. È l'URL del clone HTTPS ... dovresti essere in grado di copiare e incollare nella finestra del terminale. Se il sistema ti dice che l'origine esiste già, crea un nome diverso o usa il nome del tuo progetto (qualcosa di diverso)

passaggio 9: vai all'applicazione GitHub sul Mac e fai clic sul pulsante "Sincronizza ramo" (anche se non ci sono modifiche in sospeso). Ci vuole un po 'di tempo prima che si impegni effettivamente, ma se torni alla cartella del tuo repository locale dovresti vedere il tuo nuovo progetto. Ho dovuto ricreare la cartella principale, ma è solo una questione di spostare i tuoi file. Vai su GitHub.com e aggiorna il tuo browser e anche i tuoi nuovi file dovrebbero essere presenti.

Spero che aiuti.


5
Follow below gitbash commands to push the folder files on github repository :-
1.) $ git init
2.) $ git cd D:\FileFolderName
3.) $ git status
4.) If needed to switch the git branch, use this command : 
    $ git checkout -b DesiredBranch
5.) $ git add .
6.) $ git commit -m "added a new folder"
7.) $ git push -f https://github.com/username/MyTestApp.git TestBranch
    (i.e git push origin branch)

4
git init

Aggiungi i file nel tuo nuovo repository locale. Questo li mette in scena per il primo commit.

git add .

Aggiunge i file nel repository locale e li mette in scena per il commit. Per annullare la messa in scena di un file, utilizzare 'git reset HEAD YOUR-FILE'.

Esegui il commit dei file che hai messo in scena nel tuo repository locale.

git commit -m "First commit"
# Commits the tracked changes and prepares them to be pushed to a remote

repository. Per rimuovere questo commit e modificare il file, usa 'git reset --soft HEAD ~ 1' e commetti e aggiungi nuovamente il file. Copia campo URL repository remoto Nella parte superiore della pagina di installazione rapida del repository GitHub, fare clic per copiare l'URL del repository remoto.

Alla riga di comando, aggiungere l'URL per il repository remoto in cui verrà inviato il repository locale.

git remote add origin remote repository URL
# Sets the new remote
git remote -v
# Verifies the new remote URL

Invia le modifiche nel tuo repository locale a GitHub.

git push origin master
# Pushes the changes in your local repository up to the remote repository you 

specificato come origine


4
  1. Dalla riga di comando, accedere alla directory del repository locale.
  2. Crea un nuovo repository in GitHub, ti fornirà un link che termina .git.
  3. in cmd run: git remote add origin [your_GitHub_Repository_link](ricorda che il link dovrebbe terminare con .git)
  4. quindi eseguire: git push -u origin master

Spero sia stato utile.


4

Crea un nuovo repository

git clone <url>
cd "repositoryName"
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

Cartella esistente

cd existing_folder
git init
git remote add origin <url>
git add .
git commit -m "Initial commit"
git push -u origin master

Repository Git esistente

cd existing_repo
git remote rename origin old-origin
git remote add origin <url>
git push -u origin --all
git push -u origin --tags

qual è la differenza tra commit e push? a cosa si riferiscono "origine" e "maestro" in push? un ramo?
ealeon

2

Innanzitutto, crea un nuovo repository su Github con il nome del tuo progetto, quindi segui i passaggi seguenti.

1)git init
2)git add *
3)git commit -m "first commit"
4)git remote add origin https://github.com/yuvraj777/GDriveDemo.git
5)git push -u origin master

2

Lo so, questa è una vecchia domanda, ma sto cercando di spiegare ogni passo, quindi potrebbe aiutare gli altri. Ecco come aggiungo una fonte esistente a git:

  1. Crea il repository su git, quindi avrai ssh || https dove andrai in remoto aggiungi il tuo codice sorgente.
  2. Nel tuo terminale vai sul percorso del tuo progetto.
  3. Esegui git init(qui si avvia il progetto come git one).
  4. Esegui git add *(qui aggiungi tutti i file e le cartelle dal tuo progetto).
  5. Esegui git commit -m "Initial Commit."(qui esegui il commit dei file e delle cartelle aggiunti al passaggio 4; tieni presente che non puoi inviare le modifiche senza impegnarle).
  6. Esegui git remote add origin https://your_username@bitbucket.org/your_username/project-name.git(qui aggiungi un progetto remoto in cui verrà inviato il tuo sorgente; sostituisci il mio link con il tuo ssh || https dal passaggio # 1).
  7. Esegui git push -u origin master(qui spingi la tua fonte nel repository git).

Nota: questi sono semplici passaggi per inserire la tua sorgente nel ramo principale .


2

Odio aggiungere ancora un'altra risposta, ma il mio scenario particolare non è abbastanza coperto qui. Avevo un repository locale con una cronologia delle modifiche che volevo conservare e un repository non vuoto creato per me su Github (ovvero, con il README.md predefinito). Sì, puoi sempre ricreare il repository Github come repository vuoto, ma nel mio caso qualcun altro ha i permessi per creare questo repository particolare e non volevo disturbarlo, se ci fosse una soluzione semplice.

In questo scenario, si verificherà questo errore quando si tenta di git pushdopo aver impostato l'origine remota:

 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'git@github.com:<my repo>.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Come indica l'errore, avevo bisogno di fare un git pulldopo aver impostato l'origine remota, ma avevo bisogno di specificare l' --allow-unrelated-historiesopzione. Senza questa opzione, si git pulllamenta warning: no common commits.

Ecco quindi l'esatta sequenza di comandi che ha funzionato per me:

git remote add origin <github repo url>
cp README.md README.md-save
git pull origin master --allow-unrelated-histories
mv README.md-save README.md
git commit -a
git push

Ho lo stesso problema, ma i tuoi passi portano a qualcosa di strano nell'editor di testo
john ktejik

Ah, suppongo che normalmente usi un'interfaccia utente e normalmente non esegui il commit dalla riga di comando (niente di sbagliato in questo, utilizzo l'interfaccia utente di SourceTree). L'editor che è apparso è molto probabilmente l'editor vi, la cui interfaccia è un intero argomento in sé, quindi non approfondirò qui.
Jonathan Fischer,

2

A partire dal 29/07/2019, Github presenta agli utenti le istruzioni per eseguire questa attività quando viene creato un repository, offrendo diverse opzioni:

creare un nuovo repository sulla riga di comando

git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/novomotus/vitaprice.git
git push -u origin master

invia un repository esistente dalla riga di comando

git remote add origin https://github.com/novomotus/vitaprice.git
git push -u origin master

importa il codice da un altro repository

premere il importpulsante per inizializzare il processo.

Per gli studenti visivi là fuori:

inserisci qui la descrizione dell'immagine




0

Ho scoperto che stimolare un aggiornamento in sequenza "naturale" era un percorso più semplice rispetto alle cose che spingevano la forza.

Supponendo che il repository sia già stato creato su github e che si possa anche aver inserito alcune cose in README.md.

  1. Sul tuo computer, apri il terminale e git clone [repo URL]

  2. Vedrai che sarà stata creata una nuova cartella con il nome del tuo repository. Sentiti libero di rinominarlo - non importa.

  3. Sposta il tuo codice, file ecc. In questa cartella. Modifica il file README.md se necessario.

  4. Ora apri Terminal / prompt dei comandi, entra in quella cartella e fai le cose come se stessi facendo il prossimo aggiornamento al repository:

git add .
git commit -m "v2"
git push origin master

Nota: al comando commit git potrebbe rifiutare, chiedendo prima di configurare l'e-mail e la password dell'utente. Seguire i passaggi indicati sullo schermo, quindi eseguire nuovamente il comando di commit.

  1. E quei tre comandi è quello che fai ora in poi ogni volta che vuoi spingere un altro aggiornamento.
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.