git學習小結
阿新 • • 發佈:2019-02-01
標簽 git push efs pre 所有 ssh key github bre fast
版本控制工具:
集中式:
- CVS
- SVN 集大成者
分布式:git
創始人:inux Towards 2005年
工具:
- 最好使用linux(oh-my-zsh)
- gitbash -> cygwin
- git service :gitolite
工作區 --> 暫存區 --> 服務器
基本命令
#當前倉庫配置文件路徑:.git/config #當前用戶配置文件路徑:當前用戶主目錄下隱藏的 .gitconfig #配置全局用戶名、郵箱, global是作用於當前用戶的,不加則只作用於當前倉庫, git config --global user.name "mbq" git config --global user.email "[email protected]" #配置全局顯示顏色 git config --global color.ui tru #為命令配置別名alias.<別名> git config --global alias.st status #配置全局日誌輸出樣式別名 git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit" #初始化git倉庫 git init #添加文件到版本庫 git add <file> #添加當前目錄下的所有文件 git add . #提交版本 git commit -m "提交描述" #查看倉庫狀態 git status #查看git版本區別 git diff #刪除文件 git rm <file> #查看提交歷史紀錄,倒序排列,數字表示查看最後幾次提交歷史 git log [1] #簡化為一行展示 git log --pretty=oneline #查看自己的歷史操作(可以回退到這些版本) git reflog #回退到上一個版本,也可使用HEAD~100 git reset --hard HEAD^ <file> #回退到指定版本號,--和hard間沒有空格 git reset --hard 116f748 --soft 表示仍然保留當前工作區的更改 #撤銷工作區的更改(還未進行 add 操作) git checkout -- readme.txt git checkout [commit-number] --readme.txt 將此文件退到指定版本 #創建並切換分支dev git checkout -b dev #相當於以下兩條命令 git branch dev git checkout dev (切換到之前的版本則會進入到一個遊離分支狀態(分離的頭指針),git merge 可以合並回來) #查看當前分支 git branch #合並分支(Fast Forward) git merge dev #刪除分支 git branch -d dev #以普通模式合並分支,能從歷史中看出來,而fast forward合並方式看不出來 git merge --no-ff -m "merge with noff" dev #圖形化展示分支及合並情況 git log --graph --pretty=oneline --abbrev-commit #儲藏當前工作空間 git stash #查看儲存的工作空間 git stash list #恢復並刪除儲存的工作空間 git stash pop #相當於以下兩條命令 git stash apply git stash drop #創建SSH Key ssh-keygen -t rsa -C "[email protected]" #查看遠程倉庫信息 git remote -v #連接到遠程倉庫 git remote add origin [email protected]:mabaoqing/learngit.git #克隆倉庫 git clone [email protected]:mabaoqing/learngit.git #從遠程獲取最新倉庫 git pull #推送到遠程倉庫,-u只在第一次推送時使用,將倉庫推送並關聯兩端master分支 git push -u origin master #創建遠程分支到本地 git checkout -b dev origin/dev #將本地dev分支和遠程分支進行關聯 git branch --set-upstream-to=origin/dev dev #為某次提交打標簽,確定一個版本 git tag v1.0 [版本號] # 創建帶有說明的標簽 git tag -a v1.0 -m 'version 1.0 releasd' [版本號] #查看標簽狀態 git show <tagname> # 刪除標簽 git tag -d <tagname> # 推送標簽到遠程 git push origin <tagname> # 推送多個標簽 git push origin --tags # 刪除遠端標簽 git tag -d <tagname> git push origin :refs/tags/<tagname> #創建.gitignore文件配置需要忽略的文件,在編輯器中另存為才行,不能直接創建 #強制添加忽略的文件 git add -f <file> #檢查.gitignore文件中的配置規則與文件匹配 git check-ignore -v <file>
git學習小結