web-dev-qa-db-de.com

Bestehendes Projekt in Github verschieben

Ich habe einen Ordner mit meinen Projektquellen. Wie kann ich dieses Projekt in das Repository von Github verschieben? 

Ich habe versucht, diese Schritte zu verwenden:

  1. Ich habe ein leeres Repository auf GitHub erstellt. 
  2. Ich starte git-bash und tippte git init ein, so erschien im Projektstamm .git Ordner. 
  3. Ich habe einige Dateien zur Versionskontrolle mit git add sourcesFolderName hinzugefügt.
  4. Ich habe Dateien übernommen, die im vorherigen Schritt mit git commit -m "initial commit" hinzugefügt wurden.
  5. Ich habe ein Remote-Repository mit git remote add MyProject <url> angegeben.
  6. Endlich git Push, aber nichts wird zum Remote-Repo geschoben ... (kein Autorisierungsfehler)

Wie kann ich also vorhandene Quellen in ein neu erstelltes Github-Repo verschieben? 

185
MyTitle
git init
git add .
git commit -m "Initial commit"
git remote add Origin <project url>
git Push -f Origin master

Die -f-Option auf git Push erzwingt den Push. Wenn Sie es nicht verwenden, wird ein Fehler wie folgt angezeigt:

To [email protected]:roseperrone/project.git
 ! [rejected]        master -> master (fetch first)
error: failed to Push some refs to '[email protected]: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.
289
Rose Perrone

Weniger technisch gesehen

Meine Antwort ist nicht anders, aber ich füge weitere Informationen hinzu, da die neuen Informationen von der Lücke in den Informationen profitieren könnten.

Nachdem Sie das Repo auf Github erstellt haben, haben sie Anweisungen. Sie können denen folgen. Aber hier sind einige zusätzliche Tipps, weil ich weiß, wie frustrierend es ist, mit git zu beginnen.

Nehmen wir an, Sie haben Ihr Projekt bereits lokal gestartet. Wie viel Sie haben, spielt keine Rolle. Aber lassen Sie uns so tun, als hätten Sie ein PHP-Projekt. Nehmen wir an, Sie haben die index.php, contact.php und einen Ordner für Assets mit Bildern, CSS und Schriftarten. Sie können dies auf einfache Weise tun, aber es gibt viele Optionen:

Option 1

Melden Sie sich bei Ihrem github-Konto an und erstellen Sie das Repo. 

 enter image description here

In dem folgenden Bildschirm können Sie es an die gewünschte Stelle kopieren, wenn Sie auf die Schaltfläche (rechts auf dem Bildschirm) klicken, um "In Desktop klonen" zu klicken. 

 enter image description here

Sie können den Inhalt (oder auf andere Weise) aus Ihrem vorhandenen Projekt in Ihr neues Repo kopieren. Mit der github-App können Sie einfach von dort aus die GUI übernehmen (dh Sie klicken einfach auf die Schaltflächen in der Anwendung). Natürlich geben Sie Ihre Notizen für das Commit ein.

Option 2

  • Erstellen Sie Ihr Repo auf Github wie oben erwähnt. 
  • Wechseln Sie auf Ihrem Computer über das Terminal in Ihr Verzeichnis. Mit der Linux-Befehlszeile würden Sie cd in das Verzeichnis aufnehmen. Von hier aus führen Sie die folgenden Befehle aus, um Ihr vorhandenes Projekt mit Ihrem Repo auf Github zu "verbinden". (Dies setzt voraus, dass Sie Ihr Repo auf Github erstellt haben und es derzeit leer ist.)

zuerst initialisieren Sie git (Versionskontrolle).

git init

dann fügen Sie alle Ihre Dateien hinzu, die "überwacht" werden sollen. Wenn Sie Dateien haben, die Sie ignorieren möchten, müssen Sie einen .gitignore hinzufügen. Der Einfachheit halber sollten Sie dieses Beispiel nur zum Lernen verwenden.

git add .

Dann machen Sie einen Commit und fügen eine Notiz zwischen "" hinzu wie "first commit" usw.

 git commit -m "Initial Commit"

Jetzt fügen Sie Ihr vorhandenes Repo hinzu

git remote add github <project url>

