• Git 常用命令


    分区

    由工作区 + 暂存区 + 本地库构成

    git基础信息设置

    通过 git config --list 查看基本信息
    主要就是三个:username,password,email
    由于有敏感信息,就不截图了

    # 设置用户名
    git config --global user.name "username"
    # 设置密码
    git config --global user.password "password"
    # 设置邮箱
    git config --global user.email "email"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    git status

    查看工作区与暂存区的差别。
    这里创建一个新文件status.txt
    git status 发现了工作区有 status.txt而暂存区没有

    在这里插入图片描述

    git add

    git add “文件” 将指定文件从工作区提交到暂存区,如果是“.” 则代表提交工作区所有文件。

    在这里插入图片描述

    git commit

    将暂存区文件提交到本地库

    在这里插入图片描述

    git log

    查看历史日志,从近到远,以分页的形势展示(当前屏幕展示不下才会分页)。按b上一页,按空格下一页,按q退出。

    在这里插入图片描述

    git log --pretty=oneline

    以美化的形式,展示。省略了Author和Date
    在这里插入图片描述

    git log --oneline

    在 git log --pretty=oneline 的基础上只保留了版本号的后七位
    在这里插入图片描述

    git reflog

    提供了回到某个版本的回滚次数 如: HEAD@{1}

    在这里插入图片描述

    reset 回到指定版本

    通过git reset --hard 版本号回到指定版本

    –hard 参数是让工作区,和暂存区内容跟着本地库一起回到指定版本

    在这里插入图片描述

    git remote

    git remote -v 查看远程仓库地址别名

    在这里插入图片描述

    git remote add "别名“ ”仓库地址“ 给远程仓库地址起别名

    在这里插入图片描述

    git diff

    git diff “文件” 比较文件在工作区和暂存区中的具体区别(改变),文件为“."代表比较所有文件。
    和 git status 不一样,git diff 会列出具体的文件变动。
    在这里插入图片描述

    git diff "版本号” “文件” 还能比表文件在暂存区和某个版本的区别

    在这里插入图片描述

    git fetch

    从远程拉取代码到本地,未合并,则内容不会在工作区体现

    git pull
    # git push "仓库别名" “分支名” 拉取合并远程仓库
    git push origin master
    # git push 操作 = git fetch + git merge
    # git push origin master 等价于
    git fetch origin master 
    git merge origin/master
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    git push

    git push “仓库别名” “分支” 推送代码到远程仓库,仓库别名通过git remote 设置

    git branch
    # 查看分支列表
    git branch -v
    
    # git branch "分支名" 添加新分支
    git branch new_branch
    
    • 1
    • 2
    • 3
    • 4
    • 5
    git checkout
    # git checkout "分支名" 切换分支
    
    git checkout dev
    
    • 1
    • 2
    • 3
    git merge

    分支合并

    # 这里将master分支内容合并到dev
    # 1.先切换到dev分支
    git checkout dev
    # 2.合并
    git merge master
    
    • 1
    • 2
    • 3
    • 4
    • 5
    冲突解决

    当出现冲突后,会提示哪些文件冲突了。需要手动进入文件中选择保留哪些内容。
    修改完后,继续老三样:git add + git commit + git push 即可

    夸团队远程合作

    这里以你参与开源项目A为例
    1.首先fork项目A到你自己的仓库C中
    2.本地拉取自己仓库C中的项目,然后增加代码。继续老三样 git add + git commit + git push
    3.新增的代码已经推送到仓库C中,在github中 通过 pull request 请求将C修改合并到开源项目A中
    4.开源项目A的所有者就能看到这条合并请求,由其来决定是否合并。

    shh 免密

    仓库提供了两种方式:
    1.https 如:https://github.com/xieruixiang/gcmose.git
    2.ssh 如:git@github.com:xieruixiang/gcmose.git

    ssh 需要在本地生成公私密钥,使用公钥内容在仓库中创建ssh公钥,即可进行ssh免密进行拉取,推送等操作。

    # 生成公私密钥 ssh-keygen -t rsa -C "邮箱"
    ssh-keygen -t rsa -C xxxx@qq.com
    
    • 1
    • 2
  • 相关阅读:
    软件设计与体系结构编程题汇总
    【JavaEE】JavaScript webAPI的基本知识
    网络爬虫:如何有效的检测分布式爬虫
    超声波传感器(CHx01) 学习笔记 Ⅴ- 参数配置
    vi vim是什么?有啥区别? 怎么使用vim?
    暂存6暂存6暂存6
    C++入门笔记
    【Redis】数据结构之dict
    自学Python需要掌握哪些知识点?怎么学?
    李宏毅:Life Long Learning
  • 原文地址:https://blog.csdn.net/qq_29744347/article/details/126808996