Git簡介
Git是一個免費的、分佈式的版本控制工具,或是一個強調了速度快的源代碼管理工具。每個Git的工做目錄都是一個徹底獨立的代碼庫,並擁有完整的歷史記錄和版本追蹤能力,不依賴於網絡和中心服務器。 html
Git 在管理項目時,在本地會有三個工做區域:Git 的本地數據目錄,工做目錄以及暫存區域。以下圖所示: java
所以對於任何一個文件,在 Git 內都只有三種狀態:已提交(committed),已修改(modified)和已暫存(staged)。 android
安裝及配置Git
終端運行:
sudo apt-get install git git-core
首先去https://github.com/ 註冊一個帳戶,固然是free and opensource的用戶了。 git
根目錄下建立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,
點
SSH Keys,
title隨便取,key裏面把以前複製的公鑰的內容粘進去
點
Add。
終端測試一下:
ssh -T git@github.com
成功鏈接的結果就想這樣:
若是出現
Agent admitted failure to sign using the key.
Permission denied (publickey).
執行
使用git
最簡單的一種使用方式就是從github上下載別人的開源項目。
打開一個開源工程的頁面
直接點擊左上角的zip包就能夠下載工程了。
更方便一些的作法是在終端運行命令來下載源碼。
終端運行:
git clone https://github.com/SimonVT/android-menudrawer.git
會自動下載整個工程到當前的目錄。
接下來要實現的是分享本身的項目到github上,並進行版本控制。
首先在github上面建立工程。
在我的主頁上點擊Responsitories選項卡的New
填寫一些信息,點Create respository
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的頁面,發現文件已經跟新好了。
在Eclipse中整合git
首先安裝git插件,在Eclispe中,
Help->Install New Software.
輸入地址
http://download.eclipse.org/egit/updates
接着一路下一步,插件就安裝好了。
在Eclipse中建立一個工程。
而後在工程上右擊->Team->Share project->git->next.
選擇Use or create repository in parent folder of project,以下圖,點finish。
執行完成以後項目文件夾下就會建立好一個.git的文件夾,倉庫就建立好了。
因爲項目中的有一些文件沒有必要上傳,好比bin文件夾,須要在項目中設置好。
展開對應的項目,有小箭頭的表示須要上傳到服務器的目錄,在不想要上傳的目錄上右擊,Team->Ignoe,該目錄就會被忽略了。
下面來commit代碼到本機一下。
項目上右擊Team->commit。
選中要commit的文件,點commit,完成以後,代碼就上傳到本地的服務器了。
接下來把代碼上傳到github的服務器。
命令行中進入到項目的文件夾,運行
git remote add origin https://github.com/SilangQuan/LinearCompiler.git
再執行
成功執行後就像這樣:
查看github的項目主頁,發現文件已經上傳好。
以後在Eclipse中修改好項目代碼以後,commit以後直接在項目上右擊Team->push就能夠進行代碼提交。
上傳到github上以後,團隊中另外的成員能夠經過Eclipse->File->Import->Project from Git->URI來提取工程。
在團隊開發中,一般在新的一天的開始工做以前,把最新的代碼fecth下來。
直接在項目想右擊->Team->fetch
再執行->Team->Merge.
服務器上的新文件就會添加進來了。
參考:
git/github初級運用自如 - http://www.cnblogs.com/fnng/archive/2012/01/07/2315685.html
Git 參考手冊 - http://gitref.cyj.me/zh/index.html
EGit/User Guide - http://wiki.eclipse.org/EGit/User_Guide 來自:http://blog.csdn.net/qp120291570/article/details/8964007