Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "PTP/sync-projects"

< PTP
(Added items to FAQ)
Line 5: Line 5:
  
 
= Known Issues =
 
= Known Issues =
* The "Build directory" in (Project -> Properties -> C/C++ Build) does not show the correct build location for remote configurations. Builds should still run in the proper location, though, if set correctly in (Project -> Properties -> C/C++ Build -> Synchronize).
+
* The "Build directory" in ('Project' -> 'Properties' -> 'C/C++ Build') does not show the correct build location for remote configurations. Builds should still run in the proper location, though, if set correctly in ('Project' -> 'Properties' -> 'C/C++ Build' -> 'Synchronize').
 
* There is no wizard to convert existing remote projects to synchronized projects.
 
* There is no wizard to convert existing remote projects to synchronized projects.
 
* After converting a local project, users should copy the new Remote configuration to create additional remote sites. Copying and altering local configurations will not work [https://bugs.eclipse.org/bugs/show_bug.cgi?id=358141 bug 358141].
 
* After converting a local project, users should copy the new Remote configuration to create additional remote sites. Copying and altering local configurations will not work [https://bugs.eclipse.org/bugs/show_bug.cgi?id=358141 bug 358141].
Line 13: Line 13:
 
** The Workspace configuration only appears after the project is created.
 
** The Workspace configuration only appears after the project is created.
 
** The tool chain selected during creation is used for both the local machine and remote machine. Users need to adjust this after project creation.
 
** The tool chain selected during creation is used for both the local machine and remote machine. Users need to adjust this after project creation.
** For remote configurations, only the "Sync Builder" works, although other options are available (Project -> Properties -> C/C++ Build -> Tool Chain Editor). The "Sync Builder" is set as the default.
+
** For remote configurations, only the "Sync Builder" works, although other options are available ('Project' -> 'Properties' -> 'C/C++ Build' -> 'Tool Chain Editor'). The "Sync Builder" is set as the default.
 
** Attempting to change multiple configurations does not work correctly.
 
** Attempting to change multiple configurations does not work correctly.
  
 
= FAQ =
 
= FAQ =
=== I want to use CVS (or another version control system) together with synchronization. How do I setup a synchronized project and download my files from CVS? ===
 
# Create an empty Synchronized project
 
# Right-click on the project: 'Team' -> 'Share Project'
 
# Configure the repository
 
# Do not launch the Commit wizard (last page of wizard)
 
# Right-click on the project: 'Team' -> 'Update' to download all files. The files will automatically be synchronized to the remote host.
 
  
 +
=== How do I setup a synchronized project that works with a CVS repository? ===
 +
# Create a new CVS project as usual (right-click in 'Project Explorer' -> 'New' -> 'Other...' -> 'CVS' -> 'Projects from CVS")
 +
# Be sure to select "Check out as a project configured using the New Project Wizard" on the "Check Out As" screen
 +
# After the CVS wizard ends, the "New Project Wizard" begins.
 +
# Create an empty Synchronized project
 +
# Files in the CVS repository are automatically imported on project creation
 +
 +
=== How do I setup synchronization for an existing C/C++ or Fortran project, including ones that use CVS, Git, SVN, etc.? ===
 +
The conversion wizard, described in the User Guide, should work for all of these cases. Synchronization works independently of the user's version control system.
 +
 +
=== Why doesn't a new file that I added on the remote machine appear in my workspace, and how can I add it? ===
 +
On project creation, all existing remote files are downloaded. Additional new files are not downloaded, though, which prevents the downloading of files that are created during compilation. One workaround is to add the file locally, synchronize, and then edit the file remotely. This works because new local files are synchronized. Also, changes to remote files that are synchronized will be downloaded.
 +
 +
=== How do I know if a current project is a synchronized project? ===
 +
Go to the properties page ('Project' -> 'Properties' -> 'C/C++ Build') and see if the 'Synchronize' page is available.
  
 
= Change Log =
 
= Change Log =

Revision as of 15:28, 28 September 2011

Basic Information

Refer to Synchronized Projects User Guide for basic information.

The July 2011 PTP user meeting user-call recording includes a live demonstration of how to setup and configure a synchronized project. (Note: convert to full-screen viewing via the green square in the lower right corner of the screen to be able to read the contents of the demo screens.)

Known Issues

  • The "Build directory" in ('Project' -> 'Properties' -> 'C/C++ Build') does not show the correct build location for remote configurations. Builds should still run in the proper location, though, if set correctly in ('Project' -> 'Properties' -> 'C/C++ Build' -> 'Synchronize').
  • There is no wizard to convert existing remote projects to synchronized projects.
  • After converting a local project, users should copy the new Remote configuration to create additional remote sites. Copying and altering local configurations will not work bug 358141.
  • There are some potential pitfalls when configuring projects
    • On the first page of the new project wizard, users should not select a file system other than the default. This directory must be local. Users specify a remote location on the last page of the wizard bug 356208.
    • Users should avoid changing configurations inside the new project wizard, as this will cause errors. Instead, add and change configurations after project creation.
    • The Workspace configuration only appears after the project is created.
    • The tool chain selected during creation is used for both the local machine and remote machine. Users need to adjust this after project creation.
    • For remote configurations, only the "Sync Builder" works, although other options are available ('Project' -> 'Properties' -> 'C/C++ Build' -> 'Tool Chain Editor'). The "Sync Builder" is set as the default.
    • Attempting to change multiple configurations does not work correctly.

FAQ

How do I setup a synchronized project that works with a CVS repository?

  1. Create a new CVS project as usual (right-click in 'Project Explorer' -> 'New' -> 'Other...' -> 'CVS' -> 'Projects from CVS")
  2. Be sure to select "Check out as a project configured using the New Project Wizard" on the "Check Out As" screen
  3. After the CVS wizard ends, the "New Project Wizard" begins.
  4. Create an empty Synchronized project
  5. Files in the CVS repository are automatically imported on project creation

How do I setup synchronization for an existing C/C++ or Fortran project, including ones that use CVS, Git, SVN, etc.?

The conversion wizard, described in the User Guide, should work for all of these cases. Synchronization works independently of the user's version control system.

Why doesn't a new file that I added on the remote machine appear in my workspace, and how can I add it?

On project creation, all existing remote files are downloaded. Additional new files are not downloaded, though, which prevents the downloading of files that are created during compilation. One workaround is to add the file locally, synchronize, and then edit the file remotely. This works because new local files are synchronized. Also, changes to remote files that are synchronized will be downloaded.

How do I know if a current project is a synchronized project?

Go to the properties page ('Project' -> 'Properties' -> 'C/C++ Build') and see if the 'Synchronize' page is available.

Change Log

Version 5.0.2

  • Add sync context menu bug 345673.
  • Add wizard to convert local C/C++ or Fortran projects to synchronized projects bug 356813.
  • Support files with odd characters bug 354893, with the exception of newline characters bug 355270.
  • Add ability to turn off error messages bug 355526.
  • Fix bug 356633: Failure to add files to repository if a .gitignore file is present.

Version 5.0.1

  • Use separate Git directory (.ptp-sync instead of .git) for sync'ing so that it does not interfere with user's Git repository.
  • Sync empty directories.
  • Prevent users from modifying the synchronization properties of the Workspace configuration.
  • Fix bug 349372: Build fails if empty environment variables are present.
  • Support managed project types.
  • Add Fortran synchronization wizard.
  • Do not sync if only a file's markers have changed (prevents sync'ing during file editing if code analysis is turned on).

Copyright © Eclipse Foundation, Inc. All Rights Reserved.