1. 程式人生 > 其它 >git的簡單介紹和使用

git的簡單介紹和使用

1 git配置 

   Git有一個工具被稱為git config,它允許你獲得和設定配置變數;這些變數可以控制Git的外觀和操作的各個方面。這些變數可以被儲存在三個不同的位置: 

    1./etc/gitconfig 檔案:包含了適用於系統所有使用者和所有庫的值。如果你傳遞引數選項’--system’ 給 git config,它將明確的讀和寫這個檔案。 

    2.~/.gitconfig 檔案 :具體到你的使用者。你可以通過傳遞--global 選項使Git 讀或寫這個特定的檔案。

    3.位於git目錄的config檔案 (也就是 .git/config) :無論你當前在用的庫是什麼,特定指向該單一的庫。每個級別重寫前一個級別的值。

      因此,在.git/config中的值覆蓋了在/etc/gitconfig中的同一個值

 

  1 檢視git的配置

    git --config --gloable --list   //檢視當前使用者的全域性的git配置資訊

    git --config --local --list       //檢視當前倉庫的git的配置資訊

 

  2 配置git的資訊

    git config --gloable user.name "git的使用者名稱"

    git config --gloable user.emain "使用者的email"

    當新增完成之後,在linux的家目錄中會產生一個 .gitconfig檔案,這個檔案中儲存的就是git的資訊

    重申一遍,你只需要做一次這個設定。如果你傳遞了 --global 選項,因為Git將總是會使用該資訊來處理你在系統中所做的一切操作。

    如果你希望在一個特定的專案中使用不同的名稱或e-mail地址,你可以在該專案中執行該命令而不要--global選項

  3 git的常用操作(非常重要)

    3.1 初始化  git init   --------->產生一個 .git的檔案,這個檔案會記錄你的所有的操作和變更

    3.2  git status   檢視現在所有的狀態

      若是檔案為紅色,表示沒有進行提交,

      若是為綠色,表示已經commit過了的檔案

    3.3 git add 新增到暫存區

      git add + 檔名  

      git add * / .   將所有的修改的檔案加入到暫存區中

    3.4 git commit -m “提交的資訊”

    3.5 git log  可以檢視詳細的提交資訊

      注意與git status的比較  git status 就是檢視現在所有的檔案的狀態

      git log 是檢視所有的檔案的提交資訊,提交了哪些版本之類的

    3.6 添加了一個檔案之後,感覺不應該新增的,那麼我們可以使用git reset來改變檔案的狀態

      git reset + 檔名即可

      其實就是改變檔案的顏色,綠色--------->紅色

    3.7 進行回退 reset

      就是假如提交了三次,但是感覺第三次不好,想回退到第二次 

      使用git log 可以看到所有的提交記錄,在記錄中可以看到hash碼,來進行回退

      git reset <commitID>

    3.8 但是回退之後,又後悔了,這個時候,我們可以使用

      git reflog 來檢視所有的提交,

      之後使用git reset + 《commit ID》來進行改變即可

   4 分支操作

      其實切換的分支就類似於火影中的影分身,基本上和本體之間沒什麼關係了

      1 檢視所有的分支  

        git branch -a

      2 建立並切換分支

        git checkout -b <name> <template>

        從template複製一個名為name的分支

 

    5 分支的變更  merge

      就是將原來分支的內容合併到當前的分支

      git merge + 分支名  

      5.1 場景:

        zhangsan,lisi兩個人從一個分支下面切換然後進行分支的開發,但是開發完成之後,主管將分支進行合併(這時候,基本一定會發生衝突的,其實在merge的時候,最重要的就是解決衝突)

      git merge zhangsan  ----------------------->基本不會發生衝突

      git merge lisi      ------------------------->基本一定會有衝突

      我們直接進行修改衝突,手動修改 ------------>之後進行 add  commit

      在git merge lisi --------------->就基本完成了這次的衝突解決操作

 

    6 rebase 變基操作

      就是列舉所有的commit操作,然後依次進行變基操作,就是可以修改base

      rebase 就是重新排列base,而base就是commit

      git rebase + branch ------第一次

      解決完衝突之後以後都是 

      git  add 

      git rebase --continue   / --skip