[petsc-dev] so Bitbucket and git suck once again

Jed Brown jed at jedbrown.org
Mon Sep 15 20:38:36 CDT 2014

Patrick Sanan <patrick.sanan at gmail.com> writes:

> On 9/12/14 2:05 AM, Jed Brown wrote:
>> Barry Smith <bsmith at mcs.anl.gov> writes:
>>>    Jed
>>>    So, I am in my PETSc repository and want to try out Patrick Sanan’s FCG since it is cool and we ignored it too long and need to get it into the repository. He’s made a nice pull request; great. So I do
>>> ~/Src/petsc  master $ git checkout psanan/ksp-fcg
>>> error: pathspec 'psanan/ksp-fcg' did not match any file(s) known to git.
>> The branch is in his repository, not ours.  Bitbucket has a major
>> pull-request permissions problem in that he can make a PR to our
>> repository without giving us read access to his repository.  This sounds
>> crazy and it is.
> Good to know for the future - I figured I'd make the fork private so as 
> not to expose too much code I was going to clobber with push -f, but 
> that presupposes a correspondence between their GUI and the 'real' way 
> to do things that obviously doesn't exist yet.

Yeah, they should probably adopt GitHub's privacy policy for forks so
that we don't get into these crazy situations where you can press the
merge button, but can't review what you are merging.

>>   Supposedly we would be able to merge using the web
>> interface (if not for merge conflicts), but we can't even read the
>> commits on the web:
>>    https://bitbucket.org/petsc/petsc/pull-request/197/kspfcg/commits
>> If we had read access to his repository, I would run:
>>    git fetch git at bitbucket.org:psanan/petsc psanan/ksp-fcg:psanan/ksp-fcg
>> to create a local branch in my repository named psanan/ksp-fcg.  I would
>> then
>>    git checkout psanan/ksp-fcg
>>    ... browse, run tests, etc
>>    git push -u origin psanan/ksp-fcg
>> and merge if it looks good.
>>> Then I fucking give up.
>>> Why doesn’t bitbucket produce useful information to get his branch without being a git guru? It should show the exact magical git incantation to pull his branch.
>>> 1) How do I pull his branch into my repository
>>> 2) How do I know in the future when I want to do this again, how to pull his branch in when my long term memory is shot?
>> Bitbucket is seriously dropping the ball on this interface.  GitHub
>> email notifications include the command to pull (merging into the
>> current branch, so not quite what we want) and have solved the
>> permissions problem.  They also makes the PR branches available under
>> refs/pull/*, so that you can get them without using the URL for the
>> contributor's repo.
>> Patrick, you have write access to the PETSc repository.  Can you just
>> push your branches there instead of your personal repo when creating a
>> PR?
> Just pushed it. I'm still hoping to add another example which does 
> something more sophisticated than the toy I have there now as ex60 
> (emailed Notay to see if he has any pointers on reproducing his example, 
> because to this point it's taking quite a few more iterations than the 
> table in the paper suggests it should).

That would be interesting.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20140915/22e0bc75/attachment.sig>

More information about the petsc-dev mailing list