Wie füge ich einem vorhandenen Quellcodeordner eine Git-Versionskontrolle (Bitbucket) hinzu?


83

Wie kann ich den Inhalt eines vorhandenen Ordners zur Git-Versionskontrolle hinzufügen?

Das Tutorial hier behandelt den Fall, ein Verzeichnis zu erstellen und dann Quellinhalte hinzuzufügen. Ich habe einen Quellcode in einem Ordner, der pfadabhängig ist und ihn nicht verschieben möchte.

Wie kann ich einfach in meinen Ordner gehen und ihn zu einem Repository machen?


Existiert das Git Repo bereits auf Bitbucket? Oder fängst du gerade bei Null an und möchtest ein Git-Repo erstellen, das auf Bitbucket sein wird?
Jeff B

Ich habe bereits ein Repo auf Bitbucket erstellt.
user1406716

3
Das genaue, was Sie wollen, wird hier beschrieben. samranga.blogspot.com/2015/07/…
Samitha Chathuranga

Wenn Sie ein Tool wie Visual Studio für Git haben, müssten Sie jemals die Befehlszeile verwenden? Es hat eine Veröffentlichungsfunktion, in der Sie eine ganz neue Filiale veröffentlichen können
Peter PitLock

Antworten:


176

Die endgültige Arbeitslösung mit der Antwort von @Arrigo und dem Kommentar von @Samitha Chathuranga. Ich werde alles zusammenfügen, um eine vollständige Antwort auf diese Frage zu erstellen:

  1. Angenommen, Sie haben Ihren Projektordner auf dem PC.
  2. Erstellen Sie ein neues Repository auf bitbucket: Geben Sie hier die Bildbeschreibung ein

  3. Drücken Sie auf Ich habe ein bestehendes Projekt : Geben Sie hier die Bildbeschreibung ein

  4. Öffnen Sie die Git CMD-Konsole und geben Sie Befehl 1 aus dem zweiten Bild ein (gehen Sie zu Ihrem Projektordner auf Ihrem PC).

  5. Befehl eingeben git init

  6. Befehl eingeben git add --all

  7. Geben Sie Befehl 2 aus dem zweiten Bild ein ( git remote add origin YOUR_LINK_TO_REPO)

  8. Befehl eingeben git commit -m "my first commit"

  9. Befehl eingeben git push -u origin master

Hinweis: Wenn Sie eine Fehlermeldung erhalten, bei der E-Mail oder Name nicht erkannt werden können, geben Sie nach dem 5. Schritt einfach die folgenden Befehle ein:

 git config --global user.email "yourEmail"  #your email at Bitbucket
 git config --global user.name "yourName"  #your name at Bitbucket

@ VibhavChaddha gibt es einen Git-Befehl:git remote add origin YOUR_LINK_TO_REPO
Choletski

Nein, nein, das weiß ich. Ich meinte, müssen wir es irgendwo zwischen den Schritten verwenden, die Sie erwähnt haben, weil Sie es im Bild speziell angegeben haben. Vielen Dank.
Me_developer

1
Wenn Sie für Schritt 7 keinen öffentlichen Schlüssel für ssh eingerichtet haben (dh Berechtigung verweigert ( öffentlicher Schlüssel ) .fatal: Beim Push konnte nicht aus dem Remote-Repository gelesen werden ), verwenden Sie die https-URL git remote set-url origin https://<username>@bitbucket.org/<username>/reponame.git
M_K

1
@ Jonjie es kann jeden Text geben, den Sie wollen
Choletski

1
@Choletski Großartig! :)
Jonjie

27

Sie können ein Git-Verzeichnis in einem Verzeichnis initiieren, das andere Dateien enthält. Danach können Sie Dateien zum Repository hinzufügen und dort festschreiben.

Erstellen Sie ein Projekt mit einem Code:

$ mkdir my_project
$ cd my_project
$ echo "foobar" > some_file

Führen Sie dann im Ordner des Projekts ein erstes Commit durch:

$ git init
$ git add some_file
$ git commit -m "Initial commit"

Wenn Sie Bitbucket oder ähnliches verwenden, fügen Sie ein hinzu remoteund drücken Sie nach oben:

$ git remote add some_name user@host:repo
$ git push some_name

Möglicherweise möchten Sie dann auch Tracking-Zweige usw. konfigurieren. Siehe dazu die git remote set-brancheszugehörigen Befehle.


1
Müssten Sie zuerst das Git-Repo in Bitbucket erstellen, um darauf zugreifen zu können?
Jeff B

4
Ja. Sie müssen einen Platz bei bitbucket erstellen, damit sie wissen, wo sie von wem zu erwarten sind. Das von ihnen erstellte Repo ist leer, damit Sie dort alles pushen können :)
johannes

Ich erhalte den Fehler unten. {master *} ~ / sites / example7.dev $ git remote add some_name mavme@bitbucket.org/mavme/example-site-example7.dev.git 04:40:46 {master *} ~ / sites / example7.dev $ git push some_name Passwort für ' mavme@bitbucket.org ':
user1406716

