Alright, những gì tôi đã làm (eclipse juno trên windows 7) là:
Tạo không gian làm việc nhật thực mới, nói test
, chạy nó và chỉ đóng cửa
Made nó thành một git repo
Cam kết các tập tin được tạo ra bởi thực cùng với .gitignore này:
# binary files
*.dat
*.tree
*.index
.metadata/.plugins/org.eclipse.jdt.core/invalidArchivesCache
.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache
.metadata/.mylyn/repositories.xml.zip
*.resources
# logs
*.log
.metadata/.lock
# later additions
.metadata/.plugins/org.eclipse.pde.core/.cache/
*.running
Chuyển sang một chi nhánh mới
Đã kích hoạt một trong các không gian làm việc của tôi, xuất tất cả cài đặt sau đó kích hoạt không gian làm việc test
và nhập chúng. So sánh .metadata/dirs của không gian làm việc với sự giúp đỡ của Beyond Compare. Thư mục .metadata\.plugins\org.eclipse.core.runtime\.settings\
giống hệt với tệp org.eclipse.ui.workbench.prefs
- nhưng sự khác biệt dường như không quan trọng (ví dụ: không gian làm việc cụ thể). Khi tắt không gian làm việc, tệp org.eclipse.jdt.launching.prefs
cũng đã được sửa đổi. Chuyển sang làm chủ và lặp lại cho phần còn lại của không gian làm việc của tôi.
Có những biến chứng - vì vậy ví dụ:
file org.eclipse.jdt.core.prefs
đã có mặt trong không gian làm việc test
trong khi trong không gian làm việc ban đầu (từ đã được tôi nhập khẩu) có là (nhị phân giống hệt nhau) org.eclipse.jdt.core.prefs.bak
.
File org.eclipse.pde.core.prefs
đã không được nhập
Các tập tin org.eclipse.jdt.launching.prefs
và org.eclipse.ui.workbench.prefs
khác nhau.
Sau khi không gian làm việc thứ năm tôi đã được giải quyết rằng các tập tin
.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml
.metadata/.plugins/org.eclipse.jdt.launching/.install.xml
được tạo ra khi thiết lập được nhập khẩu (trong một không gian làm việc mới), mà các tập tin .metadata\.plugins\org.eclipse.core.runtime\.settings\org.eclipse.pde.core.prefs
không xuất khẩu/nhập khẩu, mà các tập tin .settings\org.eclipse.ui.workbench.prefs
được hợp nhất khi nhập (cụ thể là * ENABLED_DECORATORS * var giữ nguyên) và org.eclipse.jdt.launching.prefs
được chỉnh sửa khi tắt nhật thực.
Có biến chứng hơn nữa như các tập tin có chứa tài liệu tham khảo dự án:
Ví dụ, các tập tin org.eclipse.wst.sse.core.prefs
chứa tên dự án từ không gian làm việc - Tôi đã báo cáo này như một bug (nó đã được cố định thực sự nhanh chóng!).
CDT tạo ra một loạt các tập tin như:
.settings/org.eclipse.cdt.core.prj-<projectName>.prefs
.settings/org.eclipse.cdt.ui.prj-<projectName>.prefs
được một cách mù quáng đồng bộ hóa xuất khẩu/nhập khẩu. Điều này thực sự là một trường hợp phức tạp hơn nhiều so với trường hợp trước - reported it also.
Thực tế, mọi thứ bạn có trong thư mục .settings
sẽ được sao chép cùng (tôi đoán miễn là nó có hậu tố .prefs
). Điều này đảm bảo một báo cáo lỗi khác.
Các tình huống tương tự gặp phải trong các tệp khác chứa tùy chọn cụ thể trong không gian làm việc - như trong org.eclipse.ui.ide.prefs
chứa tham chiếu đến bộ làm việc - thay vì không gian làm việc cụ thể - hoặc trong org.eclipse.ui.browser.prefs
chứa internalWebBrowserHistory - thường là không gian làm việc.
Dù sao tôi quyết định để đi cho các liên kết cứng - vì vậy tôi bình thường hóa sở thích của tôi (nó sẽ được nhiều dễ dàng hơn để bắt đầu với một không gian làm việc tươi) và sao chép tất cả các thiết lập ngoài org.eclipse.wst.sse.core.prefs
, các cdt
người và org.eclipse.pde.core.prefs
(vì một số lý do nó không được nhập. org.eclipse.ui.workbench.prefs
là khá đặc biệt cũng chứa các phím tắt). Sau đó, tôi chạy:
REM move_settings.bat
set SETTINGS_DIR=C:\path\to\tempalte\workspace\.metadata\.plugins\org.eclipse.core.runtime\.settings
set WORKSPACE_SETTINGS_DIR=C:\path\to\actual\workspace\.metadata\.plugins\org.eclipse.core.runtime\.settings
mkdir %WORKSPACE_SETTINGS_DIR%\zBackups
pause
FOR /F %%G IN ('DIR^ %%SETTINGS_DIR%%^ /b') DO (
move %WORKSPACE_SETTINGS_DIR%\%%G %WORKSPACE_SETTINGS_DIR%\zBackups
mklink /H %WORKSPACE_SETTINGS_DIR%\%%G %SETTINGS_DIR%\%%G
)
pause
cho không gian làm việc của tôi.
Và hãy đoán xem: nhật thực ngắt liên kết cứng. Tôi đã thử các liên kết mềm (mklink %WORKSPACE_SETTINGS_DIR%\%%G %SETTINGS_DIR%\%%G
) nhưng cũng không có niềm vui.
Cuối cùng
tôi phải liên kết cứng (ngã ba) toàn bộ các thiết lập dir (cùng với tất cả các file có vấn đề tôi đã đề cập) - điều này thực sự không phải là một giải pháp. Một trong những ngày này tình hình phải được giải quyết.Dù sao đây là .bat
tôi đã sử dụng:
:: Change to the directory that this batch file is in
:: NB: it must be invoked with a full path!
:: run the bat from the dir you want to backup your prefs to
for /f %%i in ("%0") do set curpath=%%~dpi
cd /d %curpath%
set WORKSPACES=javaEE\ javaSE\ c++\ python\ android\
set TEMPLATE_WORKSPACE=name_of_the_template_workspace\
set WORKSPACES_DIR=C:\Dropbox\eclipse_workspaces\
set SETTINGS_DIR=.metadata\.plugins\org.eclipse.core.runtime\.settings
REM set SETTINGS_DIR=.metadata\.plugins\org.eclipse.core.runtime\.settings\ WONT DO
set TEMPLATE_SETTINGS_DIR=%WORKSPACES_DIR%%TEMPLATE_WORKSPACE%%SETTINGS_DIR%
for %%G in (%WORKSPACES%) do (call :subroutine_needed %%G)
GOTO :eof
:subroutine_needed
set WORKSPACE=%1
set WORKSPACE_SETTINGS_DIR=%WORKSPACES_DIR%%WORKSPACE%%SETTINGS_DIR%
set BACKUP_DIR=%CD%\zBackups\%WORKSPACE%
mkdir %BACKUP_DIR%
pause
move %WORKSPACE_SETTINGS_DIR% %BACKUP_DIR%
pause
junction %WORKSPACE_SETTINGS_DIR% %TEMPLATE_SETTINGS_DIR%
pause
tôi sẽ cập nhật bài đăng này là cần thiết
Cảm ơn bạn rất nhiều vì đã chia sẻ. – Danijel