最后更新於2017年01月24日
一、為什么
為什么不用svn?
svn是一個優秀的代碼和版本管理工具,使用svn只需要搭建好svn中央倉庫,配置本地svn客戶端即可,自從google code關閉服務之后,互聯網上已經沒有非常好的公共svn倉庫,如果是公司內部使用,還可以用上公司內網搭建的svn服務器,但個人就沒那么方便了。
為什么用git?
git和svn同樣作為代碼和版本管理工具,git的理念更先進,而且公共git倉庫github真的好用,眾多優秀的開源項目都放在github
什么是git、github、tortoisegit?
github是目前世界上最大的代碼托管平台,對個人也提供了非常豐富的功能;git客戶端是windows系統下與github倉庫傳輸數據的客戶端工具;tortoisegit是git圖形管理界面,依賴git客戶端,提交時可以清晰看到變更內容
二、怎么用
1、注冊github賬號
github官方網站:https://github.com/,注冊過程:略
2、安裝git客戶端與tortoisegit
git客戶端下載地址:https://www.git-scm.com/
tortoisegit下載地址:https://tortoisegit.org/
雙擊下載的安裝包,默認安裝直到完成。
3、配置git客戶端
git客戶端需要配置ssh建立與github之間的遠程安全連接,安裝完git客戶端之后有如下快捷方式
打開git bash,輸入以下內容,郵箱為github注冊郵箱
ssh-keygen -t rsa -C "573215750@qq.com"
回車,輸入“yes”,再回車,將在“C:\Users\john\.ssh\id_rsa.pub”文件生成ssh密鑰,復制所有內容
登錄github,打開“Settings”
點擊左側“SSH and GPG keys”菜單,然后點擊右側上方“New SSH key”按鈕,“Title”隨意輸入名稱,“Key”處粘貼剛才復制的密鑰,注意最后不要留空格或換行,保存配置
ssh -T git@github.com
第一次需要輸入“yes”然后回車才能看到連接成功的信息,以后就不需要了
4、配置全局信息
配置全局的用戶名、郵箱信息,作為提交人信息
git config --global user.name "ywlaker" git config --global user.email "573215750@qq.com"
5、創建github倉庫
登錄github,創建一個工程,名為“test”,勾選“Initialize this repository with a README”,並選擇一個license,以“Apache License 2.0”為例
創建完“test”倉庫之后,查看該倉庫,只包含兩個文件:“README.md”和“LICENSE”
6、創建eclipse工程
在eclipse下創建工程,名為“test”(名稱任意),在資源管理器中查看項目
在git bash中查看項目(linux下點開頭的文件為隱藏文件,所以只能看到三個文件(夾))
7、同步eclipse工程與github倉庫
github的license與readme文件要同步到eclipse工程,eclipse工程的代碼要同步到github倉庫,並且eclipse自動生成的那些“.settings”、“.project”、“.classpath”還有“target”不需要同步到github倉庫,怎么處理?
7.1、git初始化eclipse工程目錄
在資源管理器中打開“test”工程根目錄,右鍵“Git Create repository here...”
或者,git bash輸入命令
cd /d/eclipse/workspace/test/ git init
7.2、同步github倉庫文件到eclipse工程目錄
git bash輸入命令
git remote add origin git@github.com:ywlaker/test.git git pull origin master
7.3、添加.gitignore
將eclipse自動生成的與代碼無關的文件排除在同步列表之外,git bash切換到工程根目錄,輸入
vi .gitignore
然后按下鍵盤的“i”鍵,輸入
target/ .settings .classpath .project
按下“esc”鍵,再輸入“:wq”保存退出,此時“test”工程根目錄多了一個“.gitignore”文件
因為windows下無法新建以點號開頭的文件,所以只能用上面這種方式。
7.4、同步eclipse工程到github倉庫
在資源管理器中進入“test”工程根目錄,右鍵“Git Commit -> 'master'”
出現和tortoisesvn一樣的提交界面,確定內容后提交即可
這一步是將文件提交到本地git緩存,用命令行也可以,git bash切換至工程更目錄,輸入
git add ./* git commit -m "comment"
最后,將本地緩存同步到github倉庫
git push -u origin master