1、安裝git 配置git
安裝完成後配置 $ git config --global user.name "Your Name" $ git config --global user.email "email@example.com"
git config --list 查看配置
git config -e 編輯配置
git config -e --global 修改全局配置
2、初始化倉庫緩存
git init
注:git init 初始化一個倉庫 出現 .git
若是沒有能夠 ls -ah
Alt 切換 > 工具 》 文件夾選項 查看 顯示和隱藏文件和文件夾
添加文件或文件夾到暫存區
3、添加文件或文件夾到暫存區app
git add [file1] [file2]...
git add [dir文件夾]
git add . 或 git add * 提交所有
4、代碼提交到倉庫區工具
git commit -m "說明信息"
git commit file1 file2 ... -m "說明信息"
git commit --amend -m "my commit"
5、查看spa
git status
git log
git relog
6、撤回code
(1)工做區撤回
git checkout .
git checkout file_name
(2)暫存區撤回
git reset HEAD [file] 重置緩存區與上次commit保持一致;但工做區不變; git reset --hard 工做區和緩存區都與上次commit一致
3. git log git reset --hard id 能夠切換 commit的不一樣版本
****假定我修改了文件,還提交到了緩存區,沒有commit 這時候 git checkout 只能又回到最近的一次add 因此用git checkout -- 是回不到add之前的 要用 git reset HEAD test.txt git reset命令既能夠回退版本,也能夠把暫存區的修改回退到工做區。當咱們用HEAD時,表示最新的版本 場景1:當你改亂了工做區某個文件的內容,想直接丟棄工做區的修改時,用命令git checkout -- file。 場景2:當你不但改亂了工做區某個文件的內容,還添加到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset HEAD file,就回到了場景1,第二步按場景1操做。 場景3:已經提交了不合適的修改到版本庫時,想要撤銷本次提交,參考版本回退一節,不過前提是沒有推送到遠程庫。 如何版本回退 (1)git log 查看 commit 的版本(git log --pretty=oneline) (2)每提交一個新版本,實際上git都會把它串成一條時間線 (3)git中用HEAD 表示當前版本,HEAD^ 表示上一個版本 HEAD^^表示上上個版本 前面太多版本的化,用HEAD~100 (4) git reset --hard HEAD^ git reset --hard 3628164 這樣就內容就變成 這個版本的commit內容 Git reflog HEAD指向的版本就是當前版本,所以,Git容許咱們在版本的歷史之間穿梭,使用命令 git reset --hard commit id 穿梭前,用git log能夠查看提交歷史,以便肯定要回退到哪一個版本。 要重返將來,用git reflog查看命令歷史,以便肯定要回到將來的哪一個版本。
8、建立分支和撤換分支blog
查看分支 git branch git branch -a
建立分支
git checkout -b dev 新建並切換分支
git checkout dev 切換分支
刪除分支
//不會覆蓋已經存在的分支 重命名分支:git branch -m branch_name branch_new_name //會覆蓋已經存在的分支 重命名分支:git branch -M branch_name branch_new_name 刪除分支:git branch -d branch_name 強制刪除分支: git branch -D branch_name 刪除遠程分支: git push origin --delete branch_name
合併分支
git merge dev
git merge dev --no-ff -m "msg"
9、暫存開發
總的來講,git stash命令的做用就是將目前還不想提交的可是已經修改的內容進行保存至堆棧中,後續能夠在某個分支上恢復出堆棧中的內容。這也就是說,stash中的內容不單單能夠恢復到原先開發的分支,也能夠恢復到其餘任意指定的分支上。git stash做用的範圍包括工做區和暫存區中的內容,也就是說沒有提交it
git stash
git stash list
git stash pop
git stash apply
將堆棧中的內容應用到當前目錄,不一樣於git stash pop,該命令不會將內容從堆棧中刪除,也就說該命令可以將堆棧的內容屢次應用到工做目錄中,適應於多個分支的狀況。
10、標籤class
git tag 列出標籤 git tag tag_name -m 'tag message' 打標籤
git show tag_name
git tag -d tag_name 刪除標籤
git push origin tag_name
git push origin --tag 推送所喲標籤到遠程倉庫
git push origin :refs/tags/tag_name 從遠程倉庫刪除標籤
11、免密碼
git config –global credential.helper storelf 配置git config --global core.autocrlf false