1、查看、添加、提交、删除、找回,重置修改文件

git help <command>                  # 显示 command 的 help
git show                            # 显示某次提交的内容 git show $id
git co -- <file>                    # 抛弃工作区修改
git co .                            # 抛弃工作区修改
git add <file>                      # 将工作文件修改提交到本地暂存区
git add .                           # 将所有修改过的工作文件提交暂存区
git rm <file>                       # 从版本库中删除文件
git rm <file> --cached              # 从版本库中删除文件,但不删除文件
git reset <file>                    # 从暂存区恢复到工作文件
git reset -- .                      # 从暂存区恢复到工作文件
git reset --hard                    # 恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改
git ci <file> git ci . git ci -a    # 将 git add, git rm 和 git ci等操作都合并在一起做                                    
git ci -am "some comments"
git ci --amend                      # 修改最后一次提交记录
git revert <$id>                    # 恢复某次提交的状态,恢复动作本身也创建次提交对象
git revert HEAD                     # 恢复最后一次提交的状态

2、查看文件 diff

git diff <file>                     # 比较当前文件和暂存区文件差异 git diff
git diff <id1><id1><id2>            # 比较两次提交之间的差异
git diff <branch1>..<branch2>       # 在两个分支之间比较
git diff --staged                   # 比较暂存区和版本库差异
git diff --cached                   # 比较暂存区和版本库差异
git diff --stat                     # 仅仅比较统计信息

3、查看提交记录

git log git log <file>              # 查看该文件每次提交记录
git log -p <file>                   # 查看每次详细修改内容的diff
git log -p -2                       # 查看最近两次详细修改内容的diff
git log --stat                      # 查看提交统计信息

4、Mac 上可以使用 tig 代替 diff 和 log,brew install tig

5、查看、切换、创建和删除分支

git br -r                           # 查看远程分支
git br <new_branch>                 # 创建新的分支
git br -v                           # 查看各个分支最后提交信息
git br --merged                     # 查看已经被合并到当前分支的分支
git br --no-merged                  # 查看尚未被合并到当前分支的分支
git co <branch>                     # 切换到某个分支
git co -b <new_branch>              # 创建新的分支,并且切换过去
git co -b <new_branch> <branch>     # 基于branch创建新的new_branch
git co $id                          # 把某次历史提交记录checkout出来,但无分支信息,切换到其他分支会自动删除
git co $id -b <new_branch>          # 把某次历史提交记录checkout出来,创建成一个分支
git br -d <branch>                  # 删除某个分支
git br -D <branch>                  # 强制删除某个分支 (未被合并的分支被删除的时候需要强制)

6、分支合并和 rebase

git merge <branch>                  # 将branch分支合并到当前分支
git merge origin/master --no-ff     # 不要Fast-Foward合并,这样可以生成merge提交
git rebase master <branch>          # 将master rebase到branch,相当于: git co <branch> && git rebase master && git co master && git merge <branch>

7、GIT 补丁管理

git diff > ../sync.patch            # 生成补丁
git apply ../sync.patch             # 打补丁
git apply --check ../sync.patch     # 测试补丁能否成功

8、GIT 暂存管理

git stash                           # 暂存
git stash list                      # 列所有stash
git stash apply                     # 恢复暂存的内容
git stash drop                      # 删除暂存区

9、GIT 远程分支管理

git pull                            # 抓取远程仓库所有分支更新并合并到本地
git pull --no-ff                    # 抓取远程仓库所有分支更新并合并到本地,不要快进合并
git fetch origin                    # 抓取远程仓库更新
git merge origin/master             # 将远程主分支合并到本地当前分支
git co --track origin/branch        # 跟踪某个远程分支创建相应的本地分支
git co -b <local_branch> origin/<remote_branch> # 基于远程分支创建本地分支,功能同上
git push # push所有分支
git push origin master              # 将本地主分支推到远程主分支
git push -u origin master           # 将本地主分支推到远程(如无远程主分支则创建,用于初始化远程仓库)
git push origin <local_branch>      # 创建远程分支, origin是远程仓库名
git push origin <local_branch>:<remote_branch> # 创建远程分支
git push origin :<remote_branch>    #先删除本地分支(git br -d <branch>),然后再push删除远程分支

10、GIT 远程仓库管理

