Comment puis-je pousser un repo local à Bitbucket en utilisant SourceTree sans créer un repo sur bitbucket en premier?

Existe-t-il un moyen d'importer mes repos git locaux dans SourceTree et de les pousser sur mon compte Bitbucket, en créant de nouveaux repos identiques à mes repos locaux sur mon compte? Ou dois-je faire un repo en ligne d'abord et pousser à qui? Github a un moyen de publier vos repos locaux directement à partir de son client, et il le crée automatiquement lorsque vous publiez, mais il a des repos privés limités. Je fais juste mes devoirs donc il n'y a aucune raison pour que ce soit public, d'où pourquoi j'essaie d'utiliser bitbucket.

100
demandé sur cma0014 2014-06-18 23:58:46

8 réponses

Il semble possible de "publier" un référentiel local sur BitBucket. En utilisant les instructions de Atlassian , créez simplement un nouveau référentiel BitBucket, copiez l'url du référentiel dans le presse-papiers (dans votre référentiel BitBucket, allez dans Actions > Clone, et il vous montrera votre URL repo sous la forme git clone <repository url>), puis ajoutez ce référentiel en tant que nouvelle télécommande à votre référentiel local:

À l'Aide de CLI

  1. cd /path/to/my/repo
  2. git remote add origin ssh://git@bitbucket.org/<username>/<reponame>.git
  3. git push -u origin --all

Utilisation De SourceTree

  1. Référentiel > Ajouter À Distance...
  2. collez L'url du référentiel BitBucket (git@bitbucket.org/<username>/<reponame>.git)

Mise à jour: Création Et Enregistrement de clés SSH

BitBucket est idéal pour les repos privés, mais vous devrez configurer une clé ssh pour autoriser votre ordinateur à travailler avec votre compte BitBucket. Heureusement Sourcetree le rend relativement simple:

La Création d'une Clé Dans SourceTree:

  1. Dans Tools>Options, assurez - SSH Client: est définie sur PuTTY/Plink, en vertu de la General onglet
  2. sélectionnez Tools > Create or Import SSH Keys
  3. dans la fenêtre contextuelle, cliquez sur Generate et déplacez votre souris pour donner un caractère aléatoire au générateur de clé
  4. Vous devriez obtenir quelque chose comme ce qui est montré dans la capture d'écran ci-dessous. Copiez la clé publique (surlignée en bleu) dans votre presse-papiers

    mastic

  5. cliquez sur Save private Key et Save public key pour enregistrer vos clés à l'endroit où vous choisissez (par exemple à <Home Dir>/putty/ssk-key.ppk et <Home Dir>/putty/ssh-key.pub respectivement) avant de passer à la section suivante

Enregistrement De La Clé Dans BitBucket

  1. connectez-vous à votre BitBucket compte, et en haut à droite, cliquez sur votre photo de profil et cliquez sur Settings
  2. allez dans l'onglet SSH Keys de la barre latérale gauche
  3. cliquez sur Add SSH Key, donnez-lui un nom et collez la clé publique que vous avez copiée à l'étape 4 de la précédente section

C'est tout! Vous devriez maintenant être en mesure de pousser/tirer vers vos dépôts privés BitBucket. Vos clés ne sont pas seulement pour Git non plus, de nombreux services utilisent des clés ssh pour identifier les utilisateurs, et la meilleure partie est que vous n'en avez besoin que d'une seule. Si jamais vous perdez vos clés (par exemple lors du changement d'ordinateur), il suffit de suivre les étapes pour créer et enregistrer un nouveau.

Sidenote: création de clés SSH à L'aide de CLI

Il suffit de suivre ce tutoriel

130
répondu woojoo666 2015-12-13 19:02:47

En fait, il existe une solution plus simple (uniquement sur la version Mac). Juste quatre étapes:

  1. Faites un clic droit sur le référentiel et sélectionnez " Publier sur distant..."

SourceTree publier à distance Screeshot

  1. la fenêtre suivante vous demandera de publier (GitHub, bitbucket, etc), puis vous avez terminé.
  2. lier le référentiel distant
  3. pousser
21
répondu David 2016-04-13 12:15:30

Comme cette vidéo illustre , la création d'un repo en ligne est d'abord la voie habituelle.

Les notes de version de SourceTree mentionnent pour SourceTree 1.5+:

Prend en charge la création de nouveaux référentiels sous les comptes d'équipe / organisation dans Bitbucket.

Ainsi, bien qu'il n'y ait pas de fonctionnalité de "publication", vous pouvez créer votre dépôt en ligne à partir de SourceTree.

Le billet de blog "SourceTree Pour Windows 1.2 est ici " (septembre 2013) aussi mention:

