2013-03-09 69 views
1

我有一個在mercurial下的netbeans項目。我想要做的就是剝離一切使得這個項目的NetBeans項目,只留下代碼在那裏,讓我可以很容易地導入它在日食。版本控制系統中的IDE中立項目

是否有一些自動化的方式來做到這一點,或我必須手動刪除?

你會推薦什麼方法。

乾杯

+0

沒有netbeans,你將如何編譯代碼並生成一個war文件?你有一個螞蟻文件或其他生成指令? – Zagrev 2013-03-09 20:56:57

+0

我將使用IDE,但我想要存儲IDE相關文件。如果我使用Netbeans並且其他人使用Eclipse – 2014-02-04 20:45:41

回答

1

你只需要添加nbproject文件夾忽略(=不檢查)。所有NetBean設置均放置在此文件夾中。不要檢入builddist文件夾,因爲它們包含編譯後的代碼(但它們在默認情況下被忽略)。

+0

而且源文件夾的佈局不同。但是這是一件簡單的事情(在Netbeans和Eclipse中)設置項目中源文件夾的位置。 – Zagrev 2013-03-09 20:56:21

+0

取決於你如何設置你的項目等。但是,它是一件簡單的事情。 – ollo 2013-03-09 21:08:13

+0

任何地方,我可以找到更多關於此轉換>? – 2014-02-04 20:47:19

1

做「IDE中性項目」的最好方法是使用Maven!

在NetBeans中,當項目基於Maven(與基於Ant的相反)時,您會看到通常在nbproject文件夾中看到的所有那些NetBeans特定的文件都不存在。 nbproject文件夾不存在。原因在於,對於基於Maven的項目,NetBeans本質上使用pom.xml作爲項目的定義,這是一件好事,因爲POM是可移植的,並且可以直接被其他IDE使用。

即使對於基於Maven的項目,NetBeans仍然會在一個名爲nb-configuration.xml的文件中存儲一些IDE特定的內容,但是您可以將此文件的所有內容作爲屬性包含在pom.xml之內。這些屬性在加載POM時會被其他IDE忽略。這樣,您幾乎可以完全避免將任何IDE特定的文件檢入VCS。另外值得一提的是,nb-configuration.xml中的東西從來不需要其他人(使用NetBeans或其他IDE)能夠構建您的項目。另一種說法是它包含非必要的數據。 POM - 由於 - 始終保證是如何構建項目的完整描述。

相反,如果您的NetBeans項目是基於Ant的,那麼至少根據我的經驗,您無法避免將NetBeans特定文件檢入VCS ...因爲否則即使使用NetBeans的用戶也無法正確打開您的項目。

但是,即使在Maven中也有一個區域,您將被迫在VCS中使用NetBeans特定的文件,這就是如果您在NetBeans中使用Matisse GUI構建器。 Matisse GUI構建器生成一些擴展名爲.form的專有文件,您確實需要在VCS中具有這些文件。但是,如果您的項目是基於Maven的,那麼這是我可以提出的唯一一個NetBeans特定文件需要進入VCS的示例。

如果該項目確實 Maven的基礎,你仍然覺得有特定於NetBeans文件,您必須在VCS然後讓我們確切地知道哪些文件你想的。那我們可以從那裏拿走它。 :-)

+0

我使用maven,這不是問題,這裏的問題是如何在將它們存儲到存儲庫時將IDE依賴文件分開,以便其他人可以只需拖動src代碼並使用他們想要的任何IDE。現在他們需要使用Netbeans – 2014-02-04 20:46:32

+0

聽起來很奇怪,「他們需要使用NetBeans」,如果項目是基於Maven的?爲什麼? – peterh 2014-02-04 20:54:07

+0

就我所知,Maven不是IDE),所以它與此無關。這是項目和依賴管理。當我的問題是如何在將文件提交到存儲庫時如何保持IDE相關文件的源代碼乾淨時,我沒有看到這將如何提供幫助 – 2014-02-05 18:02:12