GitHubgit remote -v                       # 查看远程服务器地址和仓库名称
git remote show origin              # 查看远程服务器仓库状态
git remote add origin git@ github:robbin/robbin_site.git         # 添加远程仓库地址
git remote set-url origin git@ github.com:robbin/robbin_site.git # 设置远程仓库地址(用于修改远程仓库地址) git remote rm <repository> # 删除远程仓库创建远程仓库git clone --bare robbin_site robbin_site.git    # 用带版本的项目创建纯版本仓库
scp -r my_project.git git@ git.csdn.net:~       # 将纯仓库上传到服务器上
mkdir robbin_site.git && cd robbin_site.git && git --bare init # 在服务器创建纯仓库
git remote add origin git@ github.com:robbin/robbin_site.git # 设置远程仓库地址
git push -u origin master                       # 客户端首次提交
git push -u origin develop                      # 首次将本地develop分支提交到远程develop分支,并且track
git remote set-head origin master               # 设置远程仓库的HEAD指向master分支设置跟踪远程库和本地库git branch --set-upstream master origin/master
git branch --set-upstream develop origin/develop

【Tool】常用 GIT 命令参阅相关推荐

  1. 常用 Git 命令清单

    我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...

  2. 常用 Git 命令清单(转)

    一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index ...

  3. 常用Git命令清单。

    上期传送门:[清单]7个管理和优化网站资源的工具 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository: ...

  4. 常用Git指令常用git命令清单

    下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一. ...

  5. git切换用户密码_Java小白入门,常用Git命令有哪些?

    Git简介 Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件. ...

  6. 常用git命令总结大全

    目录 一.常用命令 1.git init 2.git add 文件名 3.git commit -m "备注" 4.git status 与 git diff 5.git show ...

  7. 常用GIT命令整理 - WIP

    目录 简介 GIT设置系列命令 GIT路径系列命令 GIT仓库系列命令 子模块 (Submodule) GIT Attributes GIT常见故障排除 Errno 10054 Permission ...

  8. 常用 Git 命令使用教程

    下面整理一下自己在开发过程中经常使用到的 Git 命令.使用 GUI 工具的同学,也可以对照起来看看. Git 配置 1. 在安装完成 Git 后,开始正式使用前,是需要有一些全局设置的,如用户名.邮 ...

  9. 《ProGit》读后感:我的git理解和常用Git命令

    git 中文乱码 输入:$env:LESSCHARSET='utf-8' ide中输入:LESSCHARSET=utf-8 git 特点: 本地存有所有的记录快照,而不是比较差异.而且一般只添加数据. ...

最新文章

  1. 启示录:打造用户喜爱的产品【PDF清晰版】,产品经理必看书籍之一
  2. 配置隧道模式的IPSec.×××
  3. m.2接口和nvme区别_透明款散热不好,那么ORICO 全铝NVMe固态硬盘盒了解一下?
  4. 【clickhouse】clickchouse的分区合并速度小于插入速度会怎么样
  5. java的joptionpane空白_java – JOptionPane无法正确显示?
  6. 递归函数 二分查找法 的一些用法
  7. 在苹果Mac中的“照片”应用中创建幻灯片放映?
  8. 什么是CSS+DIV及其优势所在?
  9. 2022张宇考研基础30讲 第十一讲 多元函数微分学
  10. 浏览器密码查看工具-WebBrowserPassView使用实验 ——合天网安实验室学习笔记
  11. excel 多行 取消隐藏_取消隐藏Excel行和列的问题
  12. Linux下修改Mysql的用户(root)密码和查看默认端口的方法
  13. 47页数字孪生人脸识别轨迹分析电子围栏智慧工地解决方案
  14. Alcohol Sensor(1)
  15. 2.9.1 Packet Tracer - Basic Switch and End Device Configuration(作业)
  16. 将u盘插入apple苹果系统后发现再插入window系统发现无法新建文件夹或者文件,新建new功能消失了
  17. 第三届全国网络空间安全技术大赛 Web补题 By Assassin(持续更新)
  18. 星巴克Outlook插件允许用户预定会议场地
  19. 苹果cms模板_怎么下载苹果cmsv10仿优酷模板?
  20. 拆分pdf文件最简单的方法?PDF拆分成多个文件工具推荐

热门文章

  1. 每天一个医药小故事②神农和药王
  2. Python OpenCV 物体识别
  3. Oracle EBS R12关于“PO 通信输出”相关问题处理
  4. php redis setex如何获取,php-redis中文参考手册_Ping_echo_set_get_setex_psetex_...
  5. 在electron应用中检测网络
  6. 简简单单说外键和级联
  7. 【元器件学习笔记—电阻】(7)——电阻串并联电路
  8. C++程序的存储空间布局
  9. 第二十三课:运算放大电路正反馈
  10. 机器学习实验二(李宏毅-判断年收入)