Maintenant, vous pouvez configurer vos comptes Bitbucket, Stash et GitHub dans SourceTree et voir instantanément tous vos dépôts sur ces services. Clonez-les facilement, ouvrez le projet sur le web, et même créez de nouveaux référentiels sur le service distant sans jamais quitter SourceTree .
Vous le trouverez dans le menu sous Affichage > Afficher les référentiels hébergés, ou en utilisant le bouton Nouveau En bas à droite du panneau Signets.

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

10
répondu VonC 2014-06-19 06:47:40

J'ai utilisé et cela a bien fonctionné pour moi. Si votre répertoire est

"repo" et votre projet est "bonjour" Copiez le projet là

cd /path/to/my/repo

Initialisez votre répertoire

git init

Etape du projet

git add hello

Valider le projet

git commit

Ajoutez des configurations à L'aide de L'e-mail et du nom d'utilisateur que vous utilisez dans Bitbucket

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

Ajouter un commentaire au projet

git commit -m 'comment'

Poussez le projet maintenant

git push origin master

Vérifier sur le maître

git checkout master
3
répondu bademba 2015-09-23 12:56:38

Bitbucket prend en charge une API REST que vous pouvez utiliser pour créer des référentiels Bitbucket par programmation.

Documentation et échantillon cURL disponibles ici: 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" }'

Sous Windows, curl est disponible à partir du shell Git Bash.

En utilisant cette méthode, vous pouvez facilement créer un script pour importer de nombreux repos à partir d'un serveur Git local vers Bitbucket.

2
répondu Joe Savage 2016-04-06 22:48:19

Configuration du référentiel Bitbucket (ligne de commande avec Mac)

Créer une nouvelle APPLICATION à partir du début avec reposity local:

  1. Terminal - > cd ~ / Documents (collez le chemin du répertoire de base de votre APPLICATION)
  2. Terminal - > mkdir (créer un répertoire avec)
  3. Terminal - > cd (changer de répertoire avec le répertoire)
  4. BitBucket A / C - > créer un référentiel sur le compte bitBucket
  5. Xcode - > créer un nouveau projet xcode avec le même nom
  6. Terminal - > git init (initilize repo vide)
  7. Terminal - > git remote ajouter l'origine (ex. https://app@bitbucket.org/app/app.git)
  8. Terminal - > git ajouter .
  9. Terminal - > état git
    1. Terminal - > git commit-m "IntialCommet"
    2. Terminal - > git push origine maître

Créer un référentiel de clone D'APPLICATION:

  1. Terminal - > mkdir (créer un répertoire avec)
  2. Terminal - > cd (changer de répertoire avec le répertoire)
  3. Terminal - > git clone (Ex. https://app@bitbucket.org/app/app.git)
  4. Terminal - > cd
  5. Terminal - > statut git (afficher l'état d'édition/mise à jour du fichier)
  6. Terminal - > git pull origin master
  7. Terminal - > git ajouter .
  8. Terminal - > git push origine maître
1
répondu Shrikant Tanwade 2018-01-31 11:54:02

GIT sert bien son but pour le contrôle de version et les projets d'équipe si les commits et les branches sont correctement gérés.
Étape 1: clonez votre repo local en utilisant cli comme mentionné par les réponses ci-dessus

$ cd [path_to_repo]
$ git remote ajouter l'origine ssh://git@bitbucket.org//.git
$ git push-u origine -- tout

Étape 2: Vous pouvez suivre l'une des étapes ci - dessus pour pousser/tirer vos œuvres. Un moyen simple est d'utiliser git gui. Il fournit une Interface graphique de sorte que il est facile de mettre en scène (add)/unstage, commit/uncommit et push/pull. Les débutants peuvent facilement comprendre le processus git.

$ Git gui

(ou)
Étape 2: comme mentionné ci-dessus. Les codes Cli feront le travail.

$ git status
$ git ajouter [nom_fichier]
$ git commit _m "[message Comit"] "
$ git push origine maître / branch_name

0
répondu Raj sree 2016-03-18 10:46:22

En tant que mise à jour de la réponse de Joe, en ce que vous pouvez Scripter la création du référentiel en utilisant L'API, seul l'appel D'API dont j'avais besoin était différent. Cela peut être parce que nous utilisons Bitbucket server, et non bitbucket cloud.

Pour créer un nouveau repo dans un projet sur notre serveur, j'ai utilisé:

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"}'

USER, PASSWORD, SERVER, PROJECTNAME et REPONAME ont été bien sûr désiré/valeurs requises.

L'appel est documenté dans la référence de l'API.

/repos/api/1.0/projets/{projectKey}/repos

Crée un nouveau référentiel. Nécessite un projet existant dans lequel ce référentiel sera créé. Les seuls paramètres qui seront utilisés sont name et scmId.

L'utilisateur authentifié doit disposer de L'autorisation PROJECT_ADMIN pour que le projet contextuel appelle cette ressource.

0
répondu Baldrickk 2017-05-23 12:34:47