根據廖雪峯的git教程整理的命令集合,以供學習使用~~~
git config --global user.name "IceyCity" git config --global user.email "120174xxx@cug.edu.cn"
初始化git倉庫:git init
查看文件修改內容:git diff file
查看歷史提交日誌:git log
查看命令歷史:git reflog
git
git reset --hard HEAD^
回到上一個版本 git reset --hard 版本號
回到指定版本github
git add
提交到暫存區 git commit
提交到當前分支 git checkout -- file
撤銷你修改的內容 git reset HEAD file
把添加到暫存區的修改撤回app
git rm file
-> git commit -m ""
git checkout -- file
恢復建立密鑰:ssh-keygen -t rsa -C "120174xxx@cug.edu.cn"
id_rsa.pub
ssh
將本地倉庫與遠程倉庫關聯,並推送本地倉庫內容:學習
git remote add origin git@github.com:IceyCity/本地倉庫名.git git push -u origin master // 推送本地內容,並關聯遠程分支
master
指向當前提交,HEAD
指向當前分支。spa
git switch -c dev // 建立並切換分支 git merge dev // 合併分支 git branch -d dev // 刪除dev分支
commit
以後合併,會發生衝突,需手動解決。git log --graph
命令能夠看到分支合併圖。--no-ff
參數,在合併分支的時候,不採用快速合併的方式。git merge --no-ff -m "merge with no-ff" dev
日誌
git stash // 將所作的工做內容先隱藏 git stash list // 查看有幾個stash git stash apply // 恢復工做內容不刪除stash git stash pop // 恢復工做內容並刪除stash git stash apply stash@{0} // 恢復指定的stash
git cherry-pick 版本號
能夠把別的分支的提交複製到當前分支。git branch -D <branch>
強行刪除。git remote -v
git push origin master/dev
git checkout -b dev origin/dev
你的小夥伴已經向origin/dev
分支推送了他的提交,而碰巧你也對一樣的文件做了修改,並試圖推送,推送失敗,提示git pull
,然而也失敗,緣由是:
沒有指定本地dev分支與遠程origin/dev分支的連接:git branch --set-upstream-to=origin/dev dev
code
git rebase
操做能夠把本地未push的分叉提交歷史整理成直線blog
打新標籤:git tag <name>
查看全部標籤:git tag
給歷史提交打標籤:git tag <tagname> <commmit id>
查看標籤信息:git show <tagname>
能夠指定標籤信息:git tag -a <tagname> -m "blablabla..."
刪除標籤:git tag -d <tagname>
推送標籤到遠程:git push origin <tagname>
推送全部標籤:git push origin --tags
教程
刪除遠程標籤:
先刪本地:git tag -d <tagname>
在刪遠程:git push origin :refs/tags/<tagname>