前言
在日常生活中,标签(tag)就如其名称一样,是为了给某些事物做标记,方便下次快速寻找。
在 Git 中,除了 commit id 、提交信息之外,我们还可以给某次提交记录打上一个标签,方便下次快速寻找和定位。标签在 Git 中不是必须的,您可以根据需要选择性地添加,既可以在新提交记录上添加标签,也可以在已有的提交记录上添加标签。
Git 中的...
说明
在采用 merge 方式合并时,不是任何时候都会合并成功,有时会在合并时产生冲突。我们来看如何解决这种合并冲突的问题。
有这样的一个场景:
开发一个项目,大家都是团队协作一起开发。某天,开发人员 A 和测试人员 B 都 clone 了远程代码库,开发人员 A 首先追加了某个文件最后一行的内容,且推送到了远程代码库成功。此时测试人员 B 也编...
简介
一个公司,不管是做 web 开发产品还是app开发产品,极少数是一个人来完成的。拿 JD 电商为例,这样一个庞大的系统涉及到的远不止这些,根据 JD 自己的说法,其投入的研发人员超1.8w人(不含外包)。
每个开发人员都负责自己的那部分模块的代码,并将修改后的代码提交到主分支之外的分支上,负责人再将修改后的代码进行合并。一些 bug、功能、性...
前述
本文延伸自 DIY NAS系列34 — 在线音乐流媒体 – Rocky Linux,旨在实现统一的音乐管理功能。是否曾在使用小爱音箱时,遇到播放一首音乐却被提醒需要开通音乐会员听全曲的情况?本文将介绍如何让小爱音箱播放存储在 NAS 上的音乐,实现听歌自由。
这里使用的开源解决方案是 GitHub - hanxi/xiaomusic。其基本逻...
前言
本文档您将学习如何使用 Git 进行版本回退以及日志方面的查看。
commit id
在版本回退之前,您需要知道 commit id,commit id 指的是每一次提交之后,都会有一个 ID 号作为标识,例如我这三次的提交:
PS > cd E:\git-test\
PS > git log
commit 47d9368938...
内容说明
在 Git 中,可以使用 .gitignore 文件来忽略哪些文件不需要进行跟踪。该文件的内容格式说明:
所有空行不匹配任何文件或目录,仅作为内容的分隔符来方便阅读
以 "#" 开头的行表示注释
每一行都表示一个忽略规则(模式匹配)
冲突的内容可使用 "\" 进行转义。比如以 "#&qu...
前面我们说所谓的 **版本控制**,其实指对文件历史版本修改的控制,因此了解文件的状态非常重要。
在 Git 中,有这么几种文件状态:
基本理论
在学习 Git 之前,我们需要了解 Git 的结构,因为我们使用的绝大多数 git 命令都围绕着这几个结构展开:
在本地的计算机中,Git 拥有三个工作区域:
工作目录(Workspace,工作区) - 即本地存放代码和项目的一个目录
暂存区(Stage/Index) - 如同其名字一样,表示临时存放项目代码改动的区域,其本质是一个简...
说明
以下的操作与配置仅针对新安装的用户,这些配置只需要配置一次即可。
初始配置
Git 安装成功后,有 git config 命令工具来帮助我们设置 Git 的一些配置项,该命令的常用选项有:
--system - 系统配置文件,针对任意登录操作系统的用户都生效。在 Windows 中,这里的配置修改对应于 Git 安装目录下面的 /etc/g...
有许多做开发的同学都听说过 Git,聊 Git,就需要明白一个概念----**版本控制**。所谓的 **版本控制** 就是指一种在开发过程中用于管理对文件、目录、工程、代码等内容的修改历史,可以很方便地回滚、备份与查看历史等。这样做的好处有: