簡體   English   中英

如何使用EGit clone創建Eclipse項目

[英]How to create Eclipse project with EGit clone

在與SVN共度了十年之后,我終於與Git一起大跌眼鏡了。 我在服務器上設置了Git,Gitolite和GitLab,並成功地將代碼添加到我的本地存儲庫,已提交,克隆的存儲庫並將代碼推送回存儲庫。 到現在為止還挺好。 現在進入EGit ......

我使用Git Repository Exploring視圖克隆了一個存儲庫,使用以下路徑語法:

ssh://dexter:vaultanalyser.git

(在GitLab中,存儲庫被稱為項目,所以我假設每個Eclipse項目應該有一個存儲庫?而不是包含多個項目的SVN樣式的單父存儲庫?)

這會將存儲庫導入:

/Users/mattpainter/git/vaultanalyser

我期待這一步能為我自動創建一個包含所有源代碼的Eclipse項目,但事實並非如此。 我試着捏造目標目錄,所以它在我的工作區中,但這也不起作用。

如何在Eclipse中獲取克隆源? 這個站點意味着如果你創建一個與存儲庫同名的項目,那一切都神奇地起作用,但事實並非如此(是的,我知道這篇文章是關於Github的,而不是GitLab,但我認為這兩個是關閉的足以完成手頭的任務)。

然后我嘗試在Eclipse中創建一個項目並共享它 - 但隨后整個項目顯示為存儲庫中的子文件夾。 如果存儲庫確實類似於項目,那么這不是我想要的。

我已經查看了其他看起來相關的StackOverflow主題,但我擔心我仍然缺少一個關於如何工作的關鍵理解,到目前為止看起來都非常復雜。

救命?

在GitLab中,存儲庫被稱為項目,所以我假設每個Eclipse項目應該有一個存儲庫?

是的,但是GitLab“項目”不一定是Eclipse項目。
它不必遵循SVN結構,如“ eclipse項目目錄外的Eclipse引用目錄,但在存儲庫中 ”所示。

您需要做的就是創建一個Eclipse項目,指定源目錄不在默認路徑(Eclipse工作區)中,但是無論您在何處克隆您的repo(如“ Eclipse + EGit入門 - 困惑 ”中所述)。
這樣,您剛剛聲明(並在Eclipse工作區中引用)的eclipse項目在Git repo的根目錄下有其文件( .project.classpath )。
然后Egit可以很好地管理該項目。
或者您可以使用Egit直接導入它:“ Eclipse + EGit:將項目克隆到工作區 ”。


正如OP nullpainter報告如下:

服務器上的.git/objects文件夾中的無效權限使原始問題更加復雜。
在文件夾上運行chmod git:git -R *解決了這個問題

他詳細介紹了下面的正確設置。

為了擴展@VonC的答案,讓EGit和Eclipse很好地發揮作用的步驟是:

  1. 從EGit中選擇“克隆Git存儲庫”,接受所有默認值。 這將在git父文件夾中創建一個文件夾,位於工作區外的某個位置。

  2. 創建一個新的Eclipse項目。 我正在使用Java,但我認為其他語言也有類似的步驟。 在第一個對話框中,取消選中“使用默認位置”,然后選擇在步驟1中創建的存儲庫文件夾。接受所有默認值。

  3. 從新項目中選擇Team > Share Project... 選擇Git,勾選“在項目的父文件夾中使用或創建存儲庫”。

現在,您可以從Eclipse中將代碼和Eclipse點文件推送到git存儲庫。

(我的原始問題因服務器上的.git/objects文件夾中的無效權限而復雜化 - 在文件夾上運行chmod git:git -R *解決了問題)

我用命令行檢查它 - 然后在那之上構建我的項目。 實際上,我最終使用命令行git進行大多數操作。 EGit對於查看差異很有用,但我發現命令行有更多的功能和控制。 Git主要是為開發者提供大量的權力和控制權。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM