程序员必备 —— Git
程序员必备 —— Git
- 1. Git 介绍
- 2. Git 实战
- 2.1 初识(初始化及简单使用)
- 2.2 回滚
- 2.3 修复线上紧急 bug 思路
- 2.4 分布式开发
- 2.5 rebase 的应用
- 2.6 命令总结
1. Git 介绍
Git 是一个开源的分布式版本控制系统。
2. Git 实战
2.1 初识(初始化及简单使用)
- 进入待管理的目录
- 执行初始化指令:
git init
- 管理指定文件:
git add 文件名 git add .
- 个人信息配置(仅需配置一次)
git config --global user.email "your email address" git config --global user.name "your name"
- 生产版本:
git commit -m '描述信息'
git 整体工作流程如下图:
2.2 回滚
- 回滚至之前的版本:
git log git reset --hard 版本号
- 回滚至之后的版本:
git reflog git reset --hard 版本号
2.3 修复线上紧急 bug 思路
- 使用 git stash 将当前分支未提交的代码保存起来
git stash save "摘要标签"
- 开启缺陷修复分支
git checkout -b "bugfix"
- 修复完合并到 master 分支,需要先切换到待合并到的分支,然后执行
git merge 分支名
,比如想把 bugfix 分支合并到 master 分支git checkout master git merge bugfix
- 合并时可能产生冲突,需要手动解决冲突
- 手动删除 bugfix 分支
git branch -d 待删除的分支名称
- 利用
git stash pop
命令将代码恢复,继续进行修复 bug 之前的开发工作。
2.4 分布式开发
- 给远程仓库起别名
git remote add 远程仓库名称 远程仓库地址
- 向远程推送代码
git push -u 远程仓库名称 分支
- 克隆远程仓库代码
git clone 远程仓库地址
- 在家/公司继续写代码
# 1. 切换到 dev 分支
git checkout dev
# 2. 拉取代码
git pull origin dev
# 3. 继续开发# 4. 提交代码
git add .
git commit -m 'xxx'
git push origin dev
- 开发完成要上线
# 1. 将 dev 分支合并到 master, 进行上线
git checkout master
git merge dev
git push origin master# 2. 把 dev 分支也推送到远程
git checkout dev
git merge master
git push origin dev
2.5 rebase 的应用
- 把多次提交(未 push 到远程仓库的 commit)合并为一个提交
git rebase -i HEAD~3 (把从 HEAD 开始的最近 3 条提交记录合并)
2.6 命令总结
- 添加远程连接(别名):
git remote add origin 地址
- 推送代码:
git push origin dev
- 下载代码:
git clone 地址
- 拉取代码:
git pull origin dev
等价于git fetch origin
+git merge origin/dev
- 保持代码提交整洁(变基):
git rebase 分支
- 记录图形展示:
git log --graph --pretty=format:"%h %s"
程序员必备 —— Git相关推荐
- 程序员必备git客户端PortableGit-2.34.0-64-bit.7z.exe
支持windows各个版本,绿色免安装,程序员必备,国内大公司必用. PortableGit-2.34.0-64-bit.7z.exe - 文件下载http://kaka263.com/ft-9446 ...
- 程序员必备 Git 分支开发规范指南
Git 是目前最流行的源代码管理工具.为规范开发,保持代码提交记录以及 git 分支结构清晰,方便后续维护,现规范 git 的相关操作. 分支管理 分支命名 master 分支 master 为主分支 ...
- 程序员必备的20个软件
此文首发于我的个人博客:windows-程序员必备的20个软件 - zhang0peter的个人博客 我自己基本上每半年左右就要重装一次win10系统,所以我在这么多次的重装系统的过程中总结了如下这些 ...
- git 小乌龟 更新分支_时光机--git--现代程序员必备的星舰
编程错一个代码.文字就乱套了,并且文档特别多之后,你会忘记哪里做了改动,后来有了svn,svn碰到了很多问题,后来有了git. 这都是时光机,git已经全面取代svn. git是现代程序员必备的星舰, ...
- 程序员必备小知识: 管理代码分支(git merge)
文章目录 引言 I 管理代码分支 1.1 分支合并到主干并打tag 1.2 更新主干代码到分支 1.3 其他必备小知识 II 常用小技能 2.1 Git用户名邮箱设置 2.2 git stash se ...
- 十大PHP程序员必备工具
十大PHP程序员必备工具 1.Notepad++ 总结来说就是小而精,7.4版本的软件包只有2.9M,比一般的IDE小数十倍,但是Notepad++的功能确是很全面的,代码高亮,语法折叠,宏功能,内置 ...
- 后端程序员必备的 Linux 基础知识
后端程序员必备的 Linux 基础知识 原文来自github stars>63k的项目JavaGuide,欢迎小伙伴去支持原作者 一 从认识操作系统开始 1.1 操作系统简介 1.2 操作系统简 ...
- 程序员必备的6款工具软件,炒鸡实用!
都说程序员的电脑上有各种各样的软件工具.编辑器.插件等等,不同岗位的程序员使用的工具也不同. 今天就给大家分享6款程序员必备的工具软件,看看有没有你常用的! 6款程序员必备工具软件 1 oh-my-z ...
- 11个程序员必备简捷开发辅助工具
程序员必备简捷开发辅助工具总结 写在前面: 工欲善其事必先利其器,拥有简捷的开发辅助工具能大大提高我们程序猿的开发效率.Melo刚到学校就给大家总结了一些常用的辅助开发的工具,希望大家能喜欢,闲话不多 ...
最新文章
- mysql5.7主从搭建
- 马腾宇的AI学术历程:做科研要考虑长期的影响力
- 0801 am使用tp框架对数据库增删改查
- Mybatis使用statementType=STATEMENT实现动态传入表名或字段名
- vue中集合取第一个_快速学习Vue框架(知识点集合)
- java中workFlowEvent_防止线程在java中重复处理
- 微信小程序srt_微信小程序微商城(八):缓存实现商品购物车功能
- Error: Could not open connection to jdbc:hive2://master:10000: java.net.ConnectException: Connection
- PTP(IEEE1588),TSN时间同步方法
- windows 系统 system 进程占用80端口
- 在Ubuntu上安装KDE(Kubuntu)
- 纯干货!盘点各行业程序员必备技能
- mysql time over_mysql启动失败错误mysqld.service holdoff time over, scheduling restart.
- 网站被黑 怎么检测代码含有后门
- ZZULIOJ.1102: 火车票退票费计算(函数专题)
- 前端技术猜想-2018
- 装linux系统的工具箱,PE,Dos工具箱,自动安装linux的U盘制作
- AI × OCR:腾讯文档表格图像识别技术实践
- 一文梳理 | 电力企业网络安全管理及等级保护工作重点
- gaussdb200 数据导入
热门文章
- 全球与中国聚 (3,4-亚乙基二氧噻吩) (PEDOT)市场“十四五”规划及远景目标的建议报告2022-2028年
- 东辉职校计算机专业录取分数线,2016年上海东辉职校录取分数
- 艾美捷RPMI-1640培养基含L-谷氨酰胺的功能和研究
- ZZULIOJ-1075,聚餐人数统计(Python)
- 小程序开发特辑—小程序申请及开发环境搭建
- 替代DRV8825的打印机/扫描仪驱动芯片TMI8420
- STM32和ROS串口通信常见问题汇总答疑
- php判断数组的值是否为空,PHP判断数组(多维数组)值是否为空
- [免费专栏] Android安全之检测APK中调试代码是否暴露敏感信息
- Redis三种启动方式(Linux)