I screwed up matplotlib/master on github

View: New views
10 Messages — Rating Filter:   Alert me  

I screwed up matplotlib/master on github

by Paul Ivanov :: Rate this Message:

| View Threaded | Show Only this Message

I offer my sincerest apologies, I royally screwed up and thought
that I was pushing out to one of my own branches and somehow
ended up pushing a 2 day old copy of master out to
matplotlib/master with 'git push -f'. Assuming Mike's work from
today is also in his own master branch, I think the damage can be
undone by just pulling from
https://github.com/mdboom/matplotlib/master and pushing that to
https://matplotlib/matplotlib/master, but at this point I don't
trust myself and just want to not cause any more damage than I've
already done.

I realize that people get their commit right revoked for such
careless shenanigans, but I will be grateful if you'd all allow
me the opportunity always run any push commands with the
--dry-run flag from now on.

very sorry,
--
Paul Ivanov
314 address only used for lists,  off-list direct email at:
http://pirsquared.org | GPG/PGP key id: 0x0F3E28F7


------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

signature.asc (205 bytes) Download Attachment

Re: I screwed up matplotlib/master on github

by Paul Ivanov :: Rate this Message:

| View Threaded | Show Only this Message

Paul Ivanov, on 2011-03-24 01:30,  wrote:

> I offer my sincerest apologies, I royally screwed up and thought
> that I was pushing out to one of my own branches and somehow
> ended up pushing a 2 day old copy of master out to
> matplotlib/master with 'git push -f'. Assuming Mike's work from
> today is also in his own master branch, I think the damage can be
> undone by just pulling from
> https://github.com/mdboom/matplotlib/master and pushing that to
> https://matplotlib/matplotlib/master, but at this point I don't
> trust myself and just want to not cause any more damage than I've
> already done.
>
> I realize that people get their commit right revoked for such
> careless shenanigans, but I will be grateful if you'd all allow
> me the opportunity always run any push commands with the
> --dry-run flag from now on.
I can't figure out a way to pull it from there, but I think Eric
was the last to commit to trunk before I (destructively) pushed
my stale copy. Eric's last commit hash was:
8506c33c811e970c6aa73a446d3ed223ac48f989

At least that's what I see on https://github.com/organizations/matplotlib

hopefully this will help someone who get git better than I do.

best,
--
Paul Ivanov
314 address only used for lists,  off-list direct email at:
http://pirsquared.org | GPG/PGP key id: 0x0F3E28F7


------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

signature.asc (205 bytes) Download Attachment

Re: I screwed up matplotlib/master on github

by John Hunter-4 :: Rate this Message:

| View Threaded | Show Only this Message


On Mar 24, 2011, at 3:30 AM, Paul Ivanov <pivanov314@...> wrote:

> I offer my sincerest apologies, I royally screwed up and thought
> that I was pushing out to one of my own branches and somehow
> ended up pushing a 2 day old copy of master out to
> matplotlib/master with 'git push -f'. Assuming Mike's work from
> today is also in his own master branch, I think the damage can be
> undone by just pulling from
> https://github.com/mdboom/matplotlib/master and pushing that to
> https://matplotlib/matplotlib/master, but at this point I don't
> trust myself and just want to not cause any more damage than I've
> already done.
>
> I realize that people get their commit right revoked for such
> careless shenanigans, but I will be grateful if you'd all allow
> me the opportunity always run any push commands with the
> --dry-run flag from now on.


With git you can clean up bad commits by simply changing the reference to master, or reorder and edit commits with rebase. Darren, can you take a look and see what should be done?  It may be more complicated when you have multiple forks and branches, this part I'm less clear on so perhaps Darren you can comment on this too.

Anyhow Paul, just an accident. Pales in comparison to my losing all of the ancient commit history in a CVS reorganization.

>

------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Re: I screwed up matplotlib/master on github

by John Hunter-4 :: Rate this Message:

| View Threaded | Show Only this Message

On Mar 24, 2011, at 4:59 AM, John Hunter <jdh2358@...> wrote:


With git you can clean up bad commits by simply changing the reference to master, or reorder and edit commits with rebase. Darren, can you take a look and see what should be done?  It may be more complicated when you have multiple forks and branches, this part I'm less clear on so perhaps Darren you can comment on this too.


Paul, just an FYI, the section "to reset, or not to reset" on page 24 of "git from the bottom up" discusses resetting the head to prior commits. 

http://ftp.newartisans.com/pub/git.from.bottom.up.pdf

But we should let Darren (or someone with comparable git foo) make the call about the right way to repair the tree. 

JDH

------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Re: I screwed up matplotlib/master on github

