当前位置:

首页 > 系统应用 > 1.5.1 Git使用教程之本地仓库的基本操作

1.5.1 Git使用教程之本地仓库的基本操作

Git是什么? 一个分布式版本控制系统,和SVN类似,但远比SVN强大的一个版本控制系统 ①Git可以方便的在本地进行版本管理,如同你本地有一个版本管理服务器一样 我们可以选择在合适的时间将本地版本推送到统一的版本管理服务器 ②Git每次会提取整个代码仓库的完整镜像,相当于对整个代码仓库都进行了一次

本文目录

    Git是什么?

    一个分布式版本控制系统,和SVN类似,但远比SVN强大的一个版本控制系统 ①Git可以方便的在本地进行版本管理,如同你本地有一个版本管理服务器一样 我们可以选择在合适的时间将本地版本推送到统一的版本管理服务器 ②Git每次会提取整个代码仓库的完整镜像,相当于对整个代码仓库都进行了一次备份,这样计时版本服务器除了问题,我们可以直接采用本地仓库恢复!结合本地版本管理功能,远程版本管理服务器出问题了,我们依然能继续写自己的代码,当他恢复的时候我们再提交我们的本地版本! Git研发初期是为了更好的管理Linux内核,不过现在已经广泛应用于各种项目中!

    安装Git

    如果你的系统是Linux的话,直接打开shell输入:

    sudo apt-get install git

    当然,大部分的系统估计都是Windows,这就需要我们到网上下载一个Git For Window了,可到下述网站下载: https://git-for-windows.github.io/ 点击 Download,跳转到 Github ,下载对应安装包即可!

    点击后进入页面,下载如下文件即可

    或者直接下载目前最新版2.7.0: v2.7.0.windows.1 接着傻瓜式的下一步就可以了~ 接下来你可以找到Git Gui然后开始玩Git,不过如果以后换到其他平台上,没有图形化界面你就寸步难行了! So,如果你有兴趣的话,我们来玩命令行,以后换了系统也能正常的玩Git!

    玩转Git命令行

    当然Git肯定是搭配着GitHub玩才够味的,不过先来学习一些本地的指令先把! 当你安装完Git后我们可以在任意位置右键,点击Git bash打开我们的Git命令行! 你可以可以点击Git Init Here直接在当前目录下创建一个代码仓库,又或者点击Git Gui打开Gui的图形操作页面!

    1.创建代码仓库

    Step 1:先配置下我们的身份吧,这样在提交代码的时候Git就可以知道是谁提交的,命令如下:

    git config --global user.name "coder-pig"
    git config --global user.email "779878443@qq.com"

    配置完成后,我们可以再次输入,不包括名称,可以看到我们已经配置成功了

    Step 2:找个地方创建我们的代码仓库,然后我创建了一个新的项目:TestForGit,来到工程的目录下,右键,打开我们的Git Bash,键入下述指令完成代码仓库的建立!另外这个代码仓库其实是用来保存版本管理所需的一些信息,我们本地提交的代码都会提交到代码仓库中,于是乎我们可以选择还原到某个版本,当然,如果需要的话,我们还可以将保存在代码仓库中的代码推送那个到远程仓库中!比如GitHub!

    git init

    一个简单的代码,代码仓库就创建完毕了!继续输入:ls - al可以看到下目录下有个.git的文件夹就是他了!

    也可以打开工程目录,同样看也看到.git文件夹;如果我们想删除代码仓库只需把这个文件夹删掉即可!

    2.提交本地代码

    创建完代码仓库,接下来说下如何提交代码,我们是先用add命令把要提交的内容都加进来,然后commit才是真的去执行提交操作!命令例子如下,你可以一次次慢慢添加,当然也可以全部提交,直接git add .即可完成! 我们现在工程目录下创建一个readme.txt的文件试试,随便写点东西,然后依次输入下述指令:

     git add readme.txt
     git commit -m "Wrote a readme file"

    输入命令试试:

    当然,也可以先把多个文件统一 add 进去,再一次性 commit。可一旦改动的文件很多,通常会直接用 git add . 全部加入。不过这里有个前提:有些文件或目录本来就没必要提交,比如长期几乎不变的内容,或者自动生成的文件,像 lib、gen、bin 这些文件夹就很典型。更稳妥的做法,是在代码仓库根目录新建一个名为 .gitignore 的文件,然后在里面写好规则,把不需要提交的文件统一忽略掉。

    接着输入要提交时忽略的文件内容即可!

    这样一来,执行 git add . 的时候,这里的文件就不会被 add 进去了。另外,很多人会觉得 commit 后面再写个 -m "xxx" 挺麻烦,想省掉这一步,但这句提交说明还是尽量别偷懒。它记录的就是这次提交到底改了什么、补了什么。道理其实和写代码注释差不多:当下觉得没必要,过几天再回头看,很可能连自己当时改了些什么都想不起来。

    3.查看修改内容

    好吧,前面我们用git add提交了整个项目到本地仓库,接下来我们改点东西,然后使用git status可以查看 修改的部分,比如,我们删掉MainActivity.java里的菜单的代码以及多余的菜单相关的包!

    他就会提示我们哪些文件发生了改变,但是还没有提交,如果我们想看下具体更改了什么,我们可以用到git diff命令,另外,按Q可以退回命令行输入!

    4.查看提交记录

    当然随着我们项目的深入,Commit的次数也会越来越多,可能你早已忘记每次提交都修改了什么内容, 没事,Git帮你记着呢,使用git log即可查看历史提交信息!键入

    git log

    回车:

    我们取其中一小部分来分析:

    commit defd8af52be5183dfceb3e5cf23f78ea47d013b0
    Author: coder-pig <779878443@qq.com>
    Date:   Fri Jun 19 17:00:36 2015 +0800
    MainActivity Delete Menu

    依次是:

    • 此次提交对应的版本号
    • 提交人:姓名 邮箱
    • 提交的时间
    • 提交版本修改的内容:就是我们commit -m "xxx"里的xxx

    5.撤销未提交的修改

    比如我们刚提交了一个版本,然后又乱七八糟地写了一堆东西,突然发现不小心误删了一些东西,然后ctrl + s保存了,这个时候是不是欲哭无泪,不过有Git,只需一个checkout命令即可撤销更改,当然是你还没add的情况,比如我们在MainActivity里随便添加一条语句,然后ctrl + s保存代码!

    然后命令行键入:git diff:

    嗯,这里可以看到我们改的内容,我们可以回去把这句代码删掉,但是如果改的有上千行你怎么改, 于是乎这个时候我们可以使用

    git checkout src/com/jay/example/testforgit/MainActivity.java

    然后会神奇的发现,我们新写的代码没了!duang一下就没了,不信你可以自己试试

    当然,如果我们已经add了的话,那么checkout是没任何作用的,我们要先取消添加才可以撤回提交,使用下述指令:

    git reset HEAD src/com/jay/example/testforgit/MainActivity.java
    git checkout src/com/jay/example/testforgit/MainActivity.java

    6.版本回退

    第五点我们教了大家撤销未提交的修改,但加入提交了,我们想回退到之前的某一个版本怎么办? 第四点中我们可以通过git log查看我们的提交记录,我们需要从这里获取一个版本号, 一般我们只需要前七位字符就够了;另外在Git中,用HEAD代表当前版本,上一个版本就是HEAD^, 再上一个版本就是HEAD^^依次类推!我们先Git Log看下版本历史先!

    我们回到前一个提交的版本吧,依次键入下述指令:

     git reset --hard HEAD
     git reset --hard HEAD^
     git log

    这时看下我们的控制台:

    可以看到我们已经回退到了前一个版本了,当然你可以直接这样写:

    git reset --hard ad2080c

    就是这么简单!回退后,你突然后悔了,想回退回新的那个版本, 可是遗憾的是,你键入git log却发现没有了最新的那个版本号,这怎么办呢... 没事,Git中给你提供了这颗"后悔药",Git记录着你输入的每一条指令呢!键入:

    git reflog

    你会发现,版本号就在这里:

    然后键入:

    git reset --hard ad2080c

    可以看到我们又回到了最新的那个版本了,就是这么溜!

    7.本节小节

    本节给大家介绍了项目管理工具Git来管理我们的本地仓库,学习了一些基本的命令行操作,相信会给你的项目开发带来便利,当然本地远远是不够的,下一节我们将学习如何将我们的项目托管到GitHub上!敬请期待~

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    系统应用 使用教程
    相关文章 更多
    灵活计算器主题切换与界面定制方法
    灵活计算器主题切换与界面定制方法

    学习如何自定义灵活计算器的外观与交互。从切换深浅色主题、调整数字字号与间距,到开启公式高亮和优化键盘布局,按步骤打造适合个人习惯的计算界面,提升长页面阅读与输入效率。

    Tftpd32怎么使用- Tftpd32使用教程详解
    Tftpd32怎么使用- Tftpd32使用教程详解

    要说网络环境下的文件传输工具,tftpd32绝对算得上是个经典角色。它虽然体积不大,但在文件共享和网络配置场景中相当能打。接下来就一步步拆解它的用法,从下载到高级功能,争取让每个人都能快速上手。 一、软件下载与安装 先搞定最基础的一步:从官网或靠谱的软件分发平台把安装包下载下来。双击运行,接下来的事

    iPhone14
    iPhone14

    iPhone 14 Pro的家庭控制功能,已经成了许多智能家庭的中枢神经系统。它通过家庭App,把五花八门的智能设备拧成一股绳,无论是自动化场景还是精细的权限管理,都实实在在地提升了居家生活的便利与安全感。 iPhone14 Pro家庭控制功能解析 说iPhone 14 Pro的家庭控制是苹果生态的

    云支付扫码枪怎么配对?收银硬件连接使用教程
    云支付扫码枪怎么配对?收银硬件连接使用教程

    必须先完成配对——不配对的扫码枪插USB也没反应;需确认类型、连接底座、安装驱动、扫描配对码、收银软件启用并测试,最后绑定云支付账户。要让云支付扫码枪真正用起来,必须先完成配对——不配对的扫码枪只能当摆设,插上USB也没反应,收银时扫不出任何数据。 确认扫码枪类型与底座连接 先看你的扫码枪是不是带底

    光速虚拟机新手入门使用教程指南
    光速虚拟机新手入门使用教程指南

    光速虚拟机操作指南:先点击首页“新建虚拟机”,一次性授权三项权限,进入VM-001桌面;右下角“导入导出”中勾选应用一键导入;主界面“我的”页零金币兑换Root;应用内启小窗模式,设置中开启“息屏挂机”保后台。刚把光速虚拟机下载下来,却一时不知道该从哪里下手?界面上按钮不少,随便点又怕出错;新建完虚

    daemon tools3.47的安装与使用教程
    daemon tools3.47的安装与使用教程

    DaemonTools3.47是一款经典的虚拟光驱软件,用于装载ISO等光盘镜像文件。其安装过程简单,需同意安装虚拟驱动。软件通过主界面或托盘图标可快速装载镜像,模拟真实光驱访问内容。它支持多虚拟设备和多种格式,适用于运行老旧软件或游戏。需注意系统兼容性与镜像文件合法性。

    md5码校验工具的基本使用教程
    md5码校验工具的基本使用教程

    MD5校验码是文件的“数字指纹”,用于验证其完整性与真实性。文件内容任何微小改动都会导致MD5值完全不同。用户需选择合适的校验工具,通过计算文件MD5值并与官方提供的正确值比对,即可确认文件是否被损坏或篡改。若值不匹配,应重新下载并校验。对于高安全需求,建议结合SHA-256等更安全的算法。

    初学者入门 xfce 系统平台使用教程
    初学者入门 xfce 系统平台使用教程

    XFCE是一款轻量、快速且高度可定制的Linux桌面环境,适合新手与资源有限的设备。它提供简洁的界面和核心组件,用户可深度个性化外观与功能。日常软件管理和系统维护需借助发行版工具及设置管理器,遇到问题建议查阅官方文档与社区论坛。

    talkmaker使用教程
    talkmaker使用教程

    Talkmaker智能交互神器功能强大,操作简单。使用教程:点击底部“我的”进入,再点右上角“+”创建人物,可自定义头像、昵称和介绍。推荐尝试AI互动功能,选择“做饭”选项可自主创作内容,完成后即可在聊天界面直接对话。

    Windy气象怎么测量距离?地图测距工具使用教程
    Windy气象怎么测量距离?地图测距工具使用教程

    Windy气象软件内置测距工具,通过点击地图右上角菜单启用。在地图上单击标点,可测量直线或折线距离,最多支持10个节点。点击左下角数值清除测距,长按非首尾点可拖动调整,双击末点删除端点。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。