wake-up-neo.net

Wie kann ich mit SourceTree ein lokales Repo nach Bitbucket verschieben, ohne zuerst ein Repo auf Bitbucket zu erstellen?

Gibt es eine Möglichkeit, meine lokalen Git-Repos in SourceTree zu importieren und in mein Bitbucket-Konto zu verschieben, damit neue Repos, die mit meinen lokalen Repos identisch sind, in meinem Konto erstellt werden? Oder muss ich zuerst online ein Repo machen und dazu Push? Github bietet eine Möglichkeit, lokale Repos direkt von seinem Client aus zu veröffentlichen, und erstellt sie automatisch, wenn Sie sie veröffentlichen. Private Repos sind jedoch nur begrenzt verfügbar. Ich mache nur Hausaufgaben, also gibt es keinen Grund, dass es öffentlich ist, weshalb ich versuche, bitbucket zu verwenden.

104
cma0014

Es scheint möglich, ein lokales Repository in BitBucket "zu veröffentlichen". Erstellen Sie mit den Anweisungen aus Atlassian einfach ein neues BitBucket-Repository, kopieren Sie die Repository-URL in die Zwischenablage (in Ihrem BitBucket-Repository gehen Sie zu Actions> Clone, und Ihre Repo-URL wird in der Form git clone <repository url> angezeigt.) und fügen Sie dieses Repository dann als neues Remote zu Ihrem lokalen Repository hinzu:

Verwenden von CLI

  1. cd /path/to/my/repo
  2. git remote add Origin ssh://[email protected]/<username>/<reponame>.git
  3. git Push -u Origin --all

SourceTree verwenden

  1. Repository> Remote hinzufügen ...
  2. Fügen Sie die BitBucket-Repository-URL ([email protected]/<username>/<reponame>.git) ein.

UPDATE: Erstellen und Registrieren von SSH-Schlüsseln

BitBucket eignet sich hervorragend für private Repos, aber Sie müssen einen SSH-Schlüssel einrichten, damit Ihr Computer mit Ihrem BitBucket-Konto arbeiten kann. Zum Glück macht es Sourcetree relativ einfach:

Erstellen eines Schlüssels in SourceTree:

  1. Stellen Sie in Tools> Options sicher, dass SSH Client: auf der Registerkarte General auf PuTTY/Plink gesetzt ist
  2. Wählen Sie Tools> Create or Import SSH Keys aus.
  3. Klicken Sie im Popup-Fenster auf Generate und bewegen Sie die Maus, um dem Schlüsselgenerator Zufall zu geben
  4. Sie sollten so etwas wie in der Abbildung unten sehen. Kopieren Sie den öffentlichen Schlüssel (blau hervorgehoben) in Ihre Zwischenablage

    PuTTY

  5. Klicken Sie auf Save private Key und Save public key, um Ihre Schlüssel an einem beliebigen Ort (z. B. <Home Dir>/PuTTY/ssk-key.ppk und <Home Dir>/PuTTY/ssh-key.pub) zu speichern, bevor Sie zum nächsten Abschnitt übergehen

Registrieren des Schlüssels in BitBucket

  1. Melden Sie sich bei Ihrem BitBucket Konto an und klicken Sie oben rechts auf Ihr Profilbild und anschließend auf Settings.
  2. Gehen Sie zur Registerkarte SSH Keys in der linken Seitenleiste
  3. Klicken Sie auf Add SSH Key, geben Sie einen Namen ein und fügen Sie den öffentlichen Schlüssel ein, den Sie in Schritt 4 des vorherigen Abschnitts kopiert haben

Das ist es! Sie sollten jetzt in der Lage sein, Push/Pull auf Ihre privaten BitBucket-Repos zu ziehen. Ihre Schlüssel sind nicht nur für Git, viele Dienste verwenden SSH-Schlüssel, um Benutzer zu identifizieren, und das Beste ist, Sie benötigen nur einen. Wenn Sie Ihre Schlüssel verlieren (z. B. beim Wechseln des Computers), befolgen Sie einfach die Schritte zum Erstellen und Registrieren eines neuen Schlüssels.

Sidenote: Erstellen von SSH-Schlüsseln mithilfe von CLI

Folge einfach diesem Tutorial

134
woojoo666

Eigentlich gibt es eine einfachere Lösung (nur bei Mac-Version). Nur vier Schritte: 

  1. Klicken Sie mit der rechten Maustaste auf das Repository und wählen Sie "Auf Remote veröffentlichen ...".

 SourceTree Publish to Remote Screeshot

  1. Im nächsten Fenster werden Sie gefragt, ob Sie veröffentlichen (Github, Bitbucket usw.), und dann sind Sie fertig.
  2. Verknüpfen Sie das Remote-Repository
  3. Drücken 
22
David

Wie dieses Video veranschaulicht , ist das Erstellen eines Online-Repos der übliche Weg.

Die SourceTree-Versionshinweise erwähnen Sie für SourceTree 1.5+:

Unterstützung bei der Erstellung neuer Repositorys unter Team-/Organisationskonten in Bitbucket.

Es gibt zwar keine "Veröffentlichungsfunktion", Sie können jedoch Ihr Online-Repo aus SourceTree erstellen.

Der Blogbeitrag " SourceTree für Windows 1.2 ist hier " (Sept. 2013) erwähnt ebenfalls:

Jetzt können Sie Ihre Bitbucket-, Stash- und GitHub-Konten in SourceTree konfigurieren und sofort alle Ihre Repositorys für diese Dienste anzeigen. Einfach klonen, öffnen Sie das Projekt im Web, und erstellen Sie sogar neue Repositorys auf dem Remote-Dienst, ohne SourceTree zu verlassen.
Sie finden es im Menü unter Ansicht> Gehostete Repositorys anzeigen oder verwenden Sie die neue Schaltfläche unten rechts im Lesezeichenfenster.

http://blog.sourcetreeapp.com/files/2013/09/hostedrepowindow.png

10
VonC

Ich habe dies verwendet und es hat gut für mich geklappt ... Wenn Ihr Verzeichnis ist 

"repo" und dein Projekt ist "Hallo", kopiere das Projekt dort

cd /path/to/my/repo

Initialisieren Sie Ihr Verzeichnis

git init

Inszenieren Sie das Projekt

git add hello

verpflichten Sie das Projekt

git commit

Fügen Sie Konfigurationen mit der E-Mail-Adresse und dem Benutzernamen hinzu, den Sie in Bitbucket verwenden

git config --global user.email
git config --global user.name

Kommentar zum Projekt hinzufügen

git commit -m 'comment'

Schieben Sie das Projekt jetzt

git Push Origin master

Aus dem Master auschecken

git checkout master
3
bademba

Bitbucket unterstützt eine REST - API, mit der Sie Bitbucket-Repositorys programmgesteuert erstellen können.

Dokumentation und cURL-Beispiel hier erhältlich: https://confluence.atlassian.com/bitbucket/repository-resource-423626331.html#repositoryResource-POSTanewrepository

$ curl -X POST -v -u username:password -H "Content-Type: application/json" \
   https://api.bitbucket.org/2.0/repositories/teamsinspace/new-repository4 \
   -d '{"scm": "git", "is_private": "true", "fork_policy": "no_public_forks" }'

Unter Windows ist curl in der Git Bash Shell verfügbar.

Mit dieser Methode können Sie problemlos ein Skript erstellen, um viele Repos von einem lokalen Git-Server nach Bitbucket zu importieren.

2
Joe Savage

Bitbucket-Repository einrichten (Befehlszeile mit Mac)

