Je travaille actuellement sur un projet et j'utilise des machines dans deux endroits différents pour le faire. J'ai créé une branche pour la fonctionnalité sur laquelle je travaille et quand j'ai fini de travailler dessus, je modifie mon commit pour cette branche et je la pousse sur le serveur pour que je puisse reprendre là où je l'avais laissé sur mon autre machine. Lorsque j'essaie d'envoyer mon commit modifié, il rejette mon push. Je suppose que c'est parce que je pousse un commit qui est destiné à clobber le HEAD actuel de la branche de fonctionnalité. Je n'utilise généralement que --force.Git: pushing modified commits
Y a-t-il une meilleure façon de procéder?
[email protected]:~/projects/myproject$ git pull origin topx
From heroku.com:myproject
* branch topx -> FETCH_HEAD
Already up-to-date.
[email protected]:~/projects/myproject$ git add app/models/reward.rb
[email protected]:~/projects/myproject$ git commit --amend
[topx 82a9880] Added topX reward
9 files changed, 106 insertions(+), 21 deletions(-)
rewrite app/views/ceo/_reward_criteria.html.erb (96%)
create mode 100644 public/javascripts/jquery.multiselect.min.js
create mode 100644 public/site/javascripts/jquery.multiselect.min.js
create mode 100644 public/stylesheets/jquery.multiselect.css
[email protected]:~/projects/myproject$ git push origin topx
To [email protected]:myproject.git
! [rejected] topx -> topx (non-fast-forward)
error: failed to push some refs to '[email protected]:myproject.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes before pushing again. See the 'Note about
fast-forwards' section of 'git push --help' for details.
Je qualifierais l'option «ne pas utiliser modifier»: ne l'utilisez pas sur un travail publié. Sur un travail non publié (branches locales/personnelles), vous devez absolument l'utiliser. (Et si vous avez plus d'un repo personnel, cela signifie que vous utiliserez 'push --force' pour transférer votre travail quelquefois.) – Cascabel
Merci beaucoup pour ça! Maintenant, je peux garder mon code en sécurité et les logs de validation sont propres. –