標籤:repository git github
Git是一款免費、開源的分布式版本控制系統,用于敏捷高效地處理任何或小或大的項目.
分布式和集中式(eg:svn)的最大區別在於開發人員可以本地提交。每個開發人員機器上都有一個伺服器的資料庫。
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/49/BD/wKiom1QZlZ6SxKjTAAIUOyJsQ2M679.jpg" title="1.jpg" alt="wKiom1QZlZ6SxKjTAAIUOyJsQ2M679.jpg" />
特點就是本地提交這一步,這樣就使每個使用者都是git伺服器。
Git的功能特性:
從一般開發人員的角度來看,git有以下功能:
1:從伺服器上複製資料庫(包括代碼和版本資訊)到單機上。
2:在自己的機器上建立分支,修改代碼。
3:在單機上自己建立的分支上提交代碼。
4:在單機上合并分支。
5:建立一個分支,把伺服器上最新版的代碼fetch下來,然後跟自己的主分支合并。
6:產生補丁(patch),把補丁發送給主開發人員。
7:看主開發人員的反饋,如果主開發人員發現兩個一般開發人員之間有衝突(他們之間可以合作解決的衝突),就會要求他們先解決衝突,然後再由其中一個人提交。如果主開發人員可以自己解決,或者沒有衝突,就通過。
8:一般開發人員之間解決衝突的方法,開發人員之間可以使用pull 命令解決衝突,解決完衝突之後再向主開發人員提交補丁。
git 結果層次圖如下:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/49/BD/wKiom1QZlWGyPTGxAADqrDRk-Xk080.jpg" title="g.jpg" alt="wKiom1QZlWGyPTGxAADqrDRk-Xk080.jpg" />
下面先示範個例子;
先下載git;下載git
安裝後,右鍵GitBash;這裡以github為伺服器,需要先去申請一個帳號;
1、右鍵GitBash介面如下:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/49/B6/wKioL1QZTpTy00HPAACgWmEIpO0337.jpg" title="1.jpg" alt="wKioL1QZTpTy00HPAACgWmEIpO0337.jpg" />
2、設定全域資訊,個人的使用者名稱及郵件地址
[email protected] /D/User/leo/Desktop (master)$ git config --global user.name "lansgg" #使用者名稱改成你自己的[email protected] /D/User/leo/Desktop (master)$ git config --global user.email "[email protected]" #郵件地址也是
3、將github伺服器上My Codeclone下來;My Code項目為test,clone地址見紅線,我的項目裡面本來就有兩個檔案
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/49/B4/wKiom1QZUEzBbxANAAF2hmkXLhk880.jpg" title="1.jpg" alt="wKiom1QZUEzBbxANAAF2hmkXLhk880.jpg" />
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/49/B4/wKiom1QZUKexYwr1AAFMDYB_evA090.jpg" title="1.jpg" alt="wKiom1QZUKexYwr1AAFMDYB_evA090.jpg" />
4、進入該test目錄,本目錄已經是git repository (本地倉庫);
[email protected] /D/User/leo/Desktop (master)$ cd test/[email protected] /D/User/leo/Desktop/test (master)$ lsREADME hello.rb
可以看到我線上倉庫的兩個檔案
5、隨便建立一個檔案
[email protected] /D/User/leo/Desktop/test (master)$ touch test.file[email protected] /D/User/leo/Desktop/test (master)$ echo "this is a test file " > test.file
6、將檔案添加到上傳隊列;加入staging area
$ git add test.file
7、緩衝提交,引號中的是對本次提交的描述,必須填寫,不可為空;將staging area 提交到repository
$ git commit -m "test commit" test.file
8、將代碼push到線上repository
$ git remote add origin https://github.com/lansgg/test.git #此為我們剛才clone的url $ git push origin master #會需要你輸入你的github帳號和密碼
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/49/B5/wKiom1QZVejiT3DFAAHfrL1bwuk037.jpg" title="1.jpg" alt="wKiom1QZVejiT3DFAAHfrL1bwuk037.jpg" />
9、現在看看線上倉庫
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/49/B5/wKiom1QZVkuCJYmIAAEwoFghcoc602.jpg" title="1.jpg" alt="wKiom1QZVkuCJYmIAAEwoFghcoc602.jpg" />
同步成功;
本文出自 “大風” 部落格,請務必保留此出處http://lansgg.blog.51cto.com/5675165/1554530
git初識試用樣本