美文网首页
git常用命令备忘

git常用命令备忘

作者: p_gerer | 来源:发表于2020-11-27 12:03 被阅读0次

一.基础操作

0.基本概念

git持有三棵树

  • 工作目录持有实体文件
  • 暂存区,缓冲改动
  • Head 指向最后一次提交结果

1.初始化本地项目

git init

2.检出项目

git clone <server|path>

3.添加和提交

git add <单文件>
git add * 
git commit -m ""  # 添加注释并提交到HEAD

4.本地仓库与远端建立|删除联系

git remote add origin <远端仓库地址>
git remote rm origin

5.推送提交的改动到远程服务器

git push origin <branch>

6.分支检出|删除

  • 检出
git checkout -b feature/test # 检出新分支并跳转
git checkout <切换分支>
  • 删除
git branch -d <分支> #需要切换到其他分支
git push origin --delete <远程分支名称>

7.拉去远程代码变更

git pull

8.合并分支

git merge <branch>

9.查看分支差异

git diff <source_branch> <target_branch>

10.创建标签

git tag <1.0.0|tag> <commit id>

11.查看提交历史

git log
git log --author=bob # 指定提交人
git log --pretty=oneline # 没个提交只占一行输出
git log --graph --oneline --decorate --all 
git log --name-status # 改变的文件
git log --help # help doc

12.后悔药

  • 使用Head区的代码,替换掉本地文件的改动
git checkout -- <filename>
  • 将远程的代码拉取到本地,确认后手动合并
git fetch <origin>
  • 放弃本地所有提交
git reset --hard origin/master
  • 撤回commit修改,但是代码不回滚
git reset --soft HEAD^ # HEAD^,HEAD~1 上次 , HEAD~2 两次
  • 回滚版本,代码回滚
git reset --hard HEAD^ #回退到上个版本
git reset --hard HEAD~3 #回退到前3次提交之前,以此类推,回退到n次提交之前
git reset --hard <commit_id> # 退到/进到 指定commit的sha码

git push origin HEAD --force # 由于本地HEAD版本低于master版本提交需要强制才能成功

13.ignore文件
在根目录下添加.gitignore文件

# 忽略*.o和*.a文件
 *.[oa]

# 忽略*.b和*.B文件,my.b除外
*.[bB]
!my.b

# 忽略dbg文件和dbg目录
dbg

# 只忽略dbg目录,不忽略dbg文件
dbg/

# 只忽略dbg文件,不忽略dbg目录
dbg
!dbg/

# 只忽略当前目录下的dbg文件和目录,子目录的dbg不在忽略范围内
/dbg

# 以'#'开始的行,被视为注释.
 * ?:代表任意的一个字符
    * *:代表任意数目的字符
    * {!ab}:必须不是此类型
    * {ab,bb,cx}:代表ab,bb,cx中任一类型即可
    * [abc]:代表a,b,c中任一字符即可
    * [ ^abc]:代表必须不是a,b,c中任一字符

二.git flow 工作流

1.初始化

git flow init
git flow init -f

2.特性|功能 feature - 可以有多个

  • 增加新特性- 基于develop分支创建一个feature/xxx
git flow feature start MYFEATURE
  • 完成新特性

合并 MYFEATURE 分支到 'develop'
删除这个新特性分支
切换回 'develop' 分支

git flow feature finish MYFEATURE
  • 发布新特性 -推送到远端
git flow feature publish MYFEATURE
  • 拉取功能分支
git flow feature pull origin MYFEATURE
git flow feature track MYFEATURE # 跟踪
  1. 发布版本基于develop生产环境的release - 只能有一个
  • 创建
git flow release start RELEASE [BASE]
  • 完成
    归并 release 分支到 'master' 分支
    用 release 分支名打 Tag
    归并 release 分支到 'develop'
    移除 release 分支
git flow release finish RELEASE [BASE]
  • 发布
git flow release publish RELEASE 
  • 签出
git flow release track RELEASE
  1. 紧急修复-hotfix-唯一
  • 创建补丁
git flow hotfix start VERSION [BASENAME] # [BASENAME]为finish release时填写的版本号
  • 完成
    当完成紧急修复分支,代码归并回 develop 和 master 分支。
    master 分支打上修正版本的 TAG。
git flow hotfix finish VERSION

相关文章

  • git命令整理

    git常用命令 GIT常用命令备忘:http://stormzhang.com/git/2014/01/27/gi...

  • Git常用命令备忘

    Git常用命令备忘 git config --global user.name "robbin" git conf...

  • Git 常用命令及方法备忘录

    Git 常用命令及方法备忘录 WorkSpace: 工作区Index / Stage: 暂存区Repository...

  • Git常用开发流程

    前言 我们在【Git常用命令备忘】中,对Git的所有命令进行了汇总。但是,Git在项目中如何价值最大化地实践,我们...

  • git相关教程汇总

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

  • git操作

    Git原理 Git常用命令

  • Git常用命令备忘

    Git别名git config --global color.ui truegit config --global...

  • GIT常用命令备忘

    Git配置 Git常用命令 查看文件diff 查看提交记录 Git 本地分支管理 分支合并和rebase Git补...

  • git常用命令备忘

    2018-03-31这边是一些常用的 git 指令,常用就会自然记起来,不用硬背,你可以在遇到问题的时候再回来看这...

  • git常用命令备忘

    克隆指定分支 使用Git下载指定分支命令为:git clone -b 分支名 仓库地址 使用Git下载v.2.8....

网友评论

      本文标题:git常用命令备忘

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