在 集中式的版本管理中把版本庫放在了一箇中央服務器上,當你們要配合完成工做時,須要聯網把最新版本庫下載下來, 等工做完成了在提交上去。若是中央服務器存放的版本庫出現問題,會致使你們的工做都沒有辦法進行。
在分佈式的版本管理中你們先從網上把版本庫克隆或者下載下來,你們開始工做時每個人的電腦就至關於一個版本庫,開 發時都在本身的本地的版本庫進行開發,無網絡也不影響開發,使得開發更加方便便捷。
git有三個區:工做區,暫存區,歷史記錄去.
工做區:平時修改代碼,開發代碼的工做區;
暫存區:git add 提交文件存放的區域;
歷史記錄去:git commit -m '提交信息描述 ’ 記錄提交歷史記錄的地方,-m存在就要寫提交描述信息,描述信息至關於版本號的意思;git
經常使用指令
git提交的步驟
git init建立並初始化一個空的倉庫
git add .把工做區 的全部文件提交到暫存區(git add 文件名 能夠提交單個或者多個文件,文件名之間空格)
git commit -m ‘版本號’
git remote add origin 遠程倉庫的url 進行對遠程倉庫的對接,第一次對接後後面就能夠省略這一步了
git push -u origin master 將文件推送到遠程倉庫
若是這一步出現錯誤,通常使用 git pull origin master 指令後再次提交就沒有問題
到此就提交完成了服務器
git的分支
git的分支功能能讓咱們更好的開發,
當你在分支上工做時是不會影響你在主分支(master)的工做,除非你把分支與主分支合併了,纔會改變master
git branch 分支名 建立分支
git checkout 分支名 切換分支
git checkout -b 分支名 建立而且切換分支
git branch 查看分支 前面帶有*的就是你所處的當前分支
合併分支:
git checkout master
git merge 分支名
合併分支後刪除分支:
git branch -d 分支名網絡
git的撤銷指令
git checkout – 文件名 撤銷的工做區的修改
git reset --hard HEAD^ 回退到上個版本,HEAD^^回退到上上個版本,一次類推,還能夠HEAD~1回退上一個版本 以此類推
git reset --hard 版本號分佈式
git的日誌查看
git log 能夠顯示全部的提交信息svn
git reflog能夠查看全部分支的全部操做,git 的回退和刪除操做也有記錄,git log不會記錄刪除的個操做,git reflog就至關於後悔藥的做用,當刪除文件後,再須要知道刪除了什麼文件就可使用git reflog學習
git diff是對比文件的做用,對比文件發生了什麼變化
git diff HEAD~ 1 HEAD~3 xx文件名 對比當前版本和上兩個版本的學習文件名內容的區別url
我依舊會努力前行日誌