版本管理工具GIT篇

一、版本管理工具干什么用的?

  1. 备份文件 作用同U盘 网盘

    1. 保存每天的成果   若是本地文件丢失 损坏  找备份
    2. 如 打游戏时候的存档
  1. 记录历史

    1. 网盘 U盘存储的是文件最新状态  历史操作没有
    2. 作用同 history命令 找到历史操作的版本  记录 修改时间 修改内容等(提交时候的备注)
  1. 回滚到历史版本

    1. 若是当前提交了不想要的操作  可以找到历史版本 把状态恢复到之前操作过的任意历史的状态
  1. 托管文件可以多端共享

    1. 效果类似于 icloud云备份  可以在不同的设备上 拿到相同的文件
    2. 场景一在公司提交了代码之后  回到家 登陆自己的账户  pull 到本地
    3. 管理员创建仓库 搭建好项目环境之后 团队成员 pull到自己的设备  共同开发

二、版本管理工具发展历史

三、GIT下载和安装

  1. 安装GIT环境---windows

    1. 下载客户端 https://desktop.github.com/

  1. 安装

  1. 安装GIT环境---Linux

    1. CentOS下  软件包管理器

  1. git --help 查看帮助

  1. untu下安装 同理 apt-get -update 更新源   apt-get install git 安装git

  1. Git --help查看帮助

四、注册账户

  1. 登录官网

  1. 注册

  1. 选择套餐

  1. 发送验证邮件

  1. 登录帐号  看到自己的项目

五、新建一个项目

  1. 注意点

  1. 创建完成

六、Linux下检出项目到本地

  1. Clone or download

  1. 克隆到本地

  1. 检出到本地之后  可以在本地工作区 开发 提交...

七、Linux环境下第一次提交项目

  1. 工作区修改文件 wq保存退出

  1. git status 查看工作区状态

  1. git add 对文件建立 跟踪  查看状态

  1. git commit 提交

  1. 提交之后  git status查看工作区状态   (目前只是在本地工作区的操作 还未提交到github)

  1. git push到 远程github上

  1. 登录github查看   推送成功

八、windows环境下检出项目和提交项目

  1. 安装好本地客户端之后  登录 本地客户端  在github上

  1. 选择本地工作区目录

  1. 克隆到本地之后

  1. 在本地 编辑器打开文件

  1. 本地新建文件  编辑

  1. 本地工作区修改文件  提交 同步

  1. 同步到github

九、关于代码冲突

  1. 解决冲突 团队合作 代码冲突 工具无法判断 取舍

    1. Linux下如何解决冲突

a) git pull 把最新的代码拉下来 合并冲突

b) git status 查看当前工作区状态

c) 查看变更记录 git diff

d) 打开冲突文件  人为解决冲突

e) 本地工作区解决完冲突之后     git status   git add  git commit       git push  推送到github

f) 如果有后续操作  本地工作区 需要先将git pull 将远程上的最新的文件拉到本地 再进行后续操作

  1. Windows下如何解决冲突?

a) windows下冲突

b) 本地编辑器打开冲突文件  先手动解决冲突

c) 同步

或者是

十、回滚到历史版本

a) 场景:新老同事 最新版本的代码如果修复的话代价太大  直接恢复到之前的版本

b) 回滚

  1. git log 查看文件历史提交

  1. 需要回滚到哪个时间点  复制commit id  git reset --hard commit id

hard:是当前版本的指针 这个指针指向哪个时间点的 commit id 就相当于代码回退到那个时间点的状态

  1. git reflog 列出当前版本之前的所有版本号

  1. 还原到最新版本

十一、建立里程碑  (软件上的版本号)

  1. 里程碑:软件上的版本号 每一个版本号表示一段开发的完结 以及下一阶段工作的开始 软件发布之后 会带着对应的版本号
  2. 建立里程碑 方便于把一个完整的软件发布出去 也方便于快速的定位某一个版本的某个问题
    1. 登录github

  1. 后期维护的时候 找到对应的版本 可以下载源码 可以回退等等

十二、分支开发之分支合并

  1. 应用场景:新反馈了一个bug但是当前master(主)分支已经推送了新的功能的代码 于是呢  就不能在主分支发布 有可能把没测试过的代码带到外面去 创建新的分支 以已经发布的代码为基础修复bug 修复之后 再合并分支
  2. 创建新的分支 当前工作区切换到分支

  1. merge 合并分支

十三、分支开发之分支合并

十四、关于多人合作

  1. 多用客户端和工具 少用命令行 除非是在Linux服务器上直接开发
  2. 每次提交前 diff自己的代码 以免提交错误的代码
  3. 下班回家前 整理好自己的工作区(哪些代码是必须的  哪些是调试代码等等)
  4. 并行的项目  使用分支开发
  5. 遇到冲突的时候  搞明白冲突的原因 千万不要随意的丢弃别人的代码
  6. 产品发布之后 记得打tag 方便将来拉分支修bug

