Git/Github的使用以及與Eclipse的整合


Git簡介

      Git是一個免費的、分布式的版本控制工具,或是一個強調了速度快的源代碼管理工具。每一個Git的工作目錄都是一個完全獨立的代碼庫,並擁有完整的歷史記錄和版本追蹤能力,不依賴於網絡和中心服務器。

       Git 在管理項目時,在本地會有三個工作區域:Git 的本地數據目錄,工作目錄以及暫存區域。如下圖所示:

clip_image001

因此對於任何一個文件,在 Git 內都只有三種狀態:已提交(committed),已修改(modified)和已暫存(staged)。

安裝及配置Git

終端運行:

sudo apt-get install git git-core

首先去https://github.com/ 注冊一個賬戶,當然是free and opensource的用戶了。

根目錄下創建git目錄。

mkdir ~/git

初始化兩個參數:

git config --global user.name = "username"

git config --global user.email = "***@*****"

因為本機是通過ssh鏈接github的,所以先創建ssh密鑰。

看一下本機是否已經有ssh的密鑰。

cd ~/.ssh

提示沒有文件或者目錄的話說明本機還沒有創建過,繼續執行

ssh-keygen -t rsa -C "your_email@example.com"

一路Enter,在根目錄下面就會生產.ssh文件夾(隱藏,查看隱藏文件夾的話按Ctrl+H),里面有生產的密鑰文件。

用gedit打開~/.ssh/github.pub,將文件內容拷貝到剪切板,(最好用gedit,其他的工具可能出現換行空格)

回到github的頁面,點擊Acount setting,

clip_image002

點SSH Keys,

clip_image003

title隨便取,key里面把之前復制的公鑰的內容粘進去

clip_image004

點Add。

clip_image005

終端測試一下:

ssh -T git@github.com

成功連接的結果就想這樣:

clip_image007

如果出現

Agent admitted failure to sign using the key.

Permission denied (publickey).

執行

ssh-add

再進行連接就沒問題了。

使用git

最簡單的一種使用方式就是從github上下載別人的開源項目。

打開一個開源工程的頁面

clip_image009

直接點擊左上角的zip包就可以下載工程了。

更方便一些的做法是在終端運行命令來下載源碼。

終端運行:

git clone https://github.com/SimonVT/android-menudrawer.git

會自動下載整個工程到當前的目錄。

接下來要實現的是分享自己的項目到github上,並進行版本控制。

首先在github上面創建工程。

在個人主頁上點擊Responsitories選項卡的New

clip_image010

填寫一些信息,點Create respository

clip_image012

github上的項目就創建好了。

接下來從服務器下載工程及配置文件到本地。

終端運行:

mkdir ~/git/repos

cd ~/git/repos

git clone git@github.com:***/***.git

執行完畢后,repos文件夾下就拷貝好了github上的項目。

本地進行項目編輯,比如添加一個文件之后,

可以通過下面的命令來更新項目了。

git add . //往暫存區域添加已添加和修改的文件,不處理刪除的文件

git status //比較本地數據目錄與暫存區域的變化

git commit -m "commit directions" //提到代碼到本地數據目錄,並添加提交說明

有可能你和其他人改的是同一個文件,那么沖突的情況是在所難免的,那么在提交之后再獲取一下代碼,就會提示代碼沖突的文件,我們需要做的就是處理這些沖突,並再次提交:

git pull //更新代碼

根據提示修改沖突文件中的代碼

git add .

git commit -m "commit directions"

當做完以上的步驟的時候,你需要做的是把本地數據目錄的版本庫的數據同步到GitHub服務器上去

git push

提交完成之后刷新github的頁面,發現文件已經跟新好了。

clip_image014

Eclipse中整合git

首先安裝git插件,在Eclispe中,

Help->Install New Software.

輸入地址

http://download.eclipse.org/egit/updates

接着一路下一步,插件就安裝好了。

在Eclipse中創建一個工程。

然后在工程上右擊->Team->Share project->git->next.

clip_image015

選擇Use or create repository in parent folder of project,如下圖,點finish。

clip_image016

執行完成之后項目文件夾下就會創建好一個.git的文件夾,倉庫就創建好了。

由於項目中的有一些文件沒有必要上傳,比如bin文件夾,需要在項目中設置好。

展開對應的項目,有小箭頭的表示需要上傳到服務器的目錄,在不想要上傳的目錄上右擊,Team->Ignoe,該目錄就會被忽略了。

下面來commit代碼到本機一下。

項目上右擊Team->commit。

clip_image017

選中要commit的文件,點commit,完成之后,代碼就上傳到本地的服務器了。

接下來把代碼上傳到github的服務器。

命令行中進入到項目的文件夾,運行

git remote add origin https://github.com/SilangQuan/LinearCompiler.git

再執行

git push -f

成功執行后就像這樣:

clip_image018

查看github的項目主頁,發現文件已經上傳好。

clip_image020

之后在Eclipse中修改好項目代碼之后,commit之后直接在項目上右擊Team->push就可以進行代碼提交。

上傳到github上之后,團隊中另外的成員可以通過Eclipse->File->Import->Project from Git->URI來提取工程。

在團隊開發中,通常在新的一天的開始工作之前,把最新的代碼fecth下來。

直接在項目想右擊->Team->fetch

再執行->Team->Merge.

服務器上的新文件就會添加進來了。

參考:

來自:http://www.open-open.com/lib/view/open1369361562766.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM