Hi, I didn't know that this was a bigger problem and thus just pushed the previous commits again, in case of the jacoco-plugin repo it was easy as I just committed changes yesterday and thus could easily push the latest changes together with the missing commits.
The really bad thing in my view is that as a user of the repo you do not see at all that it happened. Git and Github is all about history of changes, but in this case your repo looks like a month ago with no visible trace on github that something newer was there at some time... Quite dangerous.... Dominik. On Sunday, November 10, 2013 10:40:28 PM UTC+1, lucamilanesio wrote: > > That's really pitty :-( ... force push are dangerous, especially if you > don't have control over the Git Server. > > Typically recovering a force push is straightforward: > 1. git reflog > look at the SHA-1 before the forced push > 2. git branch -f <name> <sha-1> > > But if you don't have control over the Git repo on the Server, that you > need to prevent force push to happen: unless they want everyone to buy GH > Enterprise ! > > I still hope GitHub will do 1. and 2. for us :-) > > Luca. > > On 10 Nov 2013, at 19:52, Marcus Bauer <[email protected] <javascript:>> > wrote: > > Hi, > > I don't think GitHub.com has any possibilities for disabling force > pushes, this seems to be exclusive to GH > Enterprise<https://enterprise.github.com/help/articles/disable-force-pushes> > only. > > The JaCoCo repo where I initially noticed this was restored by Dominik > Stadler (centic9) few minutes ago. > > Marcus > > Am Sonntag, 10. November 2013 19:55:08 UTC+1 schrieb lucamilanesio: >> >> Hi all, >> I have triggered an involuntary "forced push" last night on the list of >> Jenkins-CI plugins indicated below in this e-mail. >> >> *My apology * >> >> I did not realise that I actually had forced push permissions and I do >> apologise for the inconvenience caused. >> The operations pushed back the all the branches to around 1 month. The >> history is not lost and is still on the GitHub server but on detached >> branches. >> >> *The solution* >> >> I can raise a request to GitHub to provide the "reflog" of those >> repositories and restore the branches to the point before my forced push. >> *Alternatively the owners of those repositories can still perform a >> "forced push" to restore the correct position of the branches.* >> (if you would like to do so, *please write to the mailing list so that >> we do not overlap the recovery operations*) >> >> *The full list* >> >> See below the full list of repositories impacted: >> >> antexec-plugin.git >> artifactory-plugin.git >> associated-files-plugin.git >> audit2db-plugin.git >> audit-trail-plugin.git >> backend-pull-request-greeter.git >> beaker-builder-plugin.git >> branch-api-plugin.git >> build-flow-plugin.git >> buildgraph-view.git >> build-pipeline-plugin.git >> build-timeout-plugin.git >> buildtriggerbadge-plugin.git >> bytecode-compatibility-transformer.git >> ci-game-plugin.git >> clearcase-plugin.git >> clearcase-ucm-plugin.git >> cloudbees-folder-plugin.git >> cloudbees-plugin-gateway.git >> cloudtest-plugin.git >> clover-plugin.git >> cobertura-plugin.git >> collabnet-plugin.git >> collapsing-console-sections-plugin.git >> compact-columns-plugin.git >> compress-artifacts-plugin.git >> conditional-buildstep-plugin.git >> config-file-provider-plugin.git >> configurationslicing-plugin.git >> copyartifact-plugin.git >> copy-project-link-plugin.git >> copy-to-slave-plugin.git >> cppcheck-plugin.git >> credentials-plugin.git >> crowd2-plugin.git >> crowd-plugin.git >> customtools-plugin.git >> cvsclient.git >> cvs-plugin.git >> dashboard-view-plugin.git >> datical-db-plugin.git >> dependency-check-plugin.git >> deploy-plugin.git >> disable-failed-job-plugin.git >> disk-usage-plugin.git >> doclinks-plugin.git >> dry-plugin.git >> dynamic-axis-plugin.git >> ec2-plugin.git >> elastic-axis-plugin.git >> email-ext-plugin.git >> envinject-lib.git >> envinject-plugin.git >> extended-choice-parameter-plugin.git >> extra-columns-plugin.git >> extras-executable-war.git >> extreme-feedback-plugin.git >> gearman-plugin.git >> gerrit-trigger-plugin.git >> gitbucket-plugin.git >> git-chooser-alternative-plugin.git >> git-client-plugin.git >> git-plugin.git >> global-build-stats-plugin.git >> global-variable-string-parameter-plugin.git >> gradle-jpi-plugin.git >> grails-plugin.git >> greenballs-plugin.git >> groovy-postbuild-plugin.git >> heavy-job-plugin.git >> hockeyapp-plugin.git >> http-request-plugin.git >> humbug-plugin.git >> instant-messaging-plugin.git >> integrity-plugin.git >> ironmq-notifier-plugin.git >> ivytrigger-plugin.git >> jacoco-plugin.git >> jclouds-plugin.git >> jira-plugin.git >> jobConfigHistory-plugin.git >> job-dsl-plugin.git >> job-import-plugin.git >> job-poll-action-plugin.git >> jquery-plugin.git >> jquery-ui-plugin.git >> json-lib.git >> kiuwan-plugin.git >> label-verifier-plugin.git >> ldap-plugin.git >> leiningen-plugin.git >> lib-annotation-indexer.git >> lib-task-reactor.git >> lib-windows-remote-command.git >> literate-cli.git >> logfilesizechecker-plugin.git >> m2release-plugin.git >> m2-repo-reaper-plugin.git >> mailer-plugin.git >> matrix-auth-plugin.git >> maven-hpi-plugin.git >> maven-info-plugin.git >> mercurial-plugin.git >> mesos-plugin.git >> metadata-plugin.git >> mock-security-realm-plugin.git >> msbuild-plugin.git >> naginator-plugin.git >> nerrvana-plugin.git >> nested-view-plugin.git >> next-build-number-plugin.git >> next-executions-plugin.git >> parameterized-trigger-plugin.git >> perforce-plugin.git >> performance-plugin.git >> persona-plugin.git >> pitmutation-plugin.git >> plain-credentials-plugin.git >> plugin-compat-tester.git >> postbuildscript-plugin.git >> promoted-builds-plugin.git >> prqa-plugin.git >> publish-over-cifs-plugin.git >> puppet-jenkins.git >> radiatorview-plugin.git >> rapiddeploy-plugin.git >> release-plugin.git >> repo-plugin.git >> rich-text-publisher-plugin.git >> robot-plugin.git >> run-condition-plugin.git >> rvm-plugin.git >> scm2job-plugin.git >> scm-api-plugin.git >> scoring-load-balancer-plugin.git >> script-scm-plugin.git >> selenium-axis-plugin.git >> selenium-builder-plugin.git >> selenium-tests.git >> skype-im-plugin.git >> skytap-cloud-plugin.git >> smartfrog-plugin.git >> sms-plugin.git >> sounds-plugin.git >> ssh-agent-plugin.git >> ssh-credentials-plugin.git >> sshd-module.git >> ssh-slaves-plugin.git >> starteam-plugin.git >> stashnotifier-plugin.git >> subversion-plugin.git >> suppress-stack-trace-plugin.git >> swarm-plugin.git >> synergy_scm-plugin.git >> tap-plugin.git >> teamconcert-plugin.git >> testlink-plugin.git >> tfs-plugin.git >> thin-backup-plugin.git >> throttle-concurrent-builds-plugin.git >> tikal-multijob-plugin.git >> timestamper-plugin.git >> token-macro-plugin.git >> transifex-plugin.git >> translation-plugin.git >> trilead-ssh2.git >> unity3d-plugin.git >> veracode-scanner-plugin.git >> view-job-filters-plugin.git >> virtualbox-plugin.git >> vsphere-cloud-plugin.git >> vstestrunner-plugin.git >> walldisplay-plugin.git >> warnings-plugin.git >> weblogic-deployer-plugin.git >> winstone.git >> wix-plugin.git >> ws-cleanup-plugin.git >> xcode-plugin.git >> xstream.git >> xtrigger-lib.git >> xunit-plugin.git >> xvfb-plugin.git >> xvnc-plugin.git >> >> *The prevention* >> >> Can we prevent this to happen again ? >> I personally do not work on any of those repositories but still have >> "forced push" permissions ... and so many other people have. >> I don't see the value of having such power of "potential disruption" >> associated to my account :-( ... can we remove the forced push by default >> and enable on a case-by-case basis ? >> >> --- * --- >> >> If you would like to propose an alternative approach to resolve the >> problem, feel free to follow-up ! >> >> ... and again ... accept my sincere apologies :-( >> >> Luca. >> >> On 10 Nov 2013, at 18:24, Arnaud Héritier <[email protected]> wrote: >> >> I confirm we lost many commits. damned github that doesn't allow to >> disable the history rewrite at least on master branch. >> Last commit on Xcode repo is referencing one done by Jerome Lacoste 5 >> montages ago while KK worked on it recently. >> I don't know how we can restore everything easily. We need to find the >> recent hash and relative history in a clone we the push of yesterday was >> retrieved. >> >> — >> Sent from Mailbox <https://www.dropbox.com/mailbox> for iPhone >> >> >> On Sun, Nov 10, 2013 at 5:51 PM, domi <[email protected]> wrote: >> >>> As I don’t know if Luca is following this list too, I’m adding Lucas >>> mail on the to list… (got the email address from his GitHub account) >>> Please Luca can you explain what you have done to all this repositories? >>> regards Domi >>> >>> >>> On 10.11.2013, at 17:25, ogondza <[email protected]> wrote: >>> >>> Definitely related, selenium-tests repo lost 17+ commits after such >>> push. >>> >>>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Jenkins Developers" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Jenkins Developers" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >> >> >> > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Developers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected] <javascript:>. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- You received this message because you are subscribed to the Google Groups "Jenkins Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