nächster Teil der Fehlermeldung, da er nicht in einen Kommentar passte: An mavme@bitbucket.org/mavme/example-site-example7.dev.git ! [abgelehnt] master -> master (nicht schneller vorlauf ) fehler : einige refs konnten nicht an ' mavme@bitbucket.org/mavme/example-site-example7.dev.git ' gesendet werden , um zu verhindern, dass Sie den Verlauf verlieren, non- Schnellvorlauf-Updates wurden abgelehnt. Führen Sie die Remote-Änderungen (z. B. "Git Pull") zusammen, bevor Sie sie erneut drücken. Weitere Informationen finden Sie im Abschnitt "Hinweis zum Schnellvorlauf" von "git push --help". 04:40:54
user1406716

Es scheint, als hätte Bitbucket aus irgendeinem Grund einen Hauptzweig geschaffen. Sie könnten es klonen ( git clone mavme@bitbucket.org/mavme/example-site-example7.dev.git') und es überprüfen, wenn nichts Wertvolles drin ist. Sie machen den Push von Ihrem Projekt mit Kraft ( git push -f some_name)
Johannes

24

Benutzer johannes hat Ihnen erklärt, wie Sie in einer allgemeinen Situation vorhandene Dateien zu einem Git-Repository hinzufügen können . Da Sie über Bitbucket sprechen, empfehle ich Ihnen Folgendes:

  1. Erstellen Sie ein neues Repository in Bitbucket (oben auf Ihrer Profilseite sehen Sie eine Schaltfläche zum Erstellen), und Sie gelangen zu dieser Seite:

    Erstellen Sie ein Repository auf Bitbucket

  2. Füllen Sie das Formular aus, klicken Sie auf Weiter und Sie gelangen automatisch zu dieser Seite:

    Erstellen Sie ein Repository von Grund auf neu oder fügen Sie vorhandene Dateien hinzu

  3. Wählen Sie, ob Sie vorhandene Dateien hinzufügen möchten, und Sie gelangen auf diese Seite:

    Geben Sie hier die Bildbeschreibung ein

  4. Sie verwenden diese Befehle und laden die vorhandenen Dateien in Bitbucket hoch. Danach sind die Dateien online.


3
Die Befehle im 4. Schritt geben Fehler aus. Befolgen Sie die folgenden Schritte in diesem Link. samranga.blogspot.com/2015/07/…
Samitha Chathuranga

2

Die Befehle werden in Ihrem Bitbucket-Konto angegeben. Wenn Sie das Repository in Bitbucket öffnen, erhalten Sie die gesamte Liste der Befehle, die Sie in der Reihenfolge ausführen müssen. Was fehlt, ist, wo genau Sie diese Befehle ausführen müssen (Git CLI, SourceTree- Terminal).

Ich hatte Probleme mit diesen Befehlen, als ich diese in Git CLI schrieb, aber wir müssen die Befehle im SourceTree-Terminalfenster ausführen, und das Repository wird zu Bitbucket hinzugefügt.


1

Ich habe eine sehr einfache Lösung für dieses Problem. Sie müssen die Konsole nicht verwenden.

TLDR: Repo erstellen, Dateien in vorhandenen Projektordner verschieben, SourceTree fragt Sie, wo sich seine Dateien befinden, und sucht die Dateien. Fertig, Ihr Repo befindet sich in einem anderen Ordner.

Lange Antwort:

  1. Erstellen Sie Ihr neues Repository auf Bitbucket
  2. Klicken Sie auf "In SourceTree klonen".
  3. Lassen Sie das Programm Ihr neues Repo dort platzieren, wo es möchte. In meinem Fall hat SourceTree einen neuen Ordner in Eigene Dateien erstellt.
  4. Suchen Sie im Windows Explorer Ihren neuen Repository-Ordner.
  5. Schneiden Sie die .hg und README (oder alles andere, was Sie in diesem Ordner finden)
  6. Fügen Sie es an der Stelle ein, an der sich Ihr vorhandenes Projekt befindet
  7. Kehren Sie zu SourceTree zurück und es wird "Fehler aufgetreten ..." angezeigt. Klicken Sie einfach auf OK
  8. Auf der linken Seite befindet sich Ihr Repository, jedoch mit der roten Meldung: Repository verschoben oder gelöscht. Klicken Sie darauf.
  9. Jetzt wird das Popup "Repository fehlt" angezeigt. Klicken Sie auf Ordner ändern und suchen Sie Ihren vorhandenen Projektordner, in den Sie die zuvor erwähnten Dateien verschoben haben.
  10. Das ist es!

Tipps: Die Option In SourceTree klonen ist nicht direkt nach dem Erstellen eines neuen Repositorys verfügbar. Sie müssen daher zuerst auf Readme-Datei erstellen klicken, damit diese Option verfügbar wird.


Schritt 6.5 Neuen Repository-Ordner löschen.
AMAN77
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.