开心?一下
image.png

第一部分 命令行

1、分支操作
1. git branch  创建分支2. git checkout -b 创建并切换到新建的分支上3. git checkout  切换分支4. git branch 查看分支列表5. git branch -v 查看所有分支的最后一次操作6. git branch -vv 查看当前分支7. git brabch -b 分支名 origin/分支名 创建远程分支到本地8. git branch --merged 查看别的分支和当前分支合并过的分支9. git branch --no-merged 查看未与当前分支合并的分支10. git branch -d 分支名 删除本地分支11. git branch -D 分支名 强行删除分支12. git branch origin :分支名 删除远处仓库分支13. git merge 分支名  合并分支到当前分支上
2、暂存操作
1. git stash 暂存当前修改2. git stash apply 恢复最近的一次暂存3. git stash pop 恢复暂存并删除暂存记录4. git stash list 查看暂存列表5. git stash drop 暂存名(例:stash@{0})  移除某次暂存6. git stash clear 清除暂存
3、回退操作
1. git reset --hard HEAD^ 回退到上一个版本2. git reset --hard ahdhs1(commit_id)  回退到某个版本3. git checkout -- file撤销修改的文件(如果文件加入到了暂存区,则回退到暂存区的,如果文件加入到了版本库,则还原至加入版本库之后的状态)4. git reset HEAD file  撤回暂存区的文件修改到工作区
4、标签操作
1. git tag 标签名 添加标签(默认对当前版本)2. git tag 标签名 commit_id 对某一提交记录打标签3. git tag -a 标签名 -m '描述'  创建新标签并增加备注4. git tag 列出所有标签列表5. git show 标签名  查看标签信息6. git tag -d 标签名  删除本地标签7. git push origin 标签名 推送标签到远程仓库8. git push origin --tags 推送所有标签到远程仓库9. git push origin :refs/tags/标签名  从远程仓库中删除标签
5、其它操作

常规操作

1. git push origin test 推送本地分支到远程仓库2. git rm -r --cached 文件/文件夹名字 取消文件被版本控制3. git reflog 获取执行过的命令4. git log --graph 查看分支合并图5. git merge --no-ff -m '合并描述' 分支名  不使用Fast forward方式合并,采用这种方式合并可以看到合并记录6. git check-ignore -v 文件名  查看忽略规则7. git add -f 文件名  强制将文件提交8. git reflog 打印所有的日志,假如:ABC三个节点,回退到B后,仍旧打印所有日志

git创建项目仓库

1、git init      初始化2、git remote add  origin  url 关联远程仓库3、git pull4、git fetch 获取远程仓库中所有的分支到本地

忽略已加入到版本库中的文件

1、git update-index --assume-unchanged file 忽略单个文件2、git rm -r --cached 文件/文件夹名字  (. 忽略全部文件)

取消忽略文件

git update-index --no-assume-unchanged file

拉取、上传免密码

git config --global credential.helper store

第二部分 版本管理

GitFlow 是由 Vincent Driessen 提出的一个 git操作流程标准。包含如下几个关键分支:

1. master:主分支develop:主开发分支,包含确定即将发布的代码;2. feature:新功能分支,一般一个新功能对应一个分支,对于功能的拆分需要比较合理,以避免一些后面不必要的代码冲突;3. release:发布分支,发布时候用的分支,一般测试时候发现的 bug 在这个分支进行修复;4. hotfix:热修复分支,紧急修 bug 的时候用。
GitFlow 的优势有如下几点:
1. 并行开发:GitFlow可以很方便的实现并行开发。每个新功能都会建立一个新的 feature分支,从而和已经完成的功能隔离开来,而且只有在新功能完成开发的情况下,其对应的 feature分支才会合并到主开发分支上(也就是我们经常说的develop分支)。另外,如果你正在开发某个功能,同时又有一个新的功能需要开发,你只需要提交当前 feature 的代码,然后创建另外一个feature 分支并完成新功能开发。然后再切回之前的 feature 分支即可继续完成之前功能的开发。2. 协作开发:GitFlow 还支持多人协同开发,因为每个 feature 分支上改动的代码都只是为了让某个新的 feature 可以独立运行。同时我们也很容易知道每个人都在干啥。3. 发布阶段:当一个新 feature 开发完成的时候,它会被合并到 develop 分支,这个分支主要用来暂时保存那些还没有发布的内容,所以如果需要再开发新的 feature,我们只需要从 develop 分支创建新分支,即可包含所有已经完成的 feature 。4. 支持紧急修复:GitFlow 还包含了 hotfix 分支。这种类型的分支是从某个已经发布的 tag 上创建出来并做一个紧急的修复,而且这个紧急修复只影响这个已经发布的 tag,而不会影响到你正在开发的新 feature。