转载于:https://www.cnblogs.com/donglingjiu/p/9099347.html

版本管理工具GIT篇相关推荐

  1. 版本管理工具Git(2)git的使用

    上一篇带大家认识了Git,在本篇中将讲解Git的安装及使用: Git系列导航 版本管理工具Git(1)带你认识git 版本管理工具Git(2)git的安装及使用 版本管理工具Git(3)VS下如何使用 ...

  2. 从命令行到IDE,版本管理工具Git详解(远程仓库创建+命令行讲解+IDEA集成使用)

    首先,Git已经并不只是GitHub,而是所有基于Git的平台,只要在你的电脑上面下载了Git,你就可以通过Git去管理"基于Git的平台"上的代码,常用的平台有GitHub.Gi ...

  3. 版本管理工具-Git

    版本管理工具-Git 在我们学习编程的时候,一个项目的代码量很多,同事之间各司其职,这个时候统一项目的代码,完善项目的流程就非常重要了,像Git,Svn都是非常棒的项目管理工具,以下总结一下相关的简单 ...

  4. git管理工具 linux,linux系统下使用流行的版本管理工具 Git

    前几天被版本管理困扰了好久,主要是因为 没法回到之前的版本,新版本又出了问题真的很尴尬. 终于决定使用目前网上很火的版本管理工具-------Git 历史啥的就不说了,说些有用的. 我用的是oschi ...

  5. 版本管理工具git和TortoiseGit

    版本管理工具git     git用于管理代码版本,可从官网下载.使用教程网上一搜很多,以及官网也有详细的说明.主要就是Add,push,pull等命令操作.git和远程仓库配合使用,可以保存,管理我 ...

  6. [转]Windows环境中使用版本管理工具 Git

    Git 是一个分布式版本控制工具 Git --- The stupid content tracker(傻瓜内容跟踪器),Linus 是这样给我们介绍 Git 的. Git 是用于 Linux 内核开 ...

  7. 代码版本管理工具Git

    Git 的发展历史 在做一个项目工程的时候,代码总是不断地更新,于是你就可能一边写代码,一边就为你的代码创建了很多的版本文件夹,分别叫"项目 0.1"."项目 0.2&q ...

  8. 【Linux】版本管理工具 Git

    目录 一.什么是 Git 二.如何使用 Git 1.创建远程仓库 2.将远端仓库克隆到本地 3.将本地文件添加到仓库 3.1.三板斧第一招:文件添加 3.2.三板斧第二招:提交本地 3.3.三板斧第三 ...

  9. 实验室培训(一)—— 版本管理工具git

    1.什么Git Git是分布式的版本管理工具,在实际项目管理中起到非常重要的作用. 思考1:什么是版本管理工具?为什么要使用版本管理工具? 答:了解版本控制. 2.版本控制 版本控制(Revision ...

最新文章

  1. Keras【Deep Learning With Python】更优模型探索Keras实现LSTM
  2. 我在学python-你们以为我在学C加加?其实我在学Python!人生苦短!
  3. leetcode [114]Flatten Binary Tree to Linked List
  4. CTFshow 文件包含 web80
  5. linux下挂载iso镜像的方法
  6. 【转】iOS编译OpenSSL静态库(使用脚本自动编译)
  7. pandas后台导出excel_pandas导出Excel表格,银行卡号、身份证号无法正常显示的问题,该怎么解决?...
  8. python qt listview如何显示图片_python如何导入图片
  9. python 深浅拷贝案例_python(深浅拷贝)
  10. vba替换字符串中的字符_R语言 | 字符串替换
  11. 一年级计算机课程视频教程,一年级视频教程_一年级免费学习视频大全
  12. 个人网页LOGO设计(作业)
  13. bat自动输入密码_如何给电脑文件夹设置密码?一学就会
  14. 第八周助教工作总结——NWNU李泓毅
  15. 七牛云获取token中的bucket是什么?
  16. 微信小程序使用image组件显示图片的方法
  17. 如何让论文中的图进行自动编号
  18. 查看、修改oracle字符集,查看oracle版本
  19. 巴斯卡(Pascal)三角形
  20. GBase 8a账号管理

热门文章

  1. 计算机存储健,电脑健盘关机是什么健
  2. 动态更改水晶报表背景图片
  3. 计算机等级考试高低,等级考试分数的高低,最终还是要回归到“选科”问题
  4. [附源码]计算机毕业设计JAVAjsp文具销售系统
  5. ubuntu 搭建ESP8266开发环境
  6. OPENSSL证书制作与浏览器认证
  7. unity 动画结束 后处理事件
  8. Python笔记day40(并发)|守护线程、线程锁、信号量、事件、条件、定时器、队列、线程池
  9. CefSharp初识--把网页移到桌面
  10. 课堂练习12 继承与多态