Je teste Git et Bitbucket.
J'ai créé un référentiel sur Bitbucket, créé une copie locale du référentiel et y valide des fichiers. Je n'arrive pas à pousser les fichiers de mon dépôt local vers le dépôt distant.
Voici ce que je fais:
git clone https://[email protected]/me/test.git
cd test
touch dummy
git add dummy
git commit dummy -m "my first git commit"
git Push
les sorties de ligne finales:
Everything up-to-date
et lorsque je me connecte à Bitbucket, je ne peux pas voir mon fichier factice.
Qu'est-ce que je fais mal?
EDIT:
Faire cela a fonctionné:
git Push Origin master:master
Des explications sur la différence entre ceci et un simple git Push
?
Utilisez git Push Origin master
à la place.
Vous avez un référentiel localement et le git Push
initial est "poussé" dessus. Il n'est pas nécessaire de le faire (car est local) et tout est mis à jour. git Push Origin master
spécifie un référentiel distant (Origin
) et la branche située à cet emplacement (master
).
Pour plus d'informations, consultez cette ressource .
Ceci est une mesure de sécurité pour éviter de pousser des branches qui ne sont pas prêtes à être publiées. En gros, en exécutant "git Push", seules les branches locales qui existent déjà sur le serveur portant le même nom seront poussées, ou les branches qui ont été poussées à l'aide de la syntaxe localbranch: remotebranch.
Pour transférer toutes les branches locales dans le référentiel distant, utilisez --all
:
git Push REMOTENAME --all
git Push --all
ou spécifiez toutes les branches que vous voulez pousser:
git Push REMOTENAME master exp-branch-a anotherbranch bugfix
En outre, il est utile d’ajouter -u
à la commande "git Push", car cela vous dira si votre branche locale est en avance ou derrière la branche distante. Cela s'affiche lorsque vous exécutez "git status" après une extraction git.
Je suis avec Git téléchargé à partir de https://git-scm.com/ et configurer ssh suivre à la répondre aux instructions https://stackoverflow.com/a/26130250/4058484 .
Une fois que la clé publique générée est vérifiée dans mon compte Bitbucket, et en vous référant aux étapes comme expliqué sur http://www.bohyunkim.net/blog/archives/2518 j'ai trouvé que 'git Push' fonctionne:
git clone https://[email protected]/me/test.git
cd test
cp -R ../dummy/* .
git add .
git pull Origin master
git commit . -m "my first git commit"
git config --global Push.default simple
git Push
Shell répondent sont comme ci-dessous:
$ git Push
Counting objects: 39, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (39/39), done.
Writing objects: 100% (39/39), 2.23 MiB | 5.00 KiB/s, done.
Total 39 (delta 1), reused 0 (delta 0)
To https://[email protected]/me/test.git 992b294..93835ca master -> master
Cela fonctionne même pour pousser sur la fusion maître à gh-pages dans GitHub
git checkout gh-pages
git merge master
git Push
Signification du 2ème paramètre ('master
') de la commande "git Push
" -
$ git Push Origin master
peut être clarifié en lançant la commande "Push
" à partir de la branche 'news-item
'. Cela a poussé la branche locale "master
" à être poussée dans la branche distante 'master
'. Pour plus d'informations, consultez
https://git-scm.com/docs/git-Push
où <refspec>
dans
[<repository> [<refspec>…]
est écrit pour signifier "specify what destination ref to update with what source object.
"
Pour votre référence, voici une capture d'écran de la façon dont j'ai vérifié cette déclaration.