Git 不單單是個版本控制系統,它也是個內容管理系統(CMS),工做管理系統等。php
區別:html
1. git: 分佈式 svn:集中式git
二、Git 把內容按元數據方式存儲,而 SVN 是按文件:全部的資源控制系統都是把文件的元信息隱藏在一個相似 .svn、.cvs 等的文件夾裏。算法
三、Git 分支和 SVN 的分支不一樣:分支在 SVN 中一點都不特別,其實它就是版本庫中的另一個目錄。vim
四、Git 沒有一個全局的版本號,而 SVN 有:目前爲止這是跟 SVN 相比 Git 缺乏的最大的一個特徵。緩存
五、Git 的內容完整性要優於 SVN:Git 的內容存儲使用的是 SHA-1 哈希算法。這能確保代碼內容的完整性,確保在遇到磁盤故障和網絡問題時下降對版本庫的破壞。網絡
git建立倉庫:分佈式
1.初始化: git initsvn
git init newrepo(在文件夾newrepo中建立倉庫)url
2.克隆:git clone newrepo directory (克隆newrepo(git倉庫) 到新的文件夾 directory(本地目錄))
3.建立文件夾: mkdir runoob(建立文件夾runoob)
cd runoob/(打開文件夾)
4.若是你須要與他人合做一個項目,或者想要複製一個項目,看看代碼,你就能夠克隆那個項目。 執行命令:
git clone [url]
5.添加文件:
http://www.runoob.com/git/git-basic-operations.html
a.touch README (建立README文件)
b. touch hello.php (建立hello.php文件)
c. ls(查看
d. git status -s
git status 以查看在你上次提交以後是否有修改。 加 -s 參數,以得到簡短的結果輸出。
e.git add README hello.php(確保README hello.php 文件建立 且路徑正確 git add 命令將想要快照的內容寫入緩存區)
f. git status -s
g. 修改: vim README
h.git diff
i: git commit 將緩存區內容添加到倉庫中
若是隻是簡單地從工做目錄中手工刪除文件,運行 git status 時就會在 Changes not staged for commit 的提示。
要從 Git 中移除某個文件,就必需要從已跟蹤文件清單中移除,而後提交。能夠用如下命令完成此項工做
git rm <file>
若是刪除以前修改過而且已經放到暫存區域的話,則必需要用強制刪除選項 -f
git rm -f <file>
若是把文件從暫存區域移除,但仍然但願保留在當前工做目錄中,換句話說,僅是從跟蹤清單中刪除,使用 --cached 選項便可
git rm --cached <file>
如咱們刪除 hello.php文件:
$ git rm hello.php rm 'hello.php' $ ls README
不從工做區中刪除文件:
$ git rm --cached README rm 'README' $ ls README
能夠遞歸刪除,即若是後面跟的是一個目錄作爲參數,則會遞歸刪除整個目錄中的全部子目錄和文件:
git rm –r *
進入某個目錄中,執行此語句,會刪除該目錄下的全部文件和子目錄。
git mv 命令用於移動或重命名一個文件、目錄、軟鏈接。
咱們先把剛移除的 README 添加回來:
$ git add README
而後對其重名:
$ git mv README README.md $ ls README.md
http://www.runoob.com/git/git-remote-repo.html
![](http://static.javashuo.com/static/loading.gif)