• Git-快速笔记(持续更新)


    本文记录一些学习《Pro Git》book的一些笔记和工作中常用到的一些git指令

    • git相当于一个小型文件系统,保存的是各个不同版本的文件,而非版本之间的修改。
    • git config 分为三级,–system所有用户,–global当前用户,–local当前项目。后两个比较常用同样的配置项下一级会覆盖上一级
    • git config --list --show-origin
      列出已配置的项以及配置文件的位置
    • git config --global user.name “John Doe”
      刚安装完git通常要执行的命令,否则无法commit
    • git config --global user.email johndoe@example.co
      刚安装完git通常要执行的命令,否则无法commit
    • git init
      新建本地仓库
    • git clone url
      拉取远端项目到本地
    • git clone url newName
      拉取项目到本地,且文件夹名字为newName
    • git add file
      将文件添加到暂存区
    • git add -u
      添加所有已修改和删除的tracked files到暂存区,不包括新增
    • git reset HEAD file
      将文件从暂存区移出
    • git checkout – file
      将文件变为上一次add或者commit的最新状态
    • git diff
      比较的是工作区与暂存区之间的变化
    • git diff --cached或者–staged
      比较暂存区与最新一次提交之间的变化
    • git status
      查看当前仓库状态
    • git commit
      提交,提交信息使用默认编辑器编辑
    • git commit -m “123”
      提交,提交信息-m之后的信息
    • git commit -a (–all)
      等价于git add -u加git commit
    • git rm file
      不再跟踪文件且删除工作区文件,支持正则表达式
    • git rm --cached file
      不再跟踪文件且保留工作区文件,支持正则表达式
    • git mv nameA nameB
      重命名或者移动。等价于三个指令mv README.md README+git rm README.md+git add README
    • git log
      查看提交历史
    • git log -n
      显示n次提交历史
    • git log -p(–patch)
      显示每次提交所引入的差异(每次提交与上一次提交的变化)
    • git log --pretty=oneline
      每次提交信息只显示一行
    • git log --pretty=oneline --graph
      –graph以分支图的形式显示信息
    • git log --since=2022-01-01
      显示时间点以来的提交
    • git rebase master
      将当前分支rebase到master分支
    • git rebase master dev
      将dev分支rebase到master分支
    • git rebase -i HEAD~3
      合并最近的2次提交
    • git rebase --continue
      继续rebase过程
    • git rebase --abort
      撤销此次rebase过程
    • git config --global merge.tool meld
      使用meld解决冲突
    • git mergetool
      当前仓库存在冲突时,使用配置好的冲突解决工具解决冲突
    • git reset hash
      重置HEAD指针到指定hash,不改变工作区内容
    • git reset --hard hash
      重置HEAD指针到指定hash,且改变工作区内容到指定hash版本
    • git stash -m “message”
      将当前工作区未commit的修改放到stash中
    • git stash apply 0
      应用索引0的stash,但不删除
    • git stash pop 0
      应用索引0的stash,且删除
    • git checkout -b branch_name
      创建新分支并切换到该分支
    • git checkout branch_name
      切换分支
    • git checkout branch_name --recursive-modules
      所有仓库和子仓库切换到指定分支
    • git pull --recursive-modules
      拉取所有仓库和子仓库
    • git commit --amend
      重新提交上次commit
    • git tag
      显示已有标签
    • git tag -a tag_name -m “message” [HASH]
      给当前commit添加annotated tag附注标签,包含打标签者的名字、电子邮件地址、日期时间, 此外还有一个标签信息,带上hash给指定commit加tag
    • git tag tag_name [HASH]
      给当前commit添加lightweight tag轻量标签,带上hash给指定commit加tag
    • git push origin tag_name
      push 标签
    • git push --tags
      push所有标签
    • git tag -d tag_name
      删除标签
    • git push origin --delete tag_name
      删除远程标签
    • git config --global alias.last ‘log -1 HEAD’
      命令别名。git last==git log -1 HEAD
    • git remote prune origin
      远程仓库分支删除后,删除相应的引用
    • git branch
      查看本地分支和当前分支
    • git branch -d branch_name
      删除本地分支
    • git branch --merged [branch_name]
      查已经merge到当前分支/branch_name分支的所有分支,
    • git branch --no-merged [branch_name]
      查没有merge到当前分支/branch_name分支的所有分支
    • git merge branch_name
      在当前分支创建合并分支节点,并合并branch_name分支到当前分支
    • git checkout -b serverfix origin/serverfix
      创建分支本地分支serverfix,并1. 切换到该分支 2. 设置远程仓库origin上的serverfix远程分支为跟踪的分支
    • git fetch
      命令从服务器上抓取本地没有的数据,它并不会修改工作目录中的内容。 它只会获取数据然后让你自己合并
    • git pull
      它的含义是一个 git fetch 紧接着一个 git merge 命令
    • git push origin -d serverfix
      从origin仓库中删除分支serverfix
    • git rebase --onto master server client
      取出 client 分支,找出它从 server 分支分歧之后的补丁, 然后把这些补丁在 master 分支上重放一遍,让 client 看起来像直接基于 master 修改一样
      在这里插入图片描述
      在这里插入图片描述
    • git rebase basebranch topicbranch
      topicbranch变基到basebranch

    (Pro Git 前三章完结)

  • 相关阅读:
    【前端面试】重要知识点
    AI 挣钱难,科大讯飞营收将突破200亿元
    通信系统中ZF,ML,MRC以及MMSE四种信号检测算法误码率matlab对比仿真
    Java设计模式之中介者模式
    KQL和Lucene的区别
    Java开发必须掌握的运维知识 (十)-- Docker集群自动化部署管理:Kubernetes快速入门
    基于opencv对高空拍摄视频消抖处理
    浏览器端vscode docker搭建(附带python环境)
    Retrofit原理 一篇文章就够了
    vba 获取PPT幻灯片中的所有标题的代码
  • 原文地址:https://blog.csdn.net/mrbone11/article/details/126754557