Myeclipse+Git
- EGit安裝
MyEclipse已經集成了Git插件EGit,在window->Preference里搜索git可以看到。
![]()
|
如果沒有,安裝方式為Help->Install From Catalog->搜索Git,找到Eclipse EGit Eclipse Git Team Provider,安裝即可。或者install From site地址為http://download.eclipse.org/egit/updates
安裝后在New新建項目時可以搜索到Git目錄。可通過Import,導入Git版本庫。
- 建立版本庫
如果第一次使用,新建項目,右鍵工程項目Team->Share Project,選擇Git,點擊Next
![]() ![]()
|
在Configure Git Repository窗口,點擊Create,新建一個本地倉庫
![]()
|
點擊finish后,可以看到項目結構圖如下:
![]()
|
剛創建的本地版本庫,問號表示git還沒有監控它,處於untracked狀態,新入庫的文件都處理untracked狀態。
打開git視窗查看,git staging狀態如下:
![]()
|
點擊Commit按鈕后,彈出如下錯誤提示框:
![]()
|
需要先將項目添加到暫存區,即添加到Index。
![]()
|
Git staging狀態如下:
![]()
|
這樣就把項目中發生修改的文件都添加到暫存區,等待被提交,也可以只把需要提交的文件添加到暫存區,如下:
![]()
|
Add后顯示如下:
![]()
|
提交:
提交之前要填寫提交信息,至少自己要看得懂,這樣在版本回退的時候根據信息就可以找到要回退的版本。
![]()
|
提交之后,文件前的問號和”>”符號也不見了,工程結構如下:
![]()
|
提交之后,倉庫右鍵show in->history,可以看到有一條記錄,最左邊一列是版本ID。
- 提交到遠程版本庫
第一種通過Git Staging窗口的Commit and Push按鈕提交。
![]()
|
第二種通過右鍵項目,點擊Team->Remote->Push
![]()
|
如果是首次提交到遠程版本庫,彈出如下窗口:
![]()
|
最后點擊Next按鈕
![]()
|
自動選擇了master,最后點擊Finish按鈕。然后你就可以上碼雲上去看是否有上傳成功了。
![]()
|
![]() ![]()
|
提示是否需要密碼提示,如果選擇是的話會彈出設置窗口,如果不需要可以選擇No。
如果不是首次提交到遠程版本庫,如下圖:
![]()
|
點擊Next,如下圖所示:
![]()
|
錯誤:rejected –non-fast-forward
錯誤原因:文件沖突,本地的代碼和遠程Repository中的文件個數不一致(即遠程Repository中存在本地項目中不存在的文件)或本地得項目不是在遠程Repository代碼的基礎上修改的。
解決辦法:
將遠程Repository中的代碼更新到本地,然后再進行Push,即可完成代碼提交。
再重新進行一次push即可。
![]()
|
這里我們使用碼雲來做測試:
1、 創建項目
![]() ![]()
|
創建項目成功之后顯示如下頁面:
![]()
|
2、
- 檢出項目
第一種:使用MyEclipse的Import功能,選擇Projects from Git
![]() ![]()
|
點擊Next,出現如下圖窗口:
![]()
|
點擊Next,出現如下窗口:
![]()
|
如果選擇Import existing Eclipse project,出現如下窗口:
![]()
|
如果你選擇的是Import as general project,出現如下窗口:
![]() ![]()
|
如果選擇Import using the New Project wizard,出現如下窗口:
![]() ![]()
|
第二種:在Git Repositories視圖中找到需要導入的項目,右鍵導入到當前工作空間中。
- 分支管理
創建和切換分支:
方法一:右鍵項目,Team->Switch To->New Branch,創建新的分支,或切換到其他分支。
![]() ![]()
|
點擊Finish之后,當前工程的分支就變成了新建test分支,如下工程結構圖:
![]()
|
接下來把新建分支提交到遠程版本庫,選中項目,右鍵->Team->Push to Upstream:
![]()
|
在彈出框中,填寫項目的git路徑,點擊Finish。
![]()
|
登陸碼雲,驗證分支:
![]()
|
提交代碼到遠程test分支:
![]() ![]()
|
點擊Next按鈕,出現如下窗口:
![]()
|
此時本地代碼倉庫與遠程代碼倉庫的分支test相互關聯。並且都是基於master分支了。再次提交代碼,就可以在test分支上提交代碼了。而不是master分支上直接提交代碼。
然后你自己也可以基於test 分支拉取自己的分支,每一個分支做一塊任務。
聰明的愛思考的你一定回想了:我新建了分支test,那么以后提交都提交到test分支上。那么master分支上的代碼是不是就不能獲得最新的提交代碼了呢?答案是:master分支不能獲得最新代碼。那提交到test分支的代碼,如何進入到遠程master分支呢?
切換到master分支:
![]()
|
刪除和合並分支:
在Git Repositories視圖中,選中某一個分支,右鍵選擇Delete或Merge進行分支的刪除或合並。
當然,master分支不能刪除。
![]()
|