###############################################################################
# Copyright (c) 2000, 2016 IBM Corporation and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     IBM Corporation - initial API and implementation
#     Maik Schreiber - bug 102461
###############################################################################
providerName=Eclipse.org
pluginName=CVS Team Provider UI

CVS=CVS
ServerEncoding=Server Encoding

CVSRepositoryExploring=CVS Repository Exploring
CVSRepositoryExploring.openPerspectiveDescription=Open the CVS Repository Exploring Perspective
CVSRepositoryExploring.description=This perspective is designed to support the exploration of CVS repositories. It incorporates views for browsing CVS repositories and for browsing file history.

CVSGroupMenu.label=C&VS

SharingWizard.name=CVS

WorkspaceSynchronizeWizard.name=CVS
WorkspaceSynchronizeWizard.description=Synchronize resources in the workspace with their associated remote CVS repository.
CVSWorkspaceParticipant=CVS
CVSResourceMappingParticipant=CVS
CVSMergeParticipant=CVS Merge
CVSCompareParticipant=CVS Compare

PreferencePage.name=CVS
AnnotatePreferencePage.name=Annotate
CommentTemplatesPreferencePage.name=Comment Templates
ConsolePreferencePage.name=Console
ExtMethodPreferencePage.name=Ext Connection Method
DecoratorPreferencePage.name=Label Decorations
PasswordManagementPreferencePage.name=Password Management
ComparePreferencePage.name=Synchronize/Compare
UpdateMergePreferencePage.name=Update/Merge
WatchEditPreferencePage.name=Watch/Edit

newWizardCategoryName=CVS
newProjectCheckoutWizard=Projects from CVS
newLocationWizard=CVS Repository Location
newLocationWizardDescription=Create a new CVS repository location

DecoratorStandard.name=CVS
DecoratorStandard.desc=Shows CVS specific information on resources in projects under CVS control. Information includes the revision number, branch or version name, etc. To customize the CVS decorator go to Team>CVS>Label Decorations. 

AddAction.label=Add to &Version Control
AddAction.name=Add to Version Control
AddAction.tooltip=Add the Selected Resources to Version Control

MergeAction.label=&Merge...
MergeAction.name=Merge
MergeAction.tooltip=Merge

BranchAction.label=&Branch...
BranchAction.name=Branch
BranchAction.tooltip=Branch

CompareRemoteResourcesAction.label=Com&pare
CompareRemoteResourcesAction.tooltip=Compare the Remote Resources with Each Other

CompareRemoteWithTagAction.label=Compare &With...
CompareRemoteWithTagAction.tooltip=Compare with a Branch or a Version

CompareWithRemoteAction.label=La&test from Repository
CompareWithRemoteAction.name=Compare With Latest from Repository
CompareWithRemoteAction.tooltip=Compare with Content on CVS Server

CompareWithRevisionAction.label=&History...
CompareWithRevisionAction.name=Compare With Revision
CompareWithRevisionAction.tooltip=Compare with Revision on CVS Server

CompareWithTagAction.label=Another &Branch or Version...
CompareWithTagAction.name=Compare With Another Branch or Version
CompareWithTagAction.tooltip=Compare with a Branch or a Version on the CVS Server

OverrideAndUpdateAction.name=Override and Update
OverrideAndUpdateAction.tooltip=Overwrite the local changes with those from the repository.

OverrideAndCommitAction.name=Override and Commit
OverrideAndCommitAction.tooltip=Overwrite the changes in the repository with the local changes.

ContentAction.label=Compare File Contents
ContentAction.tooltip=Use File Contents Instead of Timestamps When Comparing

ConvertNature.label=Convert Provider from Nature
ConvertNature.tooltip=Converts a CVS project from using natures to using properties

CopyRepositoryNameAction.label=&Copy to Clipboard
CopyRepositoryNameAction.tooltip=Copy Repository Names to Clipboard

IgnoreAction.label=Add to .cvs&ignore...
IgnoreAction.name=Add to .cvsignore
IgnoreAction.tooltip=Ignore the Selected Resources when Synchronizing

