Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [egit-dev] Difference between Compare with HEAD and Index

> -----Original Message-----
> From: Dariusz Luksza [mailto:dariusz.luksza@xxxxxxxxx]
> Sent: Mittwoch, 25. August 2010 14:52
> Actually I've plan to add support for displaying staged and unstaged
> changes to change set in synchronization view. This is on my TODO list
> next after bug fixing and mylyn integration.
> 
> In my humble opinion we should have single place where user can review
> changes that was made in repository and "prepare" commit.

Maybe it is a good idea not to add another view. I'm however a bit skeptical if we can find a good way to bring the staging concept into the synchronize view. The synchronize API supposes a local state (L), a remote state (R) and a common base (B). 
L     R
 \   /
  \ /
   B

Staging supposes a different topology (Local, Stage, HEAD):

L
 \
  S
   \
    H

So we put a concept into the view which is not made for that.

I also think that the synchronize view is made to view the difference between local changes and changes on something that can change itself, be it a remote server or another branch. Therefore it is useful to prepare a commit in a centralized versioning system like CVS.

In git committing is something different. It is a purely local operation. You are sure that there are only outgoing changes compared to your HEAD. In git you additionally have the index in between.

When I see all that I think that staging and committing in Egit should be done independently from the synchronize view. Nevertheless it should be possible to trigger the commit dialog or the staging view from the synchronize view.

Stefan


Back to the top