git常用命令

unstage:工作区
staged :暂存区
本地工作目录--暂存区add
暂存区--版本库commit
本级版本库--远程版本库 push
远程版本库--本地版本库 pull
本地版本库有很多个分支--默认是master分支

  • 配置本地仓库用户名和邮箱
    git config --global :给当前计算机设置git config --system :给当前用户设置git config --local :给当前项目git config --local unset user.name:删除配置git config --global user.name "lichong"git config --global user.email "13552168121@163.com"

  • 配置ssh
    在自己的github上找到个人信息的setting配置,SSH and GPG keys在本地执行ssh-keygen -t rsa -C 13552168121@163.com命令生成密钥测试通信ssh -T git@github.com,在.ssh目录下发现konwn_hosts文件

  • 本地项目发送给远程
    先执行git init把项目提交到本地仓库在远程建立git项目new-建立项目-生成https://github.com/MrLi-Chong/gupao-study.git本地项目-远程项目关联git remote add origin git@github.com:MrLi-Chong/gupao-study.git

  • 第一次发布项目
    git add. //文件暂存区git commit -m “注释内容”//暂存区-本地分支(默认master)git push -u origin master //本地分支到远程服务器

  • 第一次下载项目
    git clone git@github.com:MrLi-Chong/gupao-study.git

  • 提交
    git add. //文件暂存区git commit -m "注释" //暂存区-本地分支(默认master)git push origin master //本地分支到远程服务器

  • 更新
    git pull

  • 删除目录
    rm -rf .git删除git目录

  • 查看状态
    git status

  • 暂存区--工作区
    git rm --cachedgit reset head 文件名

  • 查看日志
    git log:查看提交的日志git log -提交的次数git log --pretty= online :查看格式化日志

  • 放弃修改
    文件已经提交,要放弃修改git checkout -- 文件名

  • 查看文件内容
    cat 文件名

  • 删除文件
    git rm 文件名 :已提交的文件删除是在暂存区修改,删除完之后只需要commitrm 文件名:本地删除,需要add和commit放弃删除 git reset head 文件名 然后执行放弃修改命令

  • 重命名
    git mv 原文件名 新文件名

  • 日志重写
    git commit --amend -m "注释" 修改最近一次的注释

  • 忽略文件
    .gitignore通配符*.xxxx,忽略xxxx结尾的文件名!b.xxxx,b文件不忽略dir/ dir目录里面的所有文件都忽略

  • 分支
    查看分支:git branch新建分支:git branch 分支名切换分支:git checkout 分支名删除分支:git branch -d 分支名(不能删除当前分支)创建并且换新分支:git checkout -b 分支名合并分支:git merge 分支名

    1. 如果在分支A中进行了写操作,但此操作局限在工作中进行(没add,commit)。在master中能够看到该操作。如果在分支A中进行了写操作,进行了commti,则master中无法观察到此文件。
    2. 如果在分支A中进行了写操作,但此操作局限在工作中进行(没add,commit)。删除分支A是可以成功的。

git brach -v :查看分支提交记录

  • 版本回退
    回退到上一次commit:git rest--hard HEAD^ ^代表上几次 git rest--hard HEAD~n 回退到上n次git reset --hard id 回退到日志id的地方git reflog :查看所有的日志

  • 版本穿梭
    1.修改后必须提交2.创建分支的好时候 git branch 分支名 sha1(日志版本)

  • 分支重命名
    git branch -m 原分支名 新分支名

    1. 建议(规范):在功能没有开发完毕,不要commit
    2. 规定(必须):在没有commit前,不能切换分支(不在同一个commit阶段,所在的文件内容不相同)

如果还没有将某一个功能开发完毕,就要切换分支,可以先临时保存一份保存现场git stash还原现场:git stash pop(删除原来保存的内容) git stash apply(还原内容,不删除原来保存的内容)查看现场:git stash list删除现场:git stash drop 现场名

  • tag标签
    设置标签:git tag v1.0、git tag -a 标签名 -m “描述”查看标签:git tag、git tag -l ‘aa’模糊查询名包含aa的标签删除标签:git tag -d

  • blame 追责
    查看文件的所有提交至,以及每一行的提交者:git blame 文件名

  • 比较文件差异
    diff a b 比较a,b文件diff 比较的是文件本身git diff 比较的是区中的文件比较对象区和工作区的差异:git diff sha1比较对象区和暂存区的差异:git diff --cached sha1比较最新的 git diff HEAD

posted @ 2020-12-29 20:53  南笙ll  阅读(133)  评论(0)    收藏  举报