然后就是 GitFlow 最经典的几张流程图,一定要理解:

image.png

feature 分支都是从 develop 分支创建,完成后再合并到 develop 分支上,等待发布

image.png

当需要发布时,我们从 develop 分支创建一个 release 分支
然后这个 release 分支会发布到测试环境进行测试,如果发现问题就在这个分支直接进行修复。在所有问题修复之前,我们会不停的重复发布->测试->修复->重新发布->重新测试这个流程

image.png

发布结束后,这个release 分支会合并到 develop 和 master 分支,从而保证不会有代码丢失

image.png

master 分支只跟踪已经发布的代码,合并到 master 上的 commit 只能来自 release 分支和 hotfix 分支。
hotfix 分支的作用是紧急修复一些 Bug。它们都是从 master 分支上的某个 tag 建立,修复结束后再合并到 develop 和 master 分支上。

image.png

第三部分 Git常见错误汇总

常见错误1、windows使用git时出现:warning:LF will be replaced by CRLF

windows中的换行符为 CRLF, 而在linux下的换行符为LF,所以在执行add . 时出现提示,解决办法:

  1. $ rm -rf .git  // 删除.git

  2. $ git config --global core.autocrlf false  //禁用自动转换

然后重新执行:

  1. $ git init

  2. $ git add .

常见错误2、git push origin master出错:error:failed to push sonme refs to...

很明显是:

本地没有update到最新版本的项目(git上有README.md文件没下载下来)

本地直接push所以会出错。

【解决过程】

1.看到提示里面,感觉是本地的代码不是最新的。

所以觉得应该是类似于svn中的,先update一下,再去commit,估计就可以了。

所以先去pull试试:

git pull  --rebase origin master

解决!

常见错误3、fatal: remote origin already exists.

解决办法如下:

1、先输入$ git remote rm origin

2、再输入$ git remote add origin git@github.com:djqiang/gitdemo.git 就不会报错了!

3、如果输入$ git remote rm origin 还是报错的话,error: Could not remove config section 'remote.origin'. 我们需要修改gitconfig文件的内容

4、找到你的github的安装路径,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc

5、找到一个名为gitconfig的文件,打开它把里面的[remote "origin"]那一行删掉就好了!

---------------END----------------

后续的内容同样精彩

长按关注“IT实战联盟”哦

