# Debugging options for the org.eclipse.team.cvs.core plugin.

# Turn on debugging for the plugin.
org.eclipse.team.cvs.core/debug=false

# Shows when meta-files are modified by a 3rd party
org.eclipse.team.cvs.core/metafiles=false

# Shows cvs client/server protocol
org.eclipse.team.cvs.core/cvsprotocol=true
# Shows stream debugging information
org.eclipse.team.cvs.core/threading=false

# Shows dirty state caching debugging information
org.eclipse.team.cvs.core/dirtycaching=false