2010-10-29 42 views
29

Tôi đã đẩy nguồn của mình đến một kho lưu trữ Mercurial. Hôm nay tôi cần xóa bản sao cục bộ và sao chép lại. Tôi đã làm điều này bằng cách đơn giản di chuyển bản sao cục bộ của tôi ở một nơi khác (chỉ trong trường hợp) và gõ "hg clone url".Mở dự án hiện có từ điều khiển nguồn

Phần này đã hoạt động tốt.

Tuy nhiên, khi tôi cố gắng để kéo bản sao cục bộ mới được nhân bản vào Eclipse, tôi nhận được lỗi sau:

/Users/Andrew/Dev/Workspace/Android/MyProject overlaps the location of another project: 'MyProject' 

tôi đoán là tôi đã được cam kết một số tập tin meta hoặc một cái gì đó mà tôi không nên có. Có ai có ý tưởng nào? Đây là của tôi .hgignore:

syntax: regexp 
\.DS_Store 
.swo 
.swp 
.metadata/ 
/bin/ 

Lưu ý: Hình như hgignore của tôi không chặn thư mục gen. Điều này có thể là một phần của vấn đề?

Trả lời

54

Có một lỗi trong Eclipse gì sẽ không cho phép bạn tạo ra một dự án Android từ các nguồn hiện có:

http://code.google.com/p/android/issues/detail?id=8431

Bạn phải di chuyển MyProject vào một thư mục mà không có bất kỳ khác các dự án trong các thư mục con của nó. Sau đó, bạn có thể tạo một dự án mới từ nguồn hiện có với MyProject. Xóa dự án mới khỏi không gian làm việc mà không xóa nội dung trên đĩa và di chuyển nó trở lại thư mục Android của bạn. Bây giờ, hãy nhập Nhập -> Chung -> Dự án hiện tại vào không gian làm việcMyProject sẽ có sẵn để nhập.

Đây là cách duy nhất tôi có thể thực hiện.

+7

Cảm ơn, câu trả lời này đã giải quyết được vấn đề của tôi. Nó dường như không bị cô lập cho các dự án Android. Tôi rất ngạc nhiên khi lỗi này vẫn tồn tại. – Nate

+0

Cảm ơn, bạn đã cứu tôi một thời gian. Vẫn còn lỗi này ngay hôm nay với công cụ Eclipse Juno và android 21 –

+1

Tôi sẽ làm gì nếu không có Stack Overflow! Mất bao lâu để tôi tự mình tìm ra điều này!?! Một thời gian dài! –

0

Tôi nghĩ vấn đề là bạn di chuyển bản sao cục bộ của bạn đi và sau đó bạn cố gắng thêm một dự án khác vào Eclipse tại cùng một vị trí như những gì bạn có trước và bạn chỉ bối rối Eclipse ...

tôi sẽ khuyên bạn nên thử sử dụng các lệnh dòng lệnh cho Mercurial và khi bạn vào Eclipse, trước tiên hãy dọn sạch các dự án hiện có trước khi thêm một dự án khác.

+0

Tôi không chắc chắn điều này là đúng. Tôi đã có một người bạn kéo nguồn của tôi (người chưa bao giờ kéo nó trước đó) và anh ấy đang gặp vấn đề tương tự. Nếu anh ta đặt thư mục làm việc Eclipse của mình thành ../Dev/Workspace/Android, đặt dự án ở đó và cố gắng mở nó trong Eclipse, anh ta nhận được cùng một lỗi. – Andrew

+0

Eclipse tạo tệp .project và .classpath và thư mục .settings. Những thứ đó không cần thiết bởi chính Android ... có lẽ bạn có thể kiểm tra điều đó? – Matthieu

+0

Tôi sẽ chụp. Cảm ơn bạn – Andrew

6

Ok, tôi sẽ cố gắng tóm tắt, sau khi tôi phải đối mặt với vấn đề tương tự và lãng phí một chút thời gian:

Eclipse Juno /4.2 SR1 (tuy nhiên tôi nghĩ rằng đó là một sự hiểu lầm chung của các dự án nhập khẩu như thế nào nhật thực)

  1. Nếu bạn muốn dự án mới của bạn "kết nối" để git/lanh lợi, bạn sẽ phải sao chép và nhập khẩu qua "Import/Git/Import from Git"
  2. Nó sẽ thất bại nếu bạn "không gian làm việc dir" bằng "dir đích cục bộ". Một bản sao git qua egit PHẢI KHÔNG được đặt! trong "eclipse workspace dir"!

Quá trình nhập dự án sẽ không thành công do tên dự án trong tệp nhân bản ".project" đã tồn tại trong thư mục không gian làm việc eclipse khi quá trình nhập xảy ra.

+0

Đây là giải pháp phù hợp với tôi. Nhập từ git, thay vì android. – syonip

0

Dung tích của tôi chỉ để nhập là general dự án không phải là android một.

0

Tôi gặp sự cố này khi cố gắng nhập dự án repo git và các mô-đun con của nó. Tôi đã kết thúc bằng cách sử dụng import -> git -> Projects từ Git (git plugin). Điều này hiểu khái niệm về một dự án trong một dự án tốt. Dự án hiện được giám sát bởi plugin đó. Đó là một sự cân bằng đủ tốt cho tôi.

Các vấn đề liên quan