git 取消 所有暂存_Git版本管理完全指南—学好Git一文足矣相关推荐

  1. git 取消 所有暂存_Git 基础 - 删除暂存区的文件

    带你实现开发者头条APP(三) 首页实现 title: 带你实现开发者头条APP(三) 首页实现 tags: 轮播广告,ViewPager切换,圆形图片 grammar_cjkRuby: true - ...

  2. git如何查看缓存区文件内容_详解Git工作区、暂存区、历史记录区以及git reset、git revert、git checkout等撤销命令的区别...

    一.可以将git简单的分为三个区域   1.工作区(working directory)    2.暂缓区(stage index)    3.历史记录区(history)    如图: 其中git ...

  3. git工作区、暂存区和仓库区

    git工作区.暂存区和仓库区 工作区 对于添加.修改.删除文件的操作,都发生在工作区中 暂存区 暂存区指将工作区中的操作完成小阶段的存储,是版本库的一部分 仓库区 仓库区表示个人开发的一个小阶段的完成 ...

  4. git 工作区和暂存区

    Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工 ...

  5. Git 工作区、暂存区和版本库

    基本概念 我们先来理解下Git 工作区.暂存区和版本库概念 工作区:就是你在电脑里能看到的目录 暂存区:英文叫stage, 或index.一般存放在 ".git目录下" 下的ind ...

  6. Git复习(九)之理解git工作区和暂存区

    前言 Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 版本库 在工作区目录中有一个.git文件,这个其实不是工作区而是Git的版本库 版本库中包含两个部分,一个是暂存区index/ ...

  7. Git 工作区恢复暂存区操作总览

    如何让工作区的全部文件恢复为和暂存区一样? 应用场景: 在工作区我做了一版文件优化的操作,将工作区优化的文件添加至暂存区,先不进行提交:然后,在工作区又对优化版本进行修改,但是测试效果,还不如以前添加 ...

  8. Git学习笔记之三:Git 工作区、暂存区和版本库

    基本概念我们先来理解下Git 工作区.暂存区和版本库概念 工作区:就是你在电脑里能看到的目录. 暂存区:英文叫stage, 或index.一般存放在 ".git目录下" 下的ind ...

  9. 6.3 Git 工具 - 交互式暂存

    交互式暂存 Git提供了很多脚本来辅助某些命令行任务.这里,你将看到一些交互式命令,它们帮助你方便地构建只包含特定组合和部分文件的提交.在你修改了一大批文件然后决定将这些变更分布在几个各有侧重的提交而 ...

最新文章

  1. 用css绘制各种形状
  2. python有趣代码-wtfPython―Python中一组有趣微妙的代码【收藏】
  3. 第二篇:阿里数据中台之OneData体系1
  4. 物料单位转换的两个函数
  5. Javascrip—拷贝对象(13)
  6. 软考系统架构师笔记-综合知识重点(三)
  7. Spring Cloud 入门 之 Ribbon 篇(二)
  8. 微软MSDN提供的Visual Studio开发文档
  9. C++中泛型使用导致的膨胀问题
  10. Flutter初步-第一个电视直播APP
  11. 游戏实时语音解决方案是怎么炼成的
  12. 2011年11月-2012年10月份 历时一年的 博客回顾
  13. 判断一个double类型的数是不是整数
  14. 基于java的俄罗斯方块游戏系统设计与实现(项目报告+答辩PPT+源代码+数据库+截图+部署视频)
  15. JSP自定义带属性的标签
  16. 中国科学院大学计算机考研好考吗,中国科学院大学考研难吗?一般要什么水平才可以进入?...
  17. ImGui实现Button高亮
  18. mysql pga_PGA的监控与调整
  19. 安全帽检测漏洞系统的初步总结
  20. 学计算机近视度数加深,导致近视加深的八大原因

热门文章

  1. MFC开发IM-第十二篇、MFC改变static text背景色为透明
  2. 判断一棵树是否为完全二叉树的算法c语言_[二叉树的面试算法](六)之二叉树结构判断-相关题型总结(4题)...
  3. 中国最让人脸红的节目:爆火14年的湿身诱惑,为何还没被叫停?
  4. 太畅销了!AirTag送货时间延长至4-5周
  5. 华为P50相机新升级:或首发索尼最大底手机CMOS
  6. 聚划算的夜场新生意 “三叉戟”打通夜间消费命脉
  7. 京东金融回应用户遭盗刷:系用户点击假冒链接 输短信验证码致密码泄露
  8. 旷视科技印奇:孜孜不倦做硬件 看好3个应用场景
  9. 官方再曝vivo X30系列拍照新技能:主角光环不虚焦
  10. iQOO Neo 855版首发强悍闪充:4500mAh电池10分钟充至25%