IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> hadoop git总结 -> 正文阅读

[开发工具]hadoop git总结

  1. 版本控制系统
    1. 什么是vcs
      1. Version control system的简称,是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统
    2. Vcs的发展
      1. 本地vcs
        1. 手工即可
      2. 集中式VCS
        1. Cvs,svn
      3. 分布式VCS
        1. Git,bitkeeper,Mercurial
  2. Git工作原理
    1. Git是什么
      1. 开源的分布式版本控制系统 ,去中心化.
      2. 大小项目均可以灵活管理,参与开发人员比较灵活.
      3. Linux的代码管理工具bitkeeper不适合开源社区,故Torvalds推出了GIT
    2. 工作原理
      1. 工作构架:

远程仓库(中心服务器)←→本地仓库(本地)←→暂存区(本地)←→工作目录(本地)

    1. 工作流程图

    1. Git与其他VCS(version control system)对比
      1. 架构设计不同
        1. 老VCS主要是cvs,svn,都是集中式的
      2. 分支管理
        1. 先有项目,后又分支,后有版本,分支的范围比版本要高一级
        2. Git的分支只要不提交合并,对别人没任何影响
        3. Svn的分支是完整的目录,你改了svn的分支,所有人的分支都随你而变
        4. 分支命名:git的分支在本地和远程是自由匹配,而svn全局统一的
      3. 内部数据存储方式
        1. 老vcs是以按文件为单位来存储元数据,git同意存储管理元数据,存放在称为.git的目录内
      4. Git与github关系
        1. Git是一个分布式的版本控制系统,最初应该用在Linux源码协同开发中
        2. GitHub是一个基于git的项目托管平台,提供web界面,可以在上面创建资源仓库来存放的项目
      5. GitHub的同类产品
        1. GitLab:相当于私人版的github,多用于企业内部开发人员的代码版本管理
        2. Gitee(Git@OSC):相当于国内的github
        3. CSDNgit:相当于国内的github
        4. Bitbucket
  1. Git shell应用
    1. Linux git shell安装
      1. Git安装

Yum install git

      1. Git配置

Git config --global user.name “YourName”

Git config –-global user.email “YourEmail”

    1. Git命令
      1. 创建本地版本库

Cd ~ //进入到家目录

Mkdir local_repo//创建文件夹,作为版本仓库的目标目录

Cd local_repo//进入新创建的文件夹

Mkdir FirstGit//在根目录下,创建第一个要进行git版本管理的文件夹

Cd FirstGit//进入项目所在的文件夹

Git init//创建本地git

      1. 创建待git管理的文件

Touch input.txt

Echo “I am a new file, I will be added to git vcs”>input.txt

      1. 将文件添加到代码库

git add input.txt//提交文件到缓存区

git commit -m “first commit”//提交文件到本地库

      1. 查看版本仓库状态

Git status

      1. 查看具体的差异点

比较-工作区和缓存区差异

Git diff working_file_path

比较-缓存区和本地仓库差异

Git diff –-cached input.txt

比较-工作区和本地仓库差异

Git diff HEAD input.txt

提交之前的变化文档input.txt

Git add input.txt

Git commit -m “Second commit”

再次git status 查看状态

???????????????????? git 日志查看

???????????????????? git log

???????????????????? 查看分支的所有操作记录

???????????????????? Git reflog

    1. 版本回退
      1. 回退到当前版本的上一个版本

Git reset –-hard HEAD^//回到当前版本的上一个版本

Git reset --hard HEAD@{1}//回到指定版本

    1. 撤销修改
      1. 场景一:工作空间文件已修改(但此文件已加入到版本库管理),但没有add到缓存区
        1. 手动还原已修改的文件.---最原始的方法
        2. 用版本库中复原工作区的文件

Git checkout –-filelpath//将版本库中的指定文件覆盖掉工作区中的指定文件

      1. 场景二:工作空间已修改(曾经被添加到版本库中),已添加到缓存区,但没有添加到版本库

Git reset HEAD filepath//将改filepath对应的缓存区的内容删除掉,对工作区没有任何改动相当于回到了场景一,再进行get checkout---filepath

      1. 场景三:工作空间已修改,已经添加到缓存区,且已添加到版本库,但没有推到远程库

直接按版本回退来处理即可

?????? Git reset ---hard HEAD^

?????? Git reset ---hard HEAD@{1}

      1. 场景四:rm -rf误删某文件的还原

Rm -rf filepath //在工作目录中误删某个文件

Git checkout ---filepath //将版本库中的文件还原到误删的文件中

      1. 场景五:git rm 误删git文件的还原,并没有commit提交

Git reset HEAD filepath//将该文件在缓存区的删除操作移除掉

Git checkout ---filepath//从缓存区移除对该文件操作后,即可按应用场景4的操作还原

    1. 远程仓库操作
      1. 关联远程仓库
        1. 在gitlab web界面中,先创建组
        2. 在组内,创建自己的项目
        3. 在本地仓库远程仓库添加别名

git remot add远程仓库名[url]

        1. 查看远程仓库信息

git remot //显示远程仓库的关联分支

git remot -v //查看远程仓库的详细信息,显示远程的操作权限,fetch和push权限

        1. 推送本地仓库到远程库
        2. Git push[remote-name][local-branch-name]:[remote-branch-name]
    1. 从远程库同步数据到本地库(协作开发)

Git clone[url]

Git fetch:从远程把数据拉取到本机

Git merge:将拉去过来的数据合并到本地仓库分支中

Git merge FRTCH_HEAD

    1. 分支管理
      1. 什么是分支
        1. 针对不同用途或重大更新,给项目起的不同用途的名字,用以显示区分各个项目版本之间的不同

Git branch//查看分支

Git branch -r//查看远程分支

Git branch -a//查看所有分支

创建分支与切换分支:

Git branch branchName//创建分支

Git checkout branchName//切换分支

      1. 分支的作用

Git checkout -b dev//创建并切换分支

        1. 为了更好、更清晰、更简洁、更专业的版本迭代、开发效率提升而应用
      1. 分支设计
        1. Master分支:存放的均是项目最稳定的代码,用于直接发布、构建、部署运行
        2. Developer分支—开发团队
        3. Test分支—测试团队
        4. 临时分支—一些新增、临时的特性或功能开发
      2. 分支操作
        1. 查看本地分支
        2. 查看远程分支
        3. 查看所有分支
        4. 创建分支与切换分支
        5. 创建并切换分支
        6. 删掉分支
        7. 推送新的分支到远程
      3. 分支合并
        1. 正常合并
    1. 冲突合并
      1. 冲突原因
        1. 当多个分支或者多个开发者,同时修改相同的文件时,经常会出现合并冲突问题
        2. 构造冲突
        3. 解决冲突
  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-10-24 15:05:58  更:2021-10-24 15:07:48 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 22:45:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码