乐趣区

关于git:Git-中的常用命令

根底命令

  • git help <command>: 获取 git 命令的帮忙信息
  • git init: 创立一个新的 git 仓库,其数据会寄存在一个名为 .git 的目录下
  • git status: 显示以后的仓库状态
  • git add <filename>: 增加文件到暂存区
  • git commit: 创立一个新的提交

    • 如何编写良好的提交信息
    • 为何要编写良好的提交信息
  • git log: 显示历史日志
  • git log --all --graph --decorate: 可视化历史记录(有向无环图)
  • git diff <filename>: 显示与暂存区文件的差别
  • git diff <revision> <filename>: 显示某个文件两个版本之间的差别
  • git checkout <revision>: 更新 HEAD 和目前的分支

分支与合并

  • git branch: 显示分支
  • git branch <name>: 创立分支
  • git checkout -b <name>: 创立分支并切换到该分支
  • 相当于 git branch <name>; git checkout <name>
  • git merge <revision>: 合并到以后分支
  • git mergetool: 应用工具来解决合并抵触
  • git rebase: 将一系列补丁变基(rebase)为新的基线

远端操作

  • git remote: 列出远端
  • git remote add <name> <url>: 增加一个远端
  • git push <remote> <local branch>:<remote branch>: 将对象传送至远端并更新远端援用
  • git branch --set-upstream-to=<remote>/<remote branch>: 创立本地和远端分支的关联关系
  • git fetch: 从远端获取对象 / 索引
  • git pull: 相当于 git fetch; git merge
  • git clone: 从远端下载仓库

撤销

  • git commit --amend: 编辑提交的内容或信息
  • git reset HEAD <file>: 复原暂存的文件
  • git checkout -- <file>: 抛弃批改

Git 高级操作

  • git config: Git 是一个高度可定制的工具
  • git clone --depth=1: 浅克隆(shallow clone),不包含残缺的版本历史信息
  • git add -p: 交互式暂存
  • git rebase -i: 交互式变基
  • git blame: 查看最初批改某行的人
  • git stash: 临时移除工作目录下的批改内容
  • git bisect: 通过二分查找搜寻历史记录
  • .gitignore 文件: 指定成心不追踪的文件
退出移动版