學習git版本管理工具

因爲換了份工做,以前一直用SVN,如今須要用git,抽空學習一下。參照博客(https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000)在個人樹莓派上練習一遍。git的由來就不重複了,分佈式和集中的比較也不贅述。git

一、安裝

sudo apt-get install gitsql

二、建立版本庫

git init分佈式

三、添加文件與提交

git add filename學習

git commit -m "xxxx"spa

四、查看log記錄

git log或者git log --pretty=oneline3d

五、回退版本

在git中,HEAD表示當前版本,上一版本表示HEAD^,上上版本表示HEAD^^,上100個版本表示HEAD~100指針

回退到上一個版本code

也能夠爲
git reset --hard HEAD^
git reset --hard 3628164(數字表示commit id)

六、查看歷史命令

git reflogserver

七、git兩個重要的概念--工做區和暫存區

工做區:就是咱們平時操做的目錄blog

工做區有一個隱藏的文件夾叫.git,這個不算工做區,而是Git的版本庫。

版本庫存有不少重要的東西,其中最重要的就是稱爲stage(或者叫index)的暫存區,還有Git爲咱們自動建立的第一個分支master,以及指向master的一個指針叫HEAD

git add 的動做就是把工做區的文件添加到暫存區(stage),git commit 就是把暫存區的全部文件一次性提交到分支。

八、撤銷修改

git checkout -- readme.txt 只會撤銷工做區的修改,在已經add到暫存區的文件不會被撤銷。

若是修改的東西已經被git add 到暫存區,如何回退呢?

用命令git reset HEAD file能夠把暫存區的修改撤銷掉(unstage),從新放回工做區。

小結

場景1:當你改亂了工做區某個文件的內容,想直接丟棄工做區的修改時,用命令git checkout -- file

場景2:當你不但改亂了工做區某個文件的內容,還添加到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset HEAD file,就回到了場景1,第二步按場景1操做。

場景3:已經提交了不合適的修改到版本庫時,想要撤銷本次提交,參考回退版本一節,不過前提是沒有推送到遠程庫。

九、刪除一個版本文件

git rm

git commit 

 十、從遠程倉庫下載

git clone 

十一、添加到遠程倉庫

要關聯一個遠程庫,使用命令git remote add origin git@server-name:path/repo-name.git

關聯後,使用命令git push -u origin master第一次推送master分支的全部內容;

此後,每次本地提交後,只要有必要,就能夠使用命令git push origin master推送最新修改;

相關文章
相關標籤/搜索