# <copyright>
# 
# Copyright (c) 2008-2010 See4sys and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
# 
# Contributors: 
#     See4sys - Initial API and implementation
# 
# </copyright>

# ====================================================================
# To code developer:
#   Do NOT change the properties between this line and the
#   "%%% END OF TRANSLATED PROPERTIES %%%" line.
#   Make a new property name, append to the end of the file and change
#   the code to use the new property.
# ====================================================================

# ====================================================================
# %%% END OF TRANSLATED PROPERTIES %%%
# ====================================================================

pluginName=Sphinx EMF Compare Team Subversive UI Plug-in (Incubation)
providerName=Eclipse Sphinx

CompareWithLatestFromRepositoryAction.label=Latest from Repository
CompareWithLatestFromRepositoryAction.tooltip=Compare the current working copy with the last version on the repository