Erstellen Sie eine neue ANWENDUNG mit lokaler Reposität:

  1. Terminal -> cd ~/Documents (Fügen Sie den Pfad Ihres APPLICATION-Basisverzeichnisses ein.)
  2. Terminal -> mkdir (Verzeichnis erstellen mit)
  3. Terminal -> cd (Verzeichnis mit Verzeichnis wechseln)
  4. BitBucket A/C -> Repository auf BitBucket-Konto erstellen
  5. Xcode -> Neues Xcode-Projekt mit demselben Namen erstellen 
  6. Terminal -> git init (leeres Repo initialisieren)
  7. Terminal -> git remote füge Origin hinzu (Bsp. https: //[email protected]/app/app.git )
  8. Terminal -> Git hinzufügen.
  9. Terminal -> Git-Status
    1. Terminal -> git commit -m "IntialCommet"
    2. Terminal -> git Push-Origin-Master

APPLICATION-Klon-Repository erstellen:

  1. Terminal -> mkdir (Verzeichnis erstellen mit)
  2. Terminal -> cd (Verzeichnis mit Verzeichnis wechseln)
  3. Terminal -> git clone (Beispiel https: //[email protected]/app/app.git )
  4. Terminal -> CD 
  5. Terminal -> Git-Status (Editieren/Aktualisieren des Dateistatus anzeigen)
  6. Terminal -> git pull Origin master
  7. Terminal -> Git hinzufügen.
  8. Terminal -> git Push-Origin-Master
1

Eine andere Lösung für Windows-Benutzer:

Dies verwendet Github als Brücke, um nach Bitbucket zu gelangen, was dazu führt, dass die Veröffentlichung nicht direkt über die Windows-Sourcetree-App erfolgt.

  1. Laden Sie Ihr lokales Repo in die Github Desktop-App.
  2. Veröffentlichen Sie das Repo als privates Repo aus der Github Desktop-App in Ihrem Github-Konto.
  3. Eröffnen Sie Ihr persönliches/Teamkonto auf der Bitbucket-Website 
  4. Erstellen Sie ein neues Bitbucket-Repo, indem Sie aus Github importieren.
  5. Löschen Sie das Repo in Github.

Sobald dies erledigt ist, wird alles in Bitbucket geladen. Ihre lokalen Fernbedienungen müssen wahrscheinlich so konfiguriert werden, dass sie jetzt auf Bitbucket zeigen. 

0
David Ruiz

Als Update für die Antwort von Joe , in der Sie die Erstellung des Repository mithilfe der API als Skript ausführen können, war nur der API-Aufruf, den ich benötigte, anders. Dies kann daran liegen, dass wir einen Bitbucket-Server und keine Bitbucket-Cloud verwenden.

Um ein neues Repo in einem Projekt auf unserem Server zu erstellen, habe ich Folgendes verwendet:

curl -X POST -v -u USER:PASSWORD -H "Content-Type: application/json" \
http://SERVER/rest/api/1.0/projects/PROJECTNAME/repos/ \
-d '{"scmid":"git", "name":"REPONAME"}'

wobei USER, PASSWORD, SERVER, PROJECTNAME und REPONAME natürlich die gewünschten/erforderlichen Werte waren.

Der Aufruf ist dokumentiert in der API-Referenz .

/rest/api/1.0/projects/{projectKey}/repos

Erstellen Sie ein neues Repository. Erfordert ein vorhandenes Projekt, in dem dieses Repository erstellt wird. Die einzigen Parameter, die verwendet werden, sind name und scmId.

Der authentifizierte Benutzer muss über die Berechtigung PROJECT_ADMIN verfügen, damit das Kontextprojekt diese Ressource aufrufen kann.

0
Baldrickk

GIT ist für Versionskontrolle und Teamprojekte gut geeignet, wenn Commits und Filialen ordnungsgemäß verwaltet werden.
Schritt 1: Klonen Sie Ihr lokales Repo mit cli wie in den obigen Antworten erwähnt

$ cd [path_to_repo]
$ git remote füge Origin ssh hinzu: //[email protected]//.git
$ git Push -u Origin --all

Schritt 2: Sie können die oben genannten Schritte ausführen, um Ihre Werke zu verschieben. Einfacher Weg ist die Verwendung von Git Gui. Es bietet eine grafische Benutzeroberfläche, so dass es einfach ist, Bühnen (Hinzufügen)/Unstage, Festschreiben/Nicht-Festlegen und Push/Pull durchzuführen. Anfänger können den Git-Prozess leicht verstehen. 

$ git gui

(ODER)
Schritt 2: Wie oben erwähnt. Cli-Codes erledigen die Arbeit.

$ git status 
$ git add [Dateiname]
$ git commit _m "[Comit-Nachricht"] "
$ git Push-Origin-Master/Zweigname

0
Raj sree