git基本命令总结


才发现博客园不支持markdown的标记语法,太恶心了,觉得看着不带劲的可以移步至 https://blog.csdn.net/tonyxiaowai/article/details/103531052

配置用户名和邮箱

git config --global user.name '自己的名字'
git config --global user.name '自己的邮箱'

利用命令完成git基本操作

  • 创建仓库

    git init 在要被当仓库的文件夹下执行该命令

  • 添加文件

    git add 文件名
    这一步的作用是将文件添加到暂存区(stage)

  • 提交文件

    git commit -m "提交描述"

  • 查看日志

    git log
    功能为查看日志
    git log --pretty=oneline
    查看日志,以单行显示
    git reflog
    功能为查看历史操作记录,比如回退版本后想要重返“未来”可以查看最新的提交版本

  • 查看git状态

    git status

  • 查看修改内容

    git diff 文件名

  • 版本回退

    git reset --hard head^
    git reset --hard 版本号
    当知道对应的版本号时,可以用这个命令,适用于回退和前往之前的新版本

  • 撤销操作

    git restore 文件名
    新版本git提示用该命令进行撤销
    git checkout -- 文件名
    旧版本用此命令做撤销,新版本也可以用

    如果已经add进暂存区
    git restore --staged 文件名
    新版本git自动提示用该命令
    git reset head 文件名
    此为旧版本git命令,新版本也可以用

  • 删除文件
    git rm -f 文件名

使用分支

  • 查看当前分支

    git branch
  • 创建dev分支并切换过去

    git checkout -b dev
    -b表示创建并切换,相当于一下两条命令
    git branch dev 创建分支
    git checkout dev 切换分支
    注意:上面是老版本的命令,创建分支和撤销都用checkout容易分不清,因此新版本创建分支推荐用switch
    git switch -c dev 创建并切换到dev
    git switch dev 直接切换到已有的dev分支
  • 合并分支

    git merge dev 将dev分支合并到当前分支,合并后会丢失原来分支的信息
    git merge --no-ff -m "merge with no-ff" dev 合并dev到当前分支,--no-ff表示禁用fast forwad,之后查看日志时是可以看到已被删除分支的信息
  • 删除分支

    git branch -d dev
    git branh -D dev 如果dev没有被合并过用大写 -D
  • 查看分支合并情况

    git log --graph --pretty=oneline --abbrev-commit
  • stash的使用(bug分支)

    git stash 保存当前的工作现场
    git stash list 查看所有被保存的工作
    git stash pop 恢复并删除工作现场,等价于git stash apply + git stash drop
    开发环境在dev分支下,bug修复是提交在master中,如何快速合并至dev下:转移至dev分支下,执行下面命令git cherry-pick bug分支的提交版本号

远程仓库(Github)

  • 远程克隆到本地

    git clone 自己的git项目地址
  • 关联

    git remote add origin 自己的git项目地址 将本地仓库与远程仓库关联
  • 拉取远程的更新

    git pull
  • 基本推送

    git push -u origin master
    第一次推送是要加上-u,可以把本地的master和远程的master关联起来,方便以后的推送或者拉取
    git push origin master
    之后推送可以直接用该命令
  • 查看远程仓库信息

    git remote
    git remote -v此命令可显示更详细信息
  • 多人协作

    1.git checkout -b 分支名 origin/分支名 在本地创建和远程分支对应的分支,名称最好一致
    2.git branch --set-upstream-to=origin/dev dev 建立本地分支和远程分支的关联
    3.git pull 先抓取远程的更新,如果有冲突,手动解决冲突
    4.git push origin 分支名 解决冲突后推送

标签

  • 基本操作

    git tag 查看所有标签
    git tag 标签名把当前分支的最新提交打上标签,标签名字自己起
    git tag 标签名 对应commit版本号把某个版本号的提交打上标签
    git tag -a v0.1 -m "描述信息" 版本号 可以用这种方式给标签增加说明,-a对应标签名,-m对应描述信息
    git show 标签名 查看标签具体信息
    git tag -d 标签名 删除标签
  • 推送标签

    git push origin 标签名推送某个标签到远程
    git push origin --tags 推送所有标签到远程
    删除远程标签:
    git tag -d 标签名先删除本地标签
    git push origin: refs/tags/标签名然后从远程删除
原文地址:https://www.cnblogs.com/duibd/p/12036483.html