git 初體驗

安裝 git

git官網,這裏提供了詳細文檔,《起步》中的1.5節是 git 的安裝方法,它提供了 windows、mac、linux 平臺的安裝方法。css

安裝成功後,打開終端輸入git --version,若是能看到 git 版本,就說明安裝成功了。mac 推薦使用 iTerm2 終端軟件,windows 推薦使用 git bash。html

git 最小配置

在正式使用 git 以前須要作一些配置,稱之爲最小配置,也就是說要將參與項目開發人員的 name 和 email 進行設置。linux

每次的變動,在什麼時間點,是誰作出了變動,那個這個信息是跟着某個變動信息捆綁在一塊兒的。git

單引號裏面的是須要你本身填寫相應的信息,這些信息最好是真實的,方便別人找到你。windows

git config --global user.name 'your_name'
git config --global user.email 'your_email'

這個地方設置了global,那是否是還有別的呢?bash

除了global之外,還能夠設置localsystem學習

git config --local      //只對某個倉庫有效
git config --global     //對全部倉庫有效
git config --system     //對系統全部登陸的用戶有效

咱們在使用 git 時,它會管理咱們的文件系統,不是整個操做系統級別的管理,好比說你在某個地方創建了 git 倉庫,倉庫就至關於一個獨立的項目。spa

若是你設置local的話,你設置的信息,好比user_nameuser_eamil只會對當前倉庫有效,若是你切換到另外一個倉庫時,local的配置就會無效了,操作系統

設置global的話,若是我電腦上有十個倉庫,那麼設置的user_nameuser_email就會對這十個倉庫都有效code

設置system的話,是對系統全部登陸用戶都有效。

在工做中爲了方便,用global最多,system基本不用。

你在作設置以前,想要看下現有配置是什麼樣的,可使用list命令

git config --list --global      //能夠查看相關配置,是否設置成功

建 git 倉庫

在實際的工做中,建倉庫有兩種場景:

  1. 把已有的項目代碼歸入 git 管理
cd 項目代碼所在的文件夾
git init
  1. 新建的項目直接用 git 管理
cd 某文件夾
git init your_project   //會在當前路徑下建立和項目名稱同名的文件夾
cd your_project

咱們如今桌面上建立一個git目錄,後面關於 git 的學習都將會在這個文件夾下。

建立第一個 git 倉庫

git init git_learning 初始化一個新的 git 倉庫,裏面有一個.git的隱藏文件夾,它將是咱們的核心,後面會慢慢講解。

前面講了給當前項目設置config,有三種方式,以前已經設置了global,此次設置一個local,看下最終提交時它會用global綁定的信息,仍是local綁定的信息。

以前globaluser.name設置的是tiantian,如今localuser.name設置的是uccs

當咱們用git commit命令提交後,能夠用git log來查看提交歷史,黃顏色的commit是此次提交的id號,Author顯示的是uccs,這個做者是剛剛給local設置的綁定信息,由此咱們能夠看出若是同時存在globallocal的綁定信息,local的優先級要高。

往倉庫裏添加文件

要進行4次提交,養成 git 的工做習慣

暫存區的做用:

  1. 在工做目錄作的變動首先將它添加的到暫存區;
  2. 你在工做目錄作的變動,假設你有了其餘方案,你不妨把此次的變動先放到暫存區;
  3. 而後在嘗試用另外一套方案,假如第二次的方案尚未第一次好的話,暫存區的方案能夠覆蓋工做區的方案;
  4. 暫存區的內容,是暫時存放,還不是做爲一個正式的提交,可是它已經被 git 管理了,暫存區的內容能夠很容易的被正式提交,若是不合適還能夠回退。

    第一次提交

    1. 建立了一個index.html
    2. 使用git status能夠查看工做目錄和暫存區的狀態。如今的提示是沒有被 git 管理
    3. 使用git add index.htmladd後面能夠添加多個文件或者文件夾
    4. 再次使用git status,它會提示你已經將文件添加到暫存區去了。
    5. git commit -m 'add index.html'做爲第一提交

第二次提交

  1. 咱們給當前頁面加點樣式,建立了一個style.css的文件
  2. 使用git status發現剛剛建立的文件沒有被 git 管理
  3. 使用git add style,將剛建立的文件添加到暫存區
  4. 確認無誤後,使用git commti -m 'add style.css'做爲第二次提交

第三次提交

  1. 過程同第二次提交步驟同樣

第四次提交

  1. 如今須要對第一提交的index.html進行編輯
  2. 編輯後使用git status,發現以前綠色的文件又變成了紅色。
  3. 對修改的文件,可使用git add -u將它添加到暫存區
  4. 確認無誤後,作第四次提交。

git 高效重命名文件

工做中有時會存在文件重命名的,咱們第一反應是,在工做區或者工做目錄裏面完成,而後將它加到暫存區裏去,再用commit的方式去提交

mv readme readme.md
git status      //會提示你要刪除 readme,同時要添加 readme.md。

下圖:

git rm readme
git add readme.md
git status

下圖:最終的狀態 git 知道你是在重命名文件

按照如今已知的方法是這幾個步驟

  1. 將文件重命名
  2. 將重命名後的文件添加到暫存區
  3. 將老文件移除

用 git 的命令該怎麼作呢?

先回到初始的狀態,能夠用git reset --hard,它會將工做區和暫存區以前的操做所有清空,回到初始狀態。此操做比較危險,慎用。

git mv readme readme.md

下圖:一個 git 命令代替上面三個步驟,效果是同樣的

最後提交一下,用 git 提供的命令重命名,不須要再add了。

總結

  1. 最小配置
git config --global user.name 'user_name'
git config --global user.email 'user_email'
  1. 初始化倉庫
git init
  1. 提交
git add xxx
git commit -m ''
  1. 文件重命名
git mv readme readme.md
  1. 回滾
git reset --hard
相關文章
相關標籤/搜索