Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [egit-dev] making push force more handy

Hi all

I filed https://bugs.eclipse.org/bugs/show_bug.cgi?id=411219 to add easy push force from Git Staging view.

Cheers
André


On 06/18/2013 03:59 PM, Robin Stocker wrote:
Hi Matthias, Hi Tomasz

Thanks for your feedback!

On 06/17/2013 08:08 AM, Matthias Sohn wrote:



On Fri, Jun 14, 2013 at 3:38 PM, André Dietisheim <
adietish@xxxxxxxxxx > wrote:


Hi

I'm currently looking into improve EGit here and there usability-wise
(and in my daily job). We have master repos on github and each dev
has its personal fork. We all work on topics-branches. Once the code
is ready we rebase (or amend beforehad) and file a pull-request
which then gets merged into the master repo.
The git staging view is just awesome, it allows commiting and pushing
to my github fork in a single (button) click. That's even easier
than on the cmd-line. Unfortunately when I amend, I have to push
force to my fork which is not as handy.

* The git-staging view doesn't offer a force switch which could come
very handy but could also be very dangerous. What are your thoughts?

yes, it's dangerous, we could add a force switch but it's default
should be always off.
Maybe we should only offer it after fast forward failed.

Yes, good idea. I put 2 suggestions into my blog here:
https://community.jboss.org/en/tools/blog/2013/06/18/how-to-use-eclipse-egit-with-github-in-jboss-tools
* a checkbox below the warning "your amended commit was already
pushed..." in Git Staging View
-1 to this suggestion. I think this would cause a lot of grief
when unexperienced users just force-push without knowing what
commits they are effectively discarding on the remote.

* a dialog that comes up when push fails non-fast-forward
+1. A dialog that would offer additional information would make this
really usable:


+---------------------------------------------------------------+
| The push was rejected by the server because it would discard  |
| existing commits. You can try to force the push if you are    |
| sure that you want to replace the existing commits with the   |
| new ones.                                                     |
|                                                               |
| Commits to replace:                                           |
| # deadbeef: Implement foo  (Au Thor)                          |
| # 1238abc8: Fix problem bar  (Au Thor)                        |
|                                                               |
| Replaced by:                                                  |
| # abc12345: Implement foo  (Au Thor)                          |
| # def67890: Fix problem bar  (Au Thor)                        |
|                                                               |
|                                      [Cancel]   [Force Push]  |
+---------------------------------------------------------------+


This way the user would notice if the above contained commits
that are not from them, and a e.g. rebase is necessary. And maybe
the dialog should not be automatic but should be explicitly opened
from the push results dialog. Otherwise it would also appear
directly when just a normal rebase/merge is in order. Or we could
change the text and also offer rebase/merge as buttons there.


On a related note, I'll try to include my "Publish Branch" wizard
this cycle, which should help for the initial push of a topic branch:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=382190

I'll post to the mailing list with some screenshots to get the
discussion started.

Regards,
  Robin Stocker


I'd also love you guys to comment on my other suggestions if you see
anything wrong/you would agree etc.






* Team->Remote->Push needs one 1 click too much: it doesn't come
preconfigured. You have to select your local branch, add the refspec
and check "force". I'd prefill the local branch. That would safe 1
click and would things slightly more handy. Thoughts?

that looks like a good idea

okiedokie, I'll file a bugzilla and provide a patch...






* Team->Push To Upstream wont allow me to push force. Invoking it
will tell me that my push is of course "non fast-forward". The only
option I have there is to "Configure..." but this will change my
repo-configuration and this is not what I want to do. I only want to
push force this single time (and eventually another time later on).
What about offering "Push..." there, too?

push to upstream is meant to be single click for the most frequently
needed case.
Why don't you trigger Push... from the repositories view ?

I initially used "Push..." but it for some reason always results in
nothing done, it tells me "already up to date". I planned to
investigate why this happens...





--
Matthias


_______________________________________________
egit-dev mailing list
egit-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/egit-dev



Back to the top