美文网首页linux运维
工作中最常用的git命令

工作中最常用的git命令

作者: 聂云⻜ | 来源:发表于2019-11-27 23:52 被阅读0次

本篇主要汇总工作中常用的一些git指令和面试问题,持续更新

  1. 初始化仓库
git init
  1. 克隆一个项目代码
git clone [url]
  1. 新建一个分支,并切换到该分支
git checkout -b [branch]

处理bug时可以先创建一个分支,然后add - commit - merge,最后删除该分支

  1. 查看当前分支
git branch

git branch命令会列出所有分支,当前分支前面会标一个*

  master
  system_test
* yunfei
  1. 查看修改的文件
git status 
  1. 添加当前目录的所有文件到暂存区
git add .
  1. 提交暂存区到仓库区
 git commit -m [message]
  1. 推送前获取远程仓库更新,并与本地分支合并
git pull [remote] [branch]
  1. 推送本地指定分支到远程仓库
git push origin dbase_bugfix 就可以了

# 推送分支并创建track
git push --set-upstream origin dbase_bugfix
  1. 删除本地分支
git branch -d [branch-name]

# 强制删除
git branch -D dev

先切换到别的分支才能删除

  1. 删除远程分支
git push origin --delete [branch-name]

git branch -dr [remote/branch]
  1. 将文件存至暂存区
# 保存到缓存区
git stash save '本次暂存的标识名字'

# 查看暂存区列表
git stash list

# 查看最近暂存区保存的内容
git stash show
git stash show stash@{index}

# 删除暂存区指定记录
git stash drop stash@{index}

# 清空缓存区
git stash clear
  1. 从草稿箱还原文件
# 恢复最近暂存的内容
git stash pop

# 恢复指定草稿(pop会删除暂存区内容)
git stash pop stash@{index} 
git stash apply stash@{0} 
  1. 查看分支差异
# --stat参数不显示具体差异代码
git diff master yunfei [--stat]
  1. 删除不存在的远程跟踪分支并更新
git fetch -p
  1. 合并代码
git merge [branch]

# 取消合并
git merge --abort

# 显示分支合并图
git log --graph

# 查看最近3次的提交和涉及的文件
git log -3 --stat

# 查看某次commit hashID的提交详情
git show hashID
  1. 拆分A分支数据到B分支
git checkout A
git log (获取A分支提交的commitID)
git checkout B
git cherry-pick commitID
git cherry-pick commit1..commit100 (可进行连续拆分)
  1. 修改默认配置
# 设置大小写敏感
git config core.ignorecase false 

# 设置默认用户名
git config --global user.name "YOUR NAME"

# 设置默认邮箱
git config --global user.email "YOUR EMAIL ADDRESS"

全局配置保存在:$Home/.gitconfig
本地仓库配置保存在:.git/config

  1. 追溯指定文件的提交历史
 git blame composer.json
  1. 撤销提交(--hard为强制提交,可以不加)
git reset --hard HEAD

# 后退一步
git reset --hard HEAD^

# 后退N步
git reset --hard HEAD~2

# 撤销指定记录提交
git log
git reset --hard commit_id (哈希索引值)

# 撤销指定文件提交
git reset HEAD README.MD (指定文件名)

git reflog (查看非明细)
git reset HEAD@{1}  (注意数字1是需要撤销到的版本)

英文状态下按q退出git log

  1. 忽略提交文件

根目录创建一个名为 .gitignore 的文件,并提交到git

# 此为注释 – 将被 Git 忽略
*.a       # 忽略所有 .a 结尾的文件
!lib.a    # 但 lib.a 除外
/TODO     # 仅仅忽略项目根目录下的TODO文件,不包括 subdir/TODO
build/    # 忽略 build/ 目录下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
  1. 忽略指定文件(丢弃工作区的修改)
git checkout -- application/api/controller/v1/stock/Tools.php

用于版本库里的版本替换工作区的版本,无论工作区是修改还是删除

  1. 删除文件
git rm README.MD
git commit -m "remove README.MD"
  1. 常见问题
atal: It seems that there is already a rebase-apply directory, and
I wonder if you are in the middle of another rebase.  If that is the
case, please try
    git rebase (--continue | --abort | --skip)
If that is not the case, please
    rm -fr ".git/rebase-apply"
and run me again.  I am stopping in case you still have something
valuable there.

解决:

git status
git rebase --abort

相关文章

  • GIt 操作补充

    常用的git操作命令 常用的git操作命令已经能够满足日常的工作需求 现补充一些高级命令 git branch -...

  • git 常用命令

    git 的工作流程图 工作常用的git 命令

  • 工作中最常用的git命令

    据我所知,团队代码维护分为两派:git命令行党和图形化界面党,二者彼此都还瞧不上。。。 当我在实际开发中二者都使用...

  • 工作中最常用的git命令

    本篇主要汇总工作中常用的一些git指令和面试问题,持续更新 初始化仓库 克隆一个项目代码 新建一个分支,并切换到该...

  • 常用 Git 命令

    Git最常用的命令示意图 下面是常用 Git 命令清单。几个专用名词的译名如下。 Workspace:工作区 In...

  • 常用 Git 命令

    Git最常用的命令示意图 下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。 Workspace:工作...

  • Git 常用命令详解

    @[TOC](Git 常用命令详解) 1. Git 常用命令 1.1 常用git 命令图表汇总 1.2 配置个人信...

  • git相关教程汇总

    1. git常用命令 git常用命令总结git常用命令讲解 2. git教程相关网站 廖雪峰的git教程猴子都能懂...

  • git学习记录

    工作区{ } 版本库{ } git常用命令 多人协作

  • 工作常用 Git 命令

    阅读目录:Git 基础概念常用的命令简明指南3.1 创建新仓库3.2 检出仓库3.3 添加和提交3.4 推送改动3...

网友评论

    本文标题:工作中最常用的git命令

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