【進階之路】Redis基礎知識兩篇就滿足(一)
阿新 • • 發佈:2020-11-02
- Git的提交模式
原生代碼-->待提交列表-->本地倉庫-->遠端倉庫
- Git的三種狀態
modified --> staged --> committed
-
建立倉庫
- 本地已有倉庫
git init //進入到本地倉庫目錄初始化 # 或者 git init 本地倉庫目錄名稱
- 本地沒有倉庫需要clone遠端倉庫
git clone [url] // 克隆專案 # 或者 git clone [url] [目錄名] // 克隆專案到一個叫demo的自定義資料夾
- 本地已有倉庫
-
檢視任意時刻狀態命令
git status
-
分支操作
git branch //檢視分支列表 git branch 分支名稱 //建立分支 git checkout 分支名稱 //切換分支 【git branch 分支名稱 + git checkout 分支名稱】 等價於 【git checkout -b [分支名]】 //建立分支同時切換到該分支 git branch -d [分支名] // 刪除本地分支
- 合併分支
# 合併分支(切換到目標分支執行,以下分支名為源分支) # 如果發生衝突手動解決衝突程式碼後再提交即可 # 每次提交程式碼前先pull後push可以有效的程式碼在遠端倉庫衝突,這種做法有點像棄車保帥的方式,車為本地倉庫,而帥則為遠端倉庫 git merge [分支名]
-
回滾撤銷
- 未使用git add時
git checkout -- 檔名稱 #放棄單個檔案修改 git checkout . # 放棄所有檔案修改 git checkout COMMITID #可以切換到某個歷史版本所在的分支上 # 注意:不要和切換分支命令混淆
- 已經使用了git add新增到了待提交列表
git reset HEAD^ # 放棄所有檔案的提交 git reset HEAD 檔名稱 # 放棄某個檔案的提交
- 已經使用git commit提交到了本地倉庫
git reset --hard HEAD^ # 回退到最新一次提交 git reset HEAD^ # 此時程式碼保留,回到git add之前 git revert COMMITID # 撤銷指定的版本,撤銷也會作為一次提交進行儲存
- 已經使用git push提交到了遠端倉庫
git reset --hard COMMITID # 刪除指定的COMMITID
- git revert和git reset區別
git revert是用一次新的commit來回滾之前的commit,此次提交之前的commit都會被保留 git reset是回到某次提交,提交及之前的commit都會被保留,但是此COMMITID之後的修改都會被刪除
- 未使用git add時
-
提交到待提交列表
git add 檔名稱 # 指定具體檔案 git add . # 指定當前所有檔案
-
提交到本地倉庫
git commit -m '本次修改記錄備註資訊' git add + git commit # 等價於 git -am '備註修改資訊'
-
提交到遠端倉庫
git push origin(遠端倉庫別名) master(分支名稱)
-
新增遠端倉庫地址
git remote add 遠端倉庫別名 遠端倉庫地址
-
顯示遠端地址列表
git remote
-
顯示遠端地址詳細資訊
git remote show 遠端倉庫別名
-
檢視提交日誌
git log # 檢視當前分支歷史提交記錄 git log --oneline 等價於 git log git log -p 檔名稱 # 可檢視該檔案以前每一次push的修改內容 git log --all # 檢視所有分支的commit歷史 git log --oneline --all # 檢視所有提交資訊,並顯示提交資訊的第一句話 git log --all --oneline --graph # 檢視所有分支圖形化的commit歷史(oneline 一條提交資訊用一行展示)
-
檢視詳細日誌(改動的內容)
git show COMMITID
-
新增全域性使用者名稱配置
git config --global user.name 使用者名稱
-
新增全域性email配置
git config --global user.email email地址
-
檢視全域性配置
git config -l
-
刪除本地檔案
git rm 檔名稱 或者 刪除磁碟檔案然後在add,commit
-
檢視所有本地檔案的改動
git diff
-
編寫.gitignore忽略檔案規則
忽略作業系統自動生成的檔案,比如縮圖等;
忽略編譯生成的中間檔案、可執行檔案等,也就是如果一個檔案是通過另一個檔案自動生成的,那自動生成的檔案就沒必要放進版本庫,比如Java編譯產生的.class檔案;
忽略你自己的帶有敏感資訊的配置檔案,比如存放口令的配置檔案。
-
去掉每次都輸入git賬號密碼
git config --global credential.helper store
-
為某個版本標記tag(tag標籤預設是不會被同步或被合併到其他節點的)
git tag -a [標籤名] -m "[備註]" # 新增標籤(在commit之後使用) git tag -a [標籤名] -m "[備註]" [結點id] # 給指定結點新增標籤 git tag # 列出所有標籤 git show [標籤名] # 檢視某個標籤的詳細資訊 git checkout [標籤名] # 回溯到標籤所在的結點 git push origin --tags # 將本地的tags全部同步到遠端
-
拉取遠端倉庫程式碼和提交到遠端倉庫
- 每次提交或拉取的時候最好要指定對應的目標分支
git pull origin [dev/master] git push origin [dev/master]