Git常用操作(简化版)

本文来源为
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/ ,仅是学习之后,进行简单总结,需要的朋友可进行系列学习。

  • 显示当前目录 pwd
  • 初始化一个git仓库 git init
  • 添加文件到git仓库
  • git add 添加文件
  • git commit -m "提交说明" -m为可选,后跟本次提交的说明,但建议必填,这样之后查看时,可以清楚的知晓本次都做了什么。
  • 查看仓库当前的状态 git status
  • 查看different git diff
  • 记录每一个命令(命令历史) git reflog
  • 显示从最近到最远的提交日志(提交历史) git log
    • 使用 git log --pretty=oneline 可简化log输出信息
  • 回退
    • ① 返回上一个版本 git reset --hard HEAD^
    • ② 返回版本号为3628164的版本 git reset --hard 3628164,版本号可以用git log --pretty=oneline来查看。

Git中 ,HEAD表示当前版本,上一个版本是HEAD^,上上一个版本是HEAD^^,若版本过早,可简写HEAD~100

  • 将某个文件(file)在工作区中的修改全撤销 git checkout -- file
  • ① 若file 自修改后还没被放到暂存区,现撤销就和版本库一样。
  • ② 若file已经添加到暂存区,又做了修改,现撤销修改就回到添加暂存区后的状态。
  • 将暂存区的修改撤销重新放回到工作区 git reset HEAD file
  • 关联一个远程库,使用命令git remote add origin git仓库地址 ,关联后,使用命令 git push -u origin master第一次推动master分支的所有内容。
  • 由于远程库是空的,第一次推送master分支时,加上 -u参数,git不但会把master分支内容推送到远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或拉取时可简化命令。
    此后,每次修改提交,就可以使用命令 git push origin master推送最新修改。
  • 将某个远程库下载至本地。 git clone 远程仓库
  • git支持多种协议,包括httpsssh,但通过ssh 支持的远程git 协议速度最快。
  • 创建dev分之并切换 git checkout -b dev相当于以下两个操作
  • git branch dev 创建分支
  • git checkout dev 切换分支
  • 查看当前分支 git branch (列出所有分支,当前分支前有一个*)
  • 合并指定分支到当前分支 git merge 指定分支名称
  • 删除指定分支(dev) git branch -d dev
  • 查看分支合并图 git logg --graph
  • git logg --graph --pretty=oneline --abbrev-commit 简化输出
  • 合并分支时禁用fast forword 模式 git merge --no-ff -m "提交说明" dev

通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。

如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。

  • 假设一个工作场景:你现在在一个分支上工作,但现在有一个紧急任务,需要在主分支上修改Bug,但你并不想提交目前的工作至进度,此时,就需要临时的“储藏”当前的工作现场,切换至主分支(或其它任何分支)进行紧急任务,任务完成后,恢复当前工作现场。
  • “储藏”当前工作现场 git stash
  • 查看 “储藏” git stash list
  • 恢复并删除stash内容 git stash pop
  • 恢复但不删除stash内容 git stash apply
  • 删除stash git stash drop

你可能感兴趣的:(Git常用操作(简化版))