RefreshTagsAction.label=Refresh &Branches...
RefreshTagsAction.tooltip=Refresh the branch tags and their members using the auto-refresh files associated with each remote folder

RemoveRootAction.label=Discard &Location
RemoveRootAction.tooltip=Discard Location

ReplaceWithRevisionAction.label=&History...
ReplaceWithRevisionAction.name=Replace With Revision
ReplaceWithRevisionAction.tooltip=Replace with Revision on CVS Server

ReplaceWithLastRevision.label=Revert to Base
ReplaceWithLastRevision.name=Revert to Base
ReplaceWithLastRevision.tooltip=Revert to Base revisions

ReplaceWithTagAction.label=&Another Branch or Version...
ReplaceWithTagAction.name=Replace With Another Branch or Version
ReplaceWithTagAction.tooltip=Replace with Branch or Version on the CVS Server

TagAction.label=&Tag as Version...
TagAction.name=Tag as Version
TagAction.tooltip=Tag the resources with a CVS version tag

TagInRepositoryAction.label=&Tag as Version...
TagInRepositoryAction.name=Tag as Version
TagInRepositoryAction.tooltip=Tag the resources with a CVS version tag

MoveTagAction.label=Tag with &Existing...
MoveTagAction.tooltip=Tag the selected resources with an existing tag

SetKeywordSubstitutionAction.label=Cha&nge ASCII/Binary Property...
SetKeywordSubstitutionAction.name=Change ASCII/Binary Property
SetKeywordSubstitutionAction.tooltip=Change whether the selected resources should be treated as ASCII or binary on the CVS Server

UpdateAction.label=&Update
UpdateAction.name=Update
UpdateAction.tooltip=Update resources with new content from the repository

UpdateAllAction.name=Update All Incoming Changes
UpdateAllAction.tooltip=Update all incoming changes with new content from the repository

UpdateActionSwitch.label=S&witch to Another Branch or Version...
UpdateActionSwitch.name=Switch to Another Branch or Version
UpdateActionSwitch.tooltip=Switch to Another Branch or Version

ReplaceWithAction.label=La&test from Repository
ReplaceWithAction.name=Replace With Latest from Repository
ReplaceWithAction.tooltip=Replace with last committed content from CVS Server

ConfigureTags.label=Configure &Branches and Versions...
ConfigureTags.tooltip=Configure the branch and version tags shown in the workbench

AddToBranch.label=Add &to Branch List...
AddToBranch.tooltip=Add the selected remote folder to a branch

CommitAction.label=&Commit...
CommitAction.name=Commit
CommitAction.tooltip=Commit resources to the repository

CommitAllAction.name=Commit All Outgoing Changes
CommitAllAction.tooltip=Commit all outgoing changes to the repository

CheckoutAction.label=&Check Out
CheckoutAction.tooltip=Check out a module from the repository to the workspace

CheckoutAsAction.label=Check Out &As...
CheckoutAsAction.tooltip=Check out a module from the repository to the workspace

OpenLogEntryAction.label=&Open
OpenLogEntryAction.tooltip=Open Remote File

OpenRemoteFileAction.label=&Open
OpenRemoteFileAction.tooltip=Open Remote File

ShowHistoryAction.label=Show &History
ShowHistoryAction.name=Show History
ShowHistoryAction.tooltip=Show History

ShowAnnotationAction.label=&Show Revision Information
ShowAnnotationAction.name=Show Revision Information
ShowAnnotationAction.tooltip=Show Revision Information

GenerateDiff.label=Create &Patch...
GenerateDiff.name=Create Patch
GenerateDiff.tooltip=Compare your workspace contents with the server and generate a diff file that can be used as a patch file.

RefreshFromLocal.label=&Refresh from local CVS state
RefreshFromLocal.tooltip=Refresh the workbench with changes made to CVS projects from outside the workbench.

Synchronize.label=&Synchronize with Repository
Synchronize.name=Synchronize with Repository
Synchronize.tooltip=Synchronize the workspace resources with those in the repository