by Jouni K. Seppänen :: Rate this Message:

| View Threaded | Show Only this Message

Paul Ivanov <pivanov314@...> writes:

> I can't figure out a way to pull it from there, but I think Eric
> was the last to commit to trunk before I (destructively) pushed
> my stale copy. Eric's last commit hash was:
> 8506c33c811e970c6aa73a446d3ed223ac48f989

The git and ssh transports will only fetch branches and tags, but I was
able to get this commit with git http-fetch. I pushed it to master, so
it should be fine now.

Avoid using git push -f from now on, OK? :-)

--
Jouni K. Seppänen
http://www.iki.fi/jks


------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Re: I screwed up matplotlib/master on github

by Darren Dale :: Rate this Message:

| View Threaded | Show Only this Message

On Thu, Mar 24, 2011 at 7:28 AM, Jouni K. Seppänen <jks@...> wrote:

> Paul Ivanov <pivanov314@...> writes:
>
>> I can't figure out a way to pull it from there, but I think Eric
>> was the last to commit to trunk before I (destructively) pushed
>> my stale copy. Eric's last commit hash was:
>> 8506c33c811e970c6aa73a446d3ed223ac48f989
>
> The git and ssh transports will only fetch branches and tags, but I was
> able to get this commit with git http-fetch. I pushed it to master, so
> it should be fine now.
>
> Avoid using git push -f from now on, OK? :-)

Thanks Jouni. "git push -f" does not exist to me when pushing upstream.

------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Re: I screwed up matplotlib/master on github

by Matthew Brett :: Rate this Message:

| View Threaded | Show Only this Message

Hi Paul,

On Thu, Mar 24, 2011 at 2:55 AM, Paul Ivanov <pivanov314@...> wrote:

> Paul Ivanov, on 2011-03-24 01:30,  wrote:
>> I offer my sincerest apologies, I royally screwed up and thought
>> that I was pushing out to one of my own branches and somehow
>> ended up pushing a 2 day old copy of master out to
>> matplotlib/master with 'git push -f'. Assuming Mike's work from
>> today is also in his own master branch, I think the damage can be
>> undone by just pulling from
>> https://github.com/mdboom/matplotlib/master and pushing that to
>> https://matplotlib/matplotlib/master, but at this point I don't
>> trust myself and just want to not cause any more damage than I've
>> already done.
>>
>> I realize that people get their commit right revoked for such
>> careless shenanigans, but I will be grateful if you'd all allow
>> me the opportunity always run any push commands with the
>> --dry-run flag from now on.
>
> I can't figure out a way to pull it from there, but I think Eric
> was the last to commit to trunk before I (destructively) pushed
> my stale copy. Eric's last commit hash was:
> 8506c33c811e970c6aa73a446d3ed223ac48f989
>
> At least that's what I see on https://github.com/organizations/matplotlib
>
> hopefully this will help someone who get git better than I do.

Welcome to the wonderful world of git and DVCS!

I think you could have solved this one by:

git reset --hard 8506c33c811e970c6aa73a446d3ed223ac48f989

and pushing that.  Assuming you had that commit, which I guess you would have.

The way I try and avoid doing that very easy thing is

1) Having a moderately frightening name for the upstream remote like
'upstream-rw'.
2) Having a moderately frightening name for the tracking branch like:

git co -b main-master --track upstream-rw/master

3) Making sure I've got the git-completion bash command line
completion tools working, so I can always see my branch name
4) Never working on main-master, always branching, and merging when I'm sure.
5) Deleting my own master branch to avoid confusion.   This involves:

Going to your github fork, choosing Admin, set default branch to be
something other than 'master'

git co that-other-branch
git branch -D master # delete locally
git push origin :master # delete on github

Every error, is a jewel.

See you,

Matthew

------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Re: I screwed up matplotlib/master on github

by Paul Ivanov :: Rate this Message:

| View Threaded | Show Only this Message

Matthew Brett, on 2011-03-24 16:37,  wrote:
> Welcome to the wonderful world of git and DVCS!

Thanks, I wish I could claim that I only started using git
recently, but I've just sort of been uncomfortably trying my best
to not cause too much trouble for the past year and a half...
>
> I think you could have solved this one by:
>
> git reset --hard 8506c33c811e970c6aa73a446d3ed223ac48f989
>
> and pushing that.  Assuming you had that commit, which I guess you would have.

This actually wasn't the case - I hadn't pulled from
matplotlib/master for a few days, hence the stale commit become a
head after my push.
 
> The way I try and avoid doing that very easy thing is
>
> 1) Having a moderately frightening name for the upstream remote like
> 'upstream-rw'.
> 2) Having a moderately frightening name for the tracking branch like:
>
> git co -b main-master --track upstream-rw/master

