美文网首页
Git 工具手册

Git 工具手册

作者: 沉默的韩先生 | 来源:发表于2020-12-25 14:07 被阅读0次

Git基本操作手册

Git相关命令极其丰富多样,可以实现很多独特的操作,希望大家习惯查阅相关资料学习使用,或者在遇到问题时,及时学习充电,本文将持续更新Git的使用参考,全文涉及命令及操作方案只做基本学习工作使用,仅供参考,欢迎大家及时补充,一起进步://~


Git 命令参考
  • 克隆一个项目

比如现在我们有一个仓库地址为:clone_url,该仓库存在一个远程分支:dev

  1. 克隆完整仓库
git clone [clone_url]
  1. 只克隆dev分支
git clone -b dev [clone_url]
  • 分支基本操作

// 查看分支
git branch
// 查看分支详情
git branch -v
// 创建一个分支
git branch [branch_name]
// 切换到一个分支
git checkout [branch_name]
// 创建并切换到一个新分支
git checkout -b [branch_name]
// 删除一个干净的分支,即相对当前分支而言该分支没有新的提交记录
git branch -d [branch_name]
// 强制删除一个分支,该分支有没有合并到当前分支的提交记录
git branch -D [branch_name]
// 重命名分支
git branch -m [branch_name] [new_branch_name]
// 分支恢复,对于已经有提交记录的分支删除后,实际上只是删除指针,commit记录还保留,如果想恢复,需要使用git reflog查找该分支指向的commitId,然后根据commitId创建新的分支
git branch [branch_name] [commit_id]
// 分支合并,将A分支合并到B分支,此时合并为fast-forward方式,当出现冲突时,应当先解决冲突,然后再暂存,提交
git checkout B & git merge A
// 合并分支时禁用Fast forward模式
git merge --no-ff -m "msg" [branch_name]
  • 远程分支操作

// 把本地分支推送到远程
git push origin [本地分支名]:[远程分支名]
// 删除远程分支
git push origin :[远程分支名]
// 从远程的分支获取最新的版本到本地
// 首先从远程的origin的master主分支下载最新的版本到origin/master分支上
git fetch origin master:tmp
// 然后比较本地的master分支和origin/master分支的差别
git diff tmp 
// 最后进行合并
git merge tmp
// 从远程获取最新版本并merge到本地
git pull origin master 

注意:在实际使用中,git fetch更安全一些,因为在merge前,我们可以查看更新情况,然后再决定是否合并。

  • 撤销操作

  1. 文件未提交到暂存区的时候,撤销文件改动
git checkout -- [filename]
  1. 文件提交到了暂存区,但是未提交到版本库,撤销文件改动
git reset HEAD [filename]

这个时候,暂存区的文件撤销了,但是工作区的文件还未撤销,所以继续执行以下命令:

git checkout -- [filename]

此时工作区的该文件已经撤销

  1. 删除工作区的文件
    只删除工作区的文件,可以用rm 命令来实现:
rm [filename]
  1. 删除暂存区的文件
    如果该文件提交到了暂存区,我们执行rm命令只能删除工作区的文件,要是想要继续删除暂存区的文件,可以使用以下命令来实现:
git rm [filename]
  1. 同时删除暂存区和工作区的文件
git rm -f [filename]
  1. 删除暂存区文件,不删除工作区文件
git rm --cached [filename]
  1. 恢复某个文件到某个版本时的状态
git checkout [commit_id] [filename]
  1. 将所有文件都恢复到某个版本
git reset --hard [commit_id]
// 恢复到上一个版本
git reset --hard HEAD^
// 恢复到前两个版本
git reset --hard HEAD~2
  1. 查看版本记录
git log
// 查看恢复记录
git reflog
  • 对比两个分支的差异

比如我们有两个分支:masterdev,现在要查看这两个分支的区别,有以下几种查看方式:

  1. 查看 dev 有,而 master 没有的:
git log dev ^master
  1. 查看 dev 中比 master 中多提交了哪些内容:
git log master..dev
  1. 不知道谁提交的多谁提交的少,单纯想知道有什么不一样:
git log dev...master
  1. 在上述情况下,再显示出每个提交是在哪个分支上:
git log --right--left dev...master

注意 commit 后面的箭头,根据我们在 –left-right dev…master 的顺序,左箭头 < 表示是 dev 的,右箭头 > 表示是 master的。

  • 对比两个文件的差异

分两个分支和相同分支之间的文件差异对比:

  1. 两个分支之间的文件差异对比
    比如我们有两个分支:masterdev,其中存在文件application-dev.properties
git diff master dev -- application-dev.properties
or
git diff master dev

注意:该命令是以master分支为参照,比较dev分支中的文件差异,默认比较所有差异的文件,可加上需要对比的文件名。

  1. 比较工作区和版本库之间的差异
git diff HEAD -- application-dev.properties
  1. 比较工作区和暂存区之间的文件差异
git diff
  1. 比较暂存区和版本库之间的文件差异
git diff --cached
or
git diff --staged
  • 配置个人免密推送

git config --global credential.helper store
// 如果只针对当前仓库,则可以去除--global
git config credential.helper store

相关文章

  • Git 工具手册

    Git基本操作手册 Git相关命令极其丰富多样,可以实现很多独特的操作,希望大家习惯查阅相关资料学习使用,或者在遇...

  • Web前端·资源导航

    环境与工具 Node.js官网 Node.js中文网 NPM 淘宝镜像 Yarn GitHub Git Git手册...

  • Git 命令

    参考: Git命令参考手册(文本版) Git 参考手册

  • git的基本使用及原理

    git branch testing最近在学习git的使用,看到比较不错的是git手册,以及博客。感觉git手册还...

  • Github 简明教程

    是时候写一些管理工具了。 git 指令参考git手册、tag的删除指令转载:史上最详细如何使用github上传自己...

  • Git book

    目录 git community book git入门 git笔记 git 用法 git安装使用手册 git命令大...

  • Git: 版本控制(1)

    git help git 显示常用命令,简短解释git -a 或 git help -g 显示git手册git a...

  • Git [提交记录查看、提交、变基](I)

    Git 简易指南Git 参考手册Pro Git(中文版)Git教程 廖雪峰 查看提交记录 终端命令git log:...

  • git 命令

    git命令手册 分支 合并 远程仓库

  • git命令速查

    Git命令参考手册(文本版)

网友评论

      本文标题:Git 工具手册

      本文链接:https://www.haomeiwen.com/subject/shebnktx.html