EditAction.label=&Edit
EditAction.tooltip=Perform a 'cvs edit' on the selected files

UneditAction.label=U&nedit
UneditAction.tooltip=Perform a 'cvs unedit' on the selected files

viewCategory=CVS

Console.name=CVS Console

RepositoriesView.name=CVS Repositories

HistoryFilter.label=&Filter History
HistoryFilter.tooltip=Filter History

HistoryView.name=CVS Resource History

UnmanageFolder.label=&Disconnect...
UnmanageFolder.tooltip=Disconnect from the CVS repository.

CVSActionSet.categoryName=CVS
CVSActionSet.description=Actions that apply when working with CVS repositories
CVSActionSet.newLabel=Add CVS Repository
CVSActionSet.newTooltip=Add CVS Repository
CVSActionSet.checkoutLabel=Checkout from CVS
CVSActionSet.checkoutTooltip=Checkout from CVS

RestoreFromRepositoryAction.label=&Restore from Repository...
RestoreFromRepositoryAction.tooltip=Restore resources that have been deleted from the remote folder.

ShowEditorsAction.label=Show &Editors
ShowEditorsAction.tooltip=Perform a 'cvs editors' on the selected file

EditorsView.name=CVS Editors
CVSConsoleFont.label=CVS Console Font
CVSConsoleFont.description=The font for the CVS console.

WorkInProgress.name=Work In Progress
CVSRemoteQuickDiffProvider.label=&Latest CVS Revision

NewDateTagAction.label=&Date Tag...
NewDateTagAction.tooltip=Add new date tag

newProjectCheckoutWizardDescription=Checkout one or more projects from a CVS Repository.
newProjectCheckoutWizardDescription2=Create a new project by checking out an existing project from a CVS repository

OutgoingChangeForegroundColor.label=Outgoing Change (Foreground)
OutgoingChangeForegroundColor.description=This color is used for the foreground color for resources that have outgoing changes.
OutgoingChangeBackgroundColor.label=Outgoing Change (Background)
OutgoingChangeBackgroundColor.description=This color is used for the background color for resources that have outgoing changes.
OutgoingChangeFont.label=Outgoing Change Font
OutgoingChangeFont.description=The font used to display outgoing changes.
IgnoredResourceFont.label=Ignored Resource Font
IgnoredResourceFont.description=The font used to display resources that are ignored from CVS.
IgnoredResourceForegroundColor.label=Ignored Resource (Foreground)
IgnoredResourceForegroundColor.description=This color is used for the foreground color for resources that are ignored from CVS.
IgnoredResourceBackgroundColor.label=Ignored Resource (Background)
IgnoredResourceBackgroundColor.description=This color is used for the background color for resources that are ignored from CVS.
CVSHistoryCategory.label=CVS History Page Categories (Foreground)
CVSHistoryCategory.description=This color is used for the foreground color for all categories displayed for CVS resources in the history view.

PreferenceKeywords.CVS=cvs team share timeout connection
PreferenceKeywords.Annotate=cvs team annotate
PreferenceKeywords.Comment=cvs team comment templates
PreferenceKeywords.Console=cvs team console colors
PreferenceKeywords.EXT=cvs team ext connection method ssh ssh2
PreferenceKeywords.Decorator=cvs team label decorations text icons flag
PreferenceKeywords.Compare=cvs team compare synchronize model change set
PreferenceKeywords.Update=cvs team update merge conflict
PreferenceKeywords.Watch=cvs team watch editors notification
PreferenceKeywords.Import=repository

RepoPreference.Name=CVS Repositories
RepoPreference.Description=Preferences that contain the CVS repository connection information

FetchAllMembers.label=Expand All
FetchAllMembers.tooltip=Expand the entire folder in a single round trip

HistoryView.Compare.label = &Compare
HistoryView.Open.label = &Open

ChangeSets = CVS Change Sets
newLocation.description = Add a new CVS repository location
newLocation.name = Add Repository Location

PasteConnectionaction.label=&Paste Connection

TraceComponentLabel=Platform Team CVS UI
