Detect assume-valid-bit changes in refresh

Use a filter that can detect properties of a dircache entry
rather than only general tree entry attributes.

JGit-Change-Id: I13e9ed4ae62dc3851204fba598239edce07ca977
Change-Id: I805a0548433ff2580b07d5ec7283916fe9546fcb
Fix indentation of commands in plugin.xml

Change-Id: I6b93921b561eba8162ca838ec8efc7962d888868
Properly handle checkout conflict exceptions

Properly handle a possible checkout conflict exception and display
a suiting dialog to the user also when merging and rebasing.

JGit-Dependency: I48d9bdcc1e98095576513a54a225a42409f301f3
Change-Id: I23780261308a6ce614355e724e7dbf0dfb4d35a7
Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>
[syncView] Use JobJoiner in test to ensure synchronize is done

By adding a sleep in the job of GitModelSynchronize, I could reproduce
some test failures. These are fixed by using JobJoiner.

Bug: 371633
Change-Id: Idf3bf4b8944c0c22127b9dfa67063b98e23c59e0
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Show detached HEAD warning again

This warning dialog got lost with commit
e3e898a6f332776305714deaefb47119b33b9b09

Bug: 398127
Change-Id: I9159cbce19cf73ebb539d943e71624004a6cea3d
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Signed-off-by: Robin Stocker <robin@nibor.org>
Support git --no-ff as an EGit preference

Bug: 336933
Change-Id: I9b7dd53c56d1e5908b0ffa1ca00a5ee4494c7557
Fix unnecessary code warnings in egit.ui *PropertyTesters

Change-Id: I7e0e649b311ef5bc96490ddaabe82a9be4a7bdd0
Make all methods and states of RepositoryState testable properties

E.g. if the current repository state is SAFE, then the isSafe
property of GitResource and GitRepository will be true. The methods,
like canResetHead is also testable. This applies both for
RepositoriesViewProprtyTester (applicable in the Git Repositories View),
as well as for ResourcePropertiesTester (applicable for resources).

For now, we only declare the properties that we actually use in the
properties testers section in plugin.xml.

Change-Id: I5c72f66ceac7678a03c85794251304a3db82d196
Enable reset in the repositories view whenever applicable

Bug: 395266
Change-Id: I43c60391cb8102193a13249d6b337416d68d7804
Add support for specific stage to IndexFileRevision

This is needed by several changes. The current behavior of using the
first available stage is preserved for now.

Change-Id: I26dbc133e2ab11682778ca564448f98bc5217c7e
Make Merge Tool also usable for conflicts of unstashing

Use index entries (2 and 3) for merge editor sides. This way, it is also
usable for conflicts of "stash apply". There should be no difference for
merge/rebase conflicts.

Bug: 376135
Change-Id: Ib9ac9ecd1a9f96217965cd288bc90fa377aad63b
Fix API problem filters for CoreText and UIText

Change-Id: I2df2e125227092bfc68aa0126e42bf6e65496999
Introduce a method to find projects containing paths

The code searches for IContainer's containing a certain path, by
comparing all IProject's and the IWorkspaceRoot location with the given
filename. This is much cheaper than calling
IWorkspaceRoot.findContainersForLocationURI().

This is required by multiple changes

Change-Id: I9c85247d6e0410bc0caefd6a4594373514e16562
Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>
Don't use ContextChangeSet#getComment(..), it's deprecated and internal

ContextChangeSet#getComment(..) is an internal method and it has been
deprecated. Use TeamUiUtil.getComment(..) instead.

Change-Id: I997373563dd049f87f58302cc5411942c2691844
Conditional label of context menu item for checkout in GitHistoryViewer

Shows "checkout..." when a dialog will open, "checkout" otherwise

Bug: 397950
Change-Id: I14ea1dffb68443f61b44fa7aca953e503a748aa8
Signed-off-by: Tobias Pfeifer <to.pfeifer@sap.com>
Merge "Introduce a method to find projects containing paths"
Merge "Conditional label of context menu item for checkout in GitHistoryViewer"
Merge "Make all methods and states of RepositoryState testable properties"
Merge "Enable reset in the repositories view whenever applicable"
Add clean action for repositories

This adds a "Clean..." menu item to the repository node in the
repository view. This has the advantage over the last try to add a clean
menu, that one can clean files and directories which are not part of the
workspace.

CQ: 6984
JGit-Dependency: Ibed0459005a5e306c010b9932f5b5fd107fb5448
Change-Id: I5136afd3333c6710b0c67c49618df6217e0d1fcf
Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>