Geben Sie nicht <project url> buchstäblich, sondern Ihre eigene Projekt-URL ein. Wie bekommst du das? Gehen Sie zu dem Link, auf dem sich Ihr Repo auf Github befindet, und kopieren Sie den Link. In meinem Fall ist eines meiner Repos https://github.com/JGallardo/urbanhistorical, so dass meine resultierende URL für diesen Befehl danach einfach .git hinzufügt. Also hier wäre es 

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

Testen Sie, ob es funktioniert hat 

git remote -v

Sie sollten sehen, mit was Ihr Repo verbunden ist.

 enter image description here

Dann können Sie Ihre Änderungen in github verschieben

git Push github master

oder 

git Push Origin master

Wenn Sie weiterhin eine Fehlermeldung erhalten, können Sie diese mit -f erzwingen. Wenn Sie jedoch in einer Teamumgebung arbeiten, achten Sie darauf, dass Sie keine Gewalt erzwingen, da sonst weitere Probleme entstehen könnten.

git Push -f Origin master
95
JGallardo

sie müssen angeben, welche Verzweigung und welche Fernbedienung beim Drücken:

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

Funktioniert wie erwartet.

Sie können dies standardmäßig einrichten, indem Sie Folgendes tun:

➤ git branch -u github/master master

dadurch können Sie einen git Push vom Master ausführen, ohne die Remote- oder Zweigstelle anzugeben.

31
brice

Wenn Sie sich auf einem Mac befinden (und dies auf einem PC wahrscheinlich genauso funktioniert), können Sie dies ganz einfach tun. Seltsamerweise habe ich für diesen einfachen Prozess hoch und niedrig gesucht und ihn nie gefunden. 

  • Machen Sie nichts bei Github (außer Sie haben ein Konto und haben nicht alle verfügbaren Repos aufgebraucht). 
  • Laden Sie GitHub für Mac herunter und installieren Sie es. Durchlaufen Sie die Kontoeinrichtung usw. Erstellen Sie KEINE Repositorys für Ihr vorhandenes Projekt. 
  • "Neues lokales Repository hinzufügen" in Repositorys. 
  • Wählen Sie Ihren vorhandenen Ordner aus. Es wird gefragt, ob Sie das wollen, ja sagen. 
  • Wenn Sie fertig sind, sehen Sie eine Liste aller Ihrer Dateien usw. Übertragen Sie sie.
  • Gehen Sie zu Repositories und Publish (hier wird das neue Repo auf GitHub erstellt, wenn Sie Ihr Konto ordnungsgemäß eingerichtet haben). 
  • Gehen Sie zu Repositories und Push (entweder sehen Sie die "nichts zu Push" -Datei oder drücken Sie Ihre Dateien/Änderungen in das neu erstellte Repo).
    • Ich frage mich, warum Sie diesen einfachen Prozess nirgendwo anders finden könnten. 

Ich weiß, dass es nicht empfohlen wird, den Projektordner als Repo-Ordner zu verwenden. Ich mache es die ganze Zeit, es funktioniert immer, es macht es einfach und ich habe nie Probleme damit. 

6
Tcoz

In Summe;

git init
git status
git add "*"
git commit -m "Comment you want"
git remote add Origin  https://link
git Push  -u Origin master

Ich möchte eine Quelle mit Ihnen teilen, damit Sie Git leichter kennenlernen können. 

https://try.github.io/levels/1/challenges/1

3
shaurya uppal
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)
3
git init

Fügen Sie die Dateien Ihrem neuen lokalen Repository hinzu. Dies führt sie zum ersten Commit ein.

git add .

Fügt die Dateien im lokalen Repository hinzu und stellt sie für das Commit bereit. Verwenden Sie 'git reset HEAD YOUR-FILE ", um eine Datei abzubilden.

Übertragen Sie die Dateien, die Sie in Ihrem lokalen Repository bereitgestellt haben.

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

repository. Um dieses Commit zu entfernen und die Datei zu ändern, verwenden Sie 'git reset --soft HEAD ~ 1', und bestätigen Sie, und fügen Sie die Datei erneut hinzu . Feld für das Remote-Repository-URL kopieren Remote-Repository-URL.

Fügen Sie in der Eingabeaufforderung die URL für das Remote-Repository hinzu, in das Ihr lokales Repository gepusht werden soll.

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

Übertragen Sie die Änderungen in Ihrem lokalen Repository nach GitHub.

git Push Origin master
# Pushes the changes in your local repository up to the remote repository you 

als Ursprung angegeben

3
Shahid Karimi

Ich werde dem vorherigen Kommentar von Rose P folgen. Es hat lange gedauert, bis ich die Lösung gefunden habe.

schritt 1: Erstellen Sie Ihr neues Repository auf Github.com (überspringen Sie, wenn Sie bereits eines haben)

schritt 2: Schließen Sie XCode ... nicht erforderlich

schritt 3: Öffnen Sie ein neues Terminalfenster (ja, Sie müssen Terminal verwenden ... Ich habe alle anderen Möglichkeiten ausprobiert ... nichts hat funktioniert)

schritt 4: Suchen Sie mit dem Befehl cd nach Ihrem Ordner in Ihrem Projekt (dem Projekt, das Sie Ihrem bestehenden oder neuen Repository hinzufügen möchten).

schritt 5: Geben Sie git init Sie erhalten so etwas. Bestehendes Git-Repository in/{aktuelles Verzeichnis} neu initialisieren

schritt 6: typ git add. Nach diesem Schritt passiert nichts, aber geben Sie es ein und fahren Sie mit dem nächsten Schritt fort.

schritt 7: Geben Sie git commit -m "Initial Commit" Sie erhalten Folgendes: # Auf dem Zweigmaster müssen keine Commits ausgeführt werden, das Arbeitsverzeichnis muss sauber sein

oder 

erklärungen zur Konfiguration und eine Liste der Dateien, die sich geändert haben.

schritt 8: Typ git Remote hinzufügen Origin {Projekt-URL} Die Projekt-URL befindet sich in Github.com. Es ist die HTTPS-Klon-URL ... Sie sollten einfach in das Terminalfenster kopieren und einfügen können. Wenn das System Ihnen mitteilt, dass Origin bereits existiert, erstellen Sie einen anderen Namen oder verwenden Sie Ihren Projektnamen (etwas anderes).

schritt 9: Gehen Sie zu Ihrer GitHub-Anwendung auf Ihrem Mac und klicken Sie auf die Schaltfläche "Zweig synchronisieren" (auch wenn keine ausstehenden Änderungen vorhanden sind). Ich glaube, es dauert eine Weile, bis das Commit tatsächlich ausgeführt wird. Wenn Sie jedoch zu Ihrem lokalen Repository-Ordner zurückkehren, sollten Sie Ihr neues Projekt sehen. Ich musste den übergeordneten Ordner neu erstellen, aber es ist nur eine Frage des Verschiebens Ihrer Dateien. Gehen Sie zu GitHub.com und aktualisieren Sie Ihren Browser. Ihre neuen Dateien sollten ebenfalls vorhanden sein. 

Ich hoffe das hilft. 

3
Carlos
  1. Navigieren Sie in der Befehlszeile zu Ihrem lokalen Repository-Verzeichnis.
  2. Erstellen Sie ein neues Repository in GitHub. Sie erhalten einen Link, der mit .git endet. 
  3. im cmd-Lauf: git remote add Origin [your_GitHub_Repository_link] (Der Link sollte mit .git enden)
  4. führen Sie dann Folgendes aus: git Push -u Origin master

Hoffe das war nützlich.

2
Ali Ezzat Odeh

Folgen Sie einfach den Schritten in dieser URL: KLICKEN SIE HIER

1
shubham mishra

Ich hasse es, noch eine weitere Antwort hinzuzufügen, aber mein spezielles Szenario wird hier nicht ganz behandelt. Ich hatte ein lokales Repo mit einer Historie der Änderungen, die ich beibehalten wollte, und ein nicht leeres Repo, das auf Github für mich erstellt wurde (dh mit der Standardeinstellung README.md). Ja, Sie können das Github-Repo immer als leeres Repo neu erstellen, aber in meinem Fall hat ein anderer Benutzer die Berechtigung, dieses bestimmte Repo zu erstellen, und ich wollte ihn nicht belästigen, wenn es eine einfache Problemumgehung gab.

In diesem Szenario tritt dieser Fehler auf, wenn Sie versuchen, git Push zu setzen, nachdem Sie das entfernte Origin festgelegt haben:

 ! [rejected]        master -> master (fetch first)
error: failed to Push some refs to '[email protected]:<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.

Wie aus dem Fehler hervorgeht, musste ich nach dem Einstellen des Remote-Ursprungs einen git pull ausführen, aber ich musste die --allow-unrelated-histories-Option angeben. Ohne diese Option beschwert sich git pull über warning: no common commits.

Hier ist also die genaue Reihenfolge der Befehle, die für mich funktionierten:

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
1

Erstellen Sie zunächst auf Github ein neues Repository mit Ihrem Projektnamen. Folgen Sie dann den unten stehenden Schritten.

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
1
Yuvraj Sinh

Ich weiß, das ist eine alte Frage, aber ich versuche jeden Schritt zu erklären, so dass es anderen helfen kann. So füge ich eine vorhandene Quelle zu git hinzu:

  1. Erstellen Sie das Repo auf dem Git, so dass Sie die ssh || haben https, wo Sie Ihren Quellcode hinzufügen.
  2. Gehen Sie in Ihrem Terminal zum Pfad Ihres Projekts.
  3. Führen Sie git init aus (hier initiieren Sie das Projekt als git one).
  4. Führen Sie git add * aus (hier fügen Sie alle Dateien und Ordner Ihres Projekts hinzu).
  5. Führen Sie git commit -m "Initial Commit." aus (hier übergeben Sie Ihre in Schritt 4 hinzugefügten Dateien und Ordner; bedenken Sie dabei, dass Sie Ihre Änderungen nicht übernehmen können, ohne sie zu bestätigen).
  6. Führen Sie git remote add Origin https://[email protected]/your_username/project-name.git aus (hier fügen Sie ein Remote-Projekt hinzu, bei dem Ihre Quelle gepusht wird; ersetzen Sie meinen Link durch Ihren ssh || https aus Schritt 1).
  7. Führen Sie git Push -u Origin master aus (hier drücken Sie Ihre Quelle in das git-Repository).

Hinweis: Dies sind einfache Schritte, um Ihre Quelle in den Zweig master zu verschieben.

1
Lucaci Sergiu

Ab dem 29.07.2013 zeigt Github den Benutzern die Anweisungen zum Ausführen dieser Aufgabe beim Erstellen eines Repos mit verschiedenen Optionen an:

Erstelle ein neues Repository in der Kommandozeile

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

Ein vorhandenes Repository von der Kommandozeile aus pushen

git remote add Origin https://github.com/novomotus/vitaprice.git
git Push -u Origin master

Code aus einem anderen Repository importieren

drücken Sie die Taste import, um den Vorgang zu initialisieren.

Für die visuellen Lernenden da draußen:

enter image description here

0

Wenn Sie die Befehlszeile verlassen möchten, können Sie auch SourceTree verwenden. 

Hier finden Sie einige zusätzliche Ressourcen zur Einrichtung:

0
Tim Hutchison

Erstellen Sie ein neues Repository

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

Bestehender Ordner

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

Bestehendes Git-Repository

cd existing_repo
git remote rename Origin old-Origin
git remote add Origin <url>
git Push -u Origin --all
git Push -u Origin --tags
0
Anit Kumar

Ich fand, dass es einfacher war, ein Update in "natürlicher" Reihenfolge zu stimulieren, als Dinge mit Gewalt voranzutreiben.

Angenommen, das Repo ist bereits auf github erstellt und Sie haben möglicherweise auch einiges in die README.md geschrieben.

  1. Öffnen Sie auf Ihrem Computer das Terminal und git clone [repo URL]

  2. Sie werden sehen, dass ein neuer Ordner mit dem Namen Ihres Repos erstellt wurde. Fühlen Sie sich frei, es umzubenennen - spielt keine Rolle.

  3. Verschieben Sie Ihren Code, Ihre Dateien usw. in diesen Ordner. Bearbeiten Sie die README.md, wenn Sie müssen.

  4. Öffnen Sie nun Terminal/Eingabeaufforderung, gehen Sie in diesen Ordner und tun Sie so, als würden Sie das nächste Update für das Repository vornehmen:

git add .
git commit -m "v2"
git Push Origin master

Hinweis: Beim Festschreibebefehl kann git ablehnen, indem Sie zuerst aufgefordert werden, die Benutzer-E-Mail-Adresse und das Kennwort zu konfigurieren. Befolgen Sie die Anweisungen auf dem Bildschirm und führen Sie den Befehl commit erneut aus.

  1. Und diese drei Befehle führen Sie nun jedes Mal aus, wenn Sie ein weiteres Update pushen möchten.
0
Nikhil VJ