
Git
文章平均质量分 69
Git 学习笔记
柚咖
这个作者很懒,什么都没留下…
展开
-
Git 学习笔记
笔记链接Git 介绍地址Windows 下安装 Git地址原创 2021-05-07 13:49:50 · 171 阅读 · 0 评论 -
Git 本地篇之移动 HEAD
HEAD 的移动也是我们常用的操作。HEAD 就是一个指针,其指向的对象有两种情况。1. HEAD -> 提交对象 # HEAD 直接指向提交对象2. HEAD -> 分支名 -> 提交对象 # HEAD 指向分支名,分支名指向最后一次提交对象 移动 HEAD 的命令:git checkout <SHA-1>git checkout HEAD[^/~<num>/^<num>]git checkout 分支[^/~<num>原创 2021-08-10 12:17:52 · 6864 阅读 · 0 评论 -
分支练习
学习了本章的知识之后,给大家推荐一个练习平台:Learn Git Branching,这个平台是 GitHub 上提供的一个图形化的 Git 练习平台,它会将我们的每一次提交和分支操作以图形化的形式展示出来,非常形象。 初始时默认有两次提交 C0 和 C1。 其中 main 表示分支名,而 * 表示这是当前分支。提交练习git commit新建分支 要求:新建一个分支 bugFix,并切换到 bugFix 上。# 命令1:git checkout -b bugFix # 新建原创 2021-08-10 10:10:28 · 265 阅读 · 0 评论 -
Git 分支篇之分支衍合
本文转载自Pro Git(中文版) 把一个分支中的修改整合到另一个分支的办法有两种:merge 和 rebase(译注:rebase 的翻译暂定为“衍合”,大家知道就可以了。)。 在本章我们会学习什么是衍合,如何使用衍合,为什么衍合操作如此富有魅力,以及我们应该在什么情况下使用衍合。基本的衍合操作 请回顾之前有关合并的一节,你会看到开发进程分叉到两个不同分支,又各自提交了更新。 之前介绍过,最容易的整合分支的方法是 merge 命令,它会把两个分支最新的快照(C3 和 C4)以及二者.转载 2021-08-09 17:47:57 · 860 阅读 · 0 评论 -
Git 分支篇之远程分支
本文转载自Pro Git(中文版) 远程分支(remote branch)是对远程仓库中的分支的索引。它们是一些无法移动的本地分支;只有在 Git 进行网络交互时才会更新。远程分支就像是书签,提醒着你上次连接远程仓库时上面各分支的位置。 我们用 远程仓库名/分支名 这样的形式表示远程分支。比如我们想看看上次和 origin 仓库进行通讯时 master 分支的样子,就应该查看 origin/master 分支。如果你和同伴一起修复某个问题,但他们先推送了一个 iss53 分支到远程仓库,虽然你可.转载 2021-08-09 14:37:30 · 8571 阅读 · 0 评论 -
Git 分支篇之分支开发的工作流程
本篇文章转载自Pro Git(中文版) 现在我们已经学会了新建分支和合并分支,可以(或应该)用它来做点什么呢?在本节,我们会介绍一些利用分支进行开发的工作流程。而正是由于分支管理的便捷,才衍生出了这类典型的工作模式,你可以根据项目的实际情况选择一种用用看。长期分支 由于 Git 使用简单的三方合并,所以就算在较长一段时间内,反复多次把某个分支合并到另一分支,也不是什么难事。也就是说,你可以同时拥有多个开放的分支,每个分支用于完成特定的任务,随着开发的推进,你可以随时把某个特性分支的成果并到其他.转载 2021-08-09 14:09:25 · 1213 阅读 · 0 评论 -
Git 分支篇之管理分支
本文转载自Pro Git(中文版) 到目前为止,我们已经学会了如何创建分支、删除分支、合并分支。创建分支: git branch <branch_name> ——— 创建指定名字的分支,但创建完之后依旧处于当前分支。 git checkout -b <branch_name> — 创建指定名字的分支,并且切换到新建的这个分支上。切换分支: git checkout <branch_name> —— 切换到指定名字的分支上。删除分支:.转载 2021-08-09 11:35:03 · 157 阅读 · 0 评论 -
Git 分支篇之分支的新建和合并
本文转载自Pro Git(中文版) 现在让我们来看一个简单的分支与合并的例子,实际工作中大体也会用到这样的工作流程:开发某个网站。为实现某个新的需求,创建一个分支。在这个分支上开展工作。 假设此时,你突然接到一个电话说有个很严重的问题需要紧急修补,那么可以按照下面的方式处理:返回到原先已经发布到生产服务器上的分支。为这次紧急修补建立一个新分支,并在其中修复问题。通过测试后,回到生产服务器所在的分支,将修补分支合并进来,然后再推送到生产服务器上。切换到之前实现新需求的分支,.转载 2021-08-06 18:01:03 · 449 阅读 · 0 评论 -
Git 分支篇之分支原理
为了理解 Git 分支的实现方式,我们需要先了解一下 Git 是如何储存数据的。Git 保存的不是文件差异或者变化量,而是一系列文件快照。Git 的对象 Git 中主要有四个对象 Blob、Tree、Commit、Tag,都是以 SHA-1 值命名。 Blob 对应单个文件,它存储的是单个文件的内容,一般是二进制数据文本,不包含其他的文件信息,比如文件名、权限和其他元数据。 Tree 对应的是文件系统中的目录,主要包含每个文件的类型、权限信息、对应的 Git 对象类型、SHA-1值、文件转载 2021-08-06 15:36:52 · 1031 阅读 · 0 评论 -
.git 目录结构
Git 本地仓库的信息都保存在 .git 文件中,今天我们就来了解下这个目录结构。.git|—— hooks # 文件夹,钩子|—— info # 文件夹| |—— exclude| |—— refs|—— logs # 文件夹,提交日志信息| |—— refs # 文件夹| | |—— heads| | |—— remotes| |—— HEAD |—— obj原创 2021-08-05 18:48:35 · 821 阅读 · 1 评论 -
Git 分支篇之分支介绍
回顾 经过 Git 本地篇的学习,应该已经清楚了 Git 的工作区、暂存区、本地仓库的概念,创建本地仓库的两种方法(git init 和 git clone),将文件纳入跟踪(git add),将文件提交到本地库进行版本管理的流程(git add -> git commit),查看仓库状态(git status)和文件修改内容(git diff),版本回退操作(git reset),撤销文件修改(git restore)。 本篇主要讲解的是分支的使用。分支介绍 几乎所有的版本控制系统都以原创 2021-08-05 17:46:19 · 194 阅读 · 0 评论 -
Git 远程篇之查看远程仓库信息
要参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库。远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写。同他人协作开发某个项目时,需要管理这些远程仓库,以便推送或拉取数据,分享各自的工作进展。管理远程仓库的工作,包括添加远程库,移除废弃的远程库,管理各式远程库分支,定义是否跟踪这些分支,等等。 本节主要讲解查看当前的远程仓库和查看某个远程仓库的详细信息。查看当前的远程仓库 要查看当前配置有哪些远程仓库,可以用 git remote 命令,它会列出原创 2021-08-05 16:27:43 · 28990 阅读 · 0 评论 -
Git 本地篇之撤销修改
任何已经提交到 Git 的都可以被恢复。即便在已经删除的分支中的提交,或者用 --amend 重新改写的提交,都可以被恢复。所以,你可能失去的数据,仅限于没有提交过的,对 Git 来说它们就像从未存在过一样。撤销工作区修改 命令: git checkout -- <filename> 或者 git restore <filename> 这两条命令都可以将工作区的文件回复到修改之前。如果之前没有暂存,会恢复到最后一次提交的内容,如果暂存过,则会恢复到暂存区的内容。 这原创 2021-08-05 14:42:59 · 517 阅读 · 0 评论 -
Git 本地篇之查看状态和比较文件内容
查看本地库状态 命令: git status。 作用: 用来查看仓库当前的状态,显示的内容是相对于上一次提交之后,是否有新建文件、修改文件、删除文件的操作。 上面展示的图片中,相对于上一次提交,本次操作修改了 file1.txt,删除了 file3.txt,另外 file2.txt 没有被追踪。 可以看到,除了一些状态之外,还有一些提示,比如可以用 git restore <file> 来取消暂存区的一些修改。比较文件内容 命令: git diff。 作用: 比较文件原创 2021-08-04 18:09:32 · 403 阅读 · 0 评论 -
Git 本地篇之创建仓库
介绍 使用 Git 在我们本地创建仓库的方法有两种,一种是 git init,另一种是 git clone,这两种方法非常容易区分。 git init 初始化,该命令会重新创建一个 git 仓库。可以看到执行过 git init 创建的仓库中只有 .git 文件,没有其他文件,这表明这是一个空仓库。Git 所有需要的数据和资源都存放在这个 .git 目录下。 git clone 克隆,该命令会从远程仓库获取现有的 git 仓库,并将其保存到本地。可以看到执行 git clone 命令之原创 2021-07-26 20:59:25 · 1312 阅读 · 0 评论 -
Git与Repo入门
本文转载于Git与Repo入门,这篇博客写的非常详细易懂,强烈推荐 Git 入门的一篇博客。版本控制 版本控制是什么已不用在说了,就是记录我们对文件、目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作。。。一、原始版本控制 最原始的版本控制是纯手工的版本控制:修改文件,保存文件副本。有时候偷懒省事,保存副本时命名比较随意,时间长了就不知道哪个是新的,哪个是老的了,即使知道新旧,可能也不知道每个版本是什么内容,相对上一版作了什么修改了,当几个版本过去后,很可能就是下面的转载 2021-07-13 11:41:21 · 935 阅读 · 0 评论 -
在 GitHub 中找项目的方法
对于刚接触 GitHub 的人来说,如何在 GitHub 上找到一个优质的项目是一个困惑。今天我在这里分享几个找项目的技巧。方法说明原创 2021-05-13 13:46:37 · 4500 阅读 · 0 评论 -
Git 本地篇之初次使用
1. 初始化本地库命令git init效果 可以看到 git init 命令在 C:/workspace/GitTest/.git/ 中初始化了一个空的 Git 仓库。此时在我们的 C:/workspace/GitTest/ 目录就会出现一个 .git 目录。如果没有,不用着急,这是因为 .git 是隐藏文件,可以通过点击上方的查看,勾选右侧的隐藏项目名,来显示隐藏文件。注意 .git 目录下存放的是和本地库相关的子目录和文件,不要随意修改和删除,否则就无法使用 Git 来进行版本控制原创 2021-05-07 13:57:56 · 205 阅读 · 0 评论 -
集中式版本控制 VS 分布式版本控制
目前企业使用的版本控制系统基本上都是 Git 和 SVN。其中 SVN 是集中式的版本控制系统,而 Git 是分布式的版本控制系统。那么它们之间有什么区别呢?集中式版本控制系统 集中式版本控制系统的版本库是集中存放在中央服务器的。 而平时写代码都是用自己的电脑,所以需要先从中央服务器取得最新的版本,然后开始编写代码,再把自己的修改之后的代码推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。 缺点: 集中式版本控制系原创 2021-05-07 13:21:51 · 1726 阅读 · 0 评论 -
Git 上传文件到 GitHub
创建远程仓库 在 GitHub 上创建一个远程仓库,详情见 GitHub 创建仓库。下载并安装 Git 安装步骤见Windows 下 Git 安装。初始化本地仓库 在 我的电脑 中找到需要上传到 GitHub 的文件所在的位置,点击鼠标右键,选择 Git Bash Here。例如,我现在相上传到 GitHub 的文件是 C参考手册.chm,所以我需要在下图所示的位置点击鼠标右键,选择 Git Bash Here。 在打开的命令行中输入 git init 初始化本地仓库。 此时会在当原创 2021-05-06 14:09:16 · 218 阅读 · 1 评论 -
Git 远程篇之 GitHub 创建仓库
创建仓库 打开GitHub网址,登录我们的 Github 账号(如果没有就直接注册一个),点击右上角的 + 号,选择二级菜单中的 New repository (新建仓库)选项。 在 Create a new repository 界面中填写 Repository name,也就是我们的仓库名,是我们自己起的。Description 是描述,可填可不填,类似代码注释,可以在这里简单说明一下这个仓库是干嘛的。 选择 Public 表示所有人都可以看到这个仓库的内容,而 Private 表示只有原创 2021-04-30 17:34:42 · 391 阅读 · 1 评论 -
Git 本地篇之控制版本的前进后退
Git 控制版本的前进和后退有三种方式,其中最推荐的还是基于索引值的操作。基于索引值的操作使用 ^ 符号的操作使用 ~ 符号的操作Git 版本前进后退的本质 Git 中 HEAD 指针指向的就是当前版本,所以控制版本的前进后退本质是控制 HEAD 指针。基于索引值的操作命令git reset --hard 索引值示例使用 ^ 符号的操作 只能后退,一个 ^ 表示后退一步。# 后退一步git reset --hard HEAD^# 后退两步git reset -原创 2021-04-30 15:03:36 · 347 阅读 · 0 评论 -
Git 本地篇之查看提交历史
查看历史版本其实就是查看提交日志。git loggit log字段意义46650f96629b0288fb17fa9152bd9d980142b3c2hash 值。(HEAD -> master)其中 HEAD 其实就是一个指针,它指向的就是当前的版本。Author就是我们配置的签名了,标识着这个是谁提交的。Date提交日期。最后一行提交信息。 如果提交次数太多,该日志会分页显示。空格向下翻页b 向上翻页q 退出原创 2021-04-30 14:16:16 · 6797 阅读 · 0 评论 -
Git 本地篇之提交文件
文章目录1. 初始化本地库命令效果注意2. 设置签名签名形式作用辨析命令项目级别/仓库级别系统用户级别优先级3. 查看状态命令效果4. 创建文件并提交到本地库命令5. 修改文件并提交到本地库1. 初始化本地库命令git init效果 可以看到 git init 命令在 C:/workspace/GitTest/.git/ 中初始化了一个空的 Git 仓库。此时在我们的 C:/workspace/GitTest/ 目录就会出现一个 .git 目录。如果没有,不用着急,这是因为 .git 是隐藏原创 2021-04-30 13:50:18 · 3868 阅读 · 0 评论 -
Git 概念篇之工作区域
本地库 工作区:在当前仓库中,对文件的添加、修改、删除的动作发生在工作区中。简单来说,就是我们写代码的地方。 暂存区:简单来说,暂存区就是打算要提交的内容,但是还没有提交,临时存储的地方。 本地库:本地代码库,保存历史版本的地方。 本地的工作流程:在工作区新建一个文件,通过 git add 命令将工作区的文件添加到暂存区,通过 git commit 命令提交到本地库。远程库 远程库:远程代码库。 代码托管中心的任务:帮助我们维护远程库。 局域网环境下有 GitLab 服务器作为原创 2021-04-30 10:18:58 · 294 阅读 · 0 评论 -
Windows 下 Git 安装
下载 Git 首先到 Git 官网下载 Git。安装 Git 运行安装程序,基本上保持默认设置,一直点下一步即可。 单独拿出几个配置来简单说明一下。1. 选择组件(保持默认即可)2. 调整环境变量(前两项任选一个即可)3. 配置行结束符(保持默认)这一项是因为 Windows 和 Unix 系统的换行符是不同的。4. 默认终端(保持默认)安装完毕 安装完 Git 之后,在桌面右击的菜单中就会出现 Git GUI Here 和 Git Bash Here 这两个选项了原创 2021-04-30 00:14:09 · 120 阅读 · 0 评论 -
Git 介绍
发展历史 1991年,Linux 操作系统发布,起初是 Linus 手动合并代码,但是随着参与的开发者越来越多,代码也越来越庞大。 2002 年,BitKeeper 的东家 BitMover 公司授权 Linux 社区免费使用这个版本控制系统,但要求不能进行破解。PS:BitKeeper 是商业软件。 2005 年,开发 Samba 的 Andrew 试图破解 BitKeeper 的协议,被 BitMover 公司发现,要求收回 Linux 社区的免费使用权。 造成此次事件的原因:Linux原创 2021-04-29 17:23:51 · 111 阅读 · 0 评论