Pour une raison quelconque, je ne peux pas pousser maintenant, alors que je pouvais le faire hier. Peut-être que j'ai foiré des configs ou quelque chose.
Voici ce qui se passe:
Quand j'utilise le git push origin master
À quoi ressemble mon répertoire de travail et mon référentiel distant:
Réponses:
Si le dépôt GitHub a vu de nouveaux commits poussés, alors que vous travailliez localement, je vous conseillerais d'utiliser:
La syntaxe complète est:
Avec Git 2.6+ (septembre 2015), après avoir fait (une fois)
Un simple
git pull
suffirait.(Remarque: avec Git 2.27 Q2 2020 , un
merge.autostash
est également disponible pour votre tirage régulier, sans rebase)De cette façon, vous rejoueriez (la
--rebase
partie) vos commits locaux en plus de la nouvelle mise à jourorigin/master
(ouorigin/yourBranch
:)git pull origin yourBranch
.Voir un exemple plus complet dans le chapitre 6 Pull with rebase du Git Pocket Book .
Je recommanderais un:
Cela établirait une relation de suivi entre votre branche principale locale et sa branche en amont.
Après cela, toute poussée future pour cette branche peut être effectuée avec un simple:
Voir " Pourquoi dois-je pousser explicitement une nouvelle branche? ".
Étant donné que l'OP a déjà réinitialisé et refait sa validation en plus de
origin/master
:Ce n'est pas nécessaire
pull --rebase
.Remarque:
git reset --mixed origin/master
peut également être écritgit reset origin/master
, car l'--mixed
option est celle par défaut lors de l'utilisationgit reset
.la source
Quelqu'un at-il essayé:
Cela devrait résoudre le problème.
la source
-f
/--force
il est toujours plus sûr d'utiliser à la--force-with-lease
place, ce qui s'interrompra s'il y a des changements en aval qui seraient encombrés par la poussée.--force-with-lease
est nécessaire pour de nombreuses situations de rebasage quotidiennes, mais--force
ne devrait presque jamais être nécessaire.Si vous venez d'utiliser
git init
et d'avoir ajouté vos fichiers avecgit add .
ou quelque chose de similaire et que vous avez ajouté votre branche distante, il se peut que vous n'ayez commis (git commit -m 'commit message'
) rien localement pour pousser vers la télécommande ... J'ai juste eu cette erreur et c'était ma problème.la source
J'ai eu le même problème. J'obtenais ce problème parce que je n'avais fait aucune validation, pas même la validation initiale et j'essayais toujours de pousser.
Une fois que j'ai fait
git commit -m "your msg"
et puis tout a bien fonctionné.la source
Renommez votre branche puis appuyez sur, par exemple:
Cela a fonctionné pour moi.
la source
my-branch_wont_push
. Une fois que je retitré àmy_branch_wont_push
, puisgit push -u origin my_branch_wont_push
travaillé pour moi.Je trouve la solution à ce problème dans l'aide de github.
Vous pouvez le voir à partir de: Gérer les erreurs d'avance non rapide
Ça dit:
Vous pouvez résoudre ce problème en récupérant et en fusionnant les modifications apportées sur la branche distante avec les modifications que vous avez apportées localement:
Ou, vous pouvez simplement utiliser git pull pour exécuter les deux commandes à la fois:
la source
git init
git remote add origin https://gitlab.com/crew-chief-systems/bot
git remote -v
(pour vérifier le référentiel actuel)git add -A
(ajouter tous les fichiers)git commit -m 'Added my project'
git pull --rebase origin master
git push origin master
la source
J'avais rencontré le même problème, résolu avec les étapes ci-dessous.
git init
git add .
git commit -m 'Add your commit message'
git remote add origin https://[email protected]/User_name/sample.git
(Au-dessus de l'URL https: //[email protected]/nom_utilisateur/sample.git fait référence à l'URL de votre projet de compartiment de bits)
git push -u origin master
allusion
vérifiez si votre compte git hub est lié à votre git local en utilisant:
la source
Si vous utilisez gerrit, cela peut être dû à un Change-id inapproprié dans la validation. Essayez de supprimer le Change-Id et voyez ce qui se passe.
la source
N'oubliez pas de valider vos modifications avant de passer au dépôt Github. Cela pourrait résoudre votre problème.
la source
Ne pas valider les modifications initiales avant de pousser provoque également le problème
la source
avant de pousser, vous devez ajouter et valider les modifications ou faire
git push -f origin master
la source
Si votre succursale locale et votre succursale distante partagent le même nom, pouvez-vous alors omettre le nom de votre succursale locale, utilisez simplement
git push {your_remote_branch}
. Sinon, il générera cette erreur.la source
J'ai suivi les étapes suivantes et cela a fonctionné pour moi.
la source
Cela peut arriver lorsque vous n'avez aucun fichier. Essayez de créer un fichier texte puis suivez les commandes suivantes
la source
Pour moi, le problème était que je n'ai pas ajouté les fichiers avant la validation.
git add .
git commit -m "your msg"
la source
Meilleure utilisation
rm -rf .git/hooks
, puis essayez git pushla source
J'ai créé un dépôt vide dans GitHub et j'ai mon code localement. J'ai rencontré le même problème maintenant, en suivant la séquence ci-dessous,
Nous devons donc mettre en scène les fichiers et ensuite nous engager.
C'est la bonne séquence.
Puisque j'exécute d'abord la mauvaise séquence, j'exécute simplement les commandes ci-dessous
la source
Je ne sais pas si cela s'applique, mais le correctif pour moi était de valider quelque chose localement après git init. Ensuite, j'ai poussé à distance en utilisant --set-upstream ...
la source
Création d'une nouvelle branche résolue pour moi:
Comme prévu, pas besoin de fusionner puisque la branche précédente était entièrement contenue dans la nouvelle.
la source
git push origin feature22-fix
, mais jefeature22-fix
n'ai pas quitté ni local ni distant, j'ai donc dû d'abord vérifier la succursale localement, puis pousserSi vous essayez d'initialiser un répertoire avec un référentiel GitHub existant, vous devez vous assurer de valider les modifications.
Essayez de créer un fichier:
Cela placera un fichier nommé initial que vous pourrez supprimer plus tard.
J'espère que cette réponse vous aidera! Bonne chance!
la source
Vous devez donner de la force
Il suffit de pousser - forcer.
la source
Dans mon cas, c'est mon
husky
colis qui interdit la poussée.J'ai couru
npm run prepush
pour voir déboguer l'erreur, et c'était la cause:Exécutez-le
npm install
et validez-le, et le problème est résolu.la source
fais ces
Bon codage!
la source
Essayez cette commande git,
la source
Eh bien, si aucune des réponses ci-dessus ne fonctionne et si vous avez gâché quelque chose
ssh-add
récemment. Essayerla source
Pour les utilisateurs de sourcetree
Effectuez d'abord un commit initial ou assurez-vous que vous n'avez pas de modifications non validées, puis à côté de sourcetree il y a un "REMOTES", faites un clic droit dessus, puis cliquez sur 'Push to origin'. Voilà.
la source
Cela m'arrive car j'avais un tag avec le même que la branche et j'ai essayé de pousser la branche à distance.
la source
Dans mon cas, le problème était (étrangement) qu'il n'y avait pas de branche appelée master. J'ai pris le dépôt de Github.
la source
Je poussais la branche de typographie 'evelop' existante que je n'avais pas encore extraite, et à la place, je voulais pousser une branche appelée 'enveloppe'. Donc la branche doit être existante / checkout sur la copie de travail locale afin de pousser bien sûr, donc cette erreur, de ne pas faire de faute de frappe.
la source