good tips, thanks.

>
> 3) Making sure I've got the git-completion bash command line
> completion tools working, so I can always see my branch name

This was actually the case for me - I wasn't working on master,
but a seperate branch called 'one-figure' which didn't have a
remote branch affiliated with it (or a wrong one). I had
previously pushed it using 'git push ivanov one-figure', and
*wrongly* assumed that this state was preserved somewhere

16:46@matplotlib(one-figure)$

> 4) Never working on main-master, always branching, and merging when I'm sure.

> 5) Deleting my own master branch to avoid confusion.   This involves:
>
> Going to your github fork, choosing Admin, set default branch to be
> something other than 'master'
>
> git co that-other-branch
> git branch -D master # delete locally
> git push origin :master # delete on github
>
> Every error, is a jewel.
Wise words, but if that were true, De Beers and Tiffany's
couldn't hope to compete with me.

best,
--
Paul Ivanov
314 address only used for lists,  off-list direct email at:
http://pirsquared.org | GPG/PGP key id: 0x0F3E28F7


------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

signature.asc (205 bytes) Download Attachment

Re: I screwed up matplotlib/master on github

by Michael Droettboom-3 :: Rate this Message:

| View Threaded | Show Only this Message

There's also this git command I just discovered.  It seems to solve all of these issues, and the documentation is written in the same crystal-clear style of the other git manpages:

http://wingolog.org/archives/2011/03/28/git-brunch1

Mike
________________________________________
From: Paul Ivanov [pivanov314@...]
Sent: Thursday, March 24, 2011 8:20 PM
To: matplotlib-devel@...
Subject: Re: [matplotlib-devel] I screwed up matplotlib/master on github

Matthew Brett, on 2011-03-24 16:37,  wrote:
> Welcome to the wonderful world of git and DVCS!

Thanks, I wish I could claim that I only started using git
recently, but I've just sort of been uncomfortably trying my best
to not cause too much trouble for the past year and a half...
>
> I think you could have solved this one by:
>
> git reset --hard 8506c33c811e970c6aa73a446d3ed223ac48f989
>
> and pushing that.  Assuming you had that commit, which I guess you would have.

This actually wasn't the case - I hadn't pulled from
matplotlib/master for a few days, hence the stale commit become a
head after my push.

> The way I try and avoid doing that very easy thing is
>
> 1) Having a moderately frightening name for the upstream remote like
> 'upstream-rw'.
> 2) Having a moderately frightening name for the tracking branch like:
>
> git co -b main-master --track upstream-rw/master

good tips, thanks.

>
> 3) Making sure I've got the git-completion bash command line
> completion tools working, so I can always see my branch name

This was actually the case for me - I wasn't working on master,
but a seperate branch called 'one-figure' which didn't have a
remote branch affiliated with it (or a wrong one). I had
previously pushed it using 'git push ivanov one-figure', and
*wrongly* assumed that this state was preserved somewhere

16:46@matplotlib(one-figure)$

> 4) Never working on main-master, always branching, and merging when I'm sure.

> 5) Deleting my own master branch to avoid confusion.   This involves:
>
> Going to your github fork, choosing Admin, set default branch to be
> something other than 'master'
>
> git co that-other-branch
> git branch -D master # delete locally
> git push origin :master # delete on github
>
> Every error, is a jewel.

Wise words, but if that were true, De Beers and Tiffany's
couldn't hope to compete with me.

best,
--
Paul Ivanov
314 address only used for lists,  off-list direct email at:
http://pirsquared.org | GPG/PGP key id: 0x0F3E28F7

------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software
be a part of the solution? Download the Intel(R) Manageability Checker
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Re: I screwed up matplotlib/master on github

by Matthew Brett :: Rate this Message:

| View Threaded | Show Only this Message

Yo,

On Mon, Mar 28, 2011 at 8:17 AM, Michael Droettboom <mdroe@...> wrote:
> There's also this git command I just discovered.  It seems to solve all of these issues, and the documentation is written in the same crystal-clear style of the other git manpages:
>
> http://wingolog.org/archives/2011/03/28/git-brunch1

It is indeed a stylistic masterpiece.  And then you have the aptly
named and actually useful:

http://git-wt-commit.rubyforge.org/git-wtf

Matthew

------------------------------------------------------------------------------
Create and publish websites with WebMatrix
Use the most popular FREE web apps or write code yourself;
WebMatrix provides all the features you need to develop and publish
your website. http://p.sf.net/sfu/ms-webmatrix-sf
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@...
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel