查看原文
其他

数据治理 | 随心所欲切换文档版本!误删什么的再也不怕啦~

快点关注→ 数据Seminar 2022-12-31

目录

第一步:创建项目文件夹

第二步:创建项目的版本库

第三步:配置版本库参数

  1. 配置用户信息

  2. 防止中文乱码

第四步:将当前文档提交到版本库

第五步:修改文档并提交修改

第六步:将文档切换到指定版本

个人文档管理总结

本文共3346个字,阅读大约需要9分钟,欢迎指正!


问题解答




上篇推文中,有读者提出:如何在 macOS 上安装 Git ?
答:可以参考这篇文章:https://git-scm.com/book/en/v2/Getting-Started-Installing-Git


正文开始




上期推文,我们学习了“版本控制”的基本概念,并安装了版本控制工具Git,本期推文我们一起学习如何使用 Git 管理个人文档(对文档进行版本控制)

提示

本文希望大家先照着敲一遍,下一篇我们会介绍Git的基本工作原理帮助大家更好掌握Git。

第一步创建项目文件夹

假设我们需要用 Git 管理 "Git学习笔记.docx" 这个文档,先要创建一个空文件夹,把 "Git学习笔记.docx" 放入其中。
我们不妨称此文件夹为:"项目文件夹" ,"项目" 一词更加具体的含义为 "《Git学习笔记.docx》文档的版本控制项目" 。如下图所示:
Git学习笔记.docx 中的内容如下图所示,后面的步骤我们会在这个文档中添加和删除内容,并通过Git返回到指定的版本!

第二步创建项目的版本库

版本库是保存文档版本信息的文件夹。简单来说,版本库保存了文档的快照(可用游戏存档进行类比),我们修改文档后,即把文档快照保存到版本库,以达到切换文档版本的目的(就像我们保存了游戏存档,就可以切换到不同的游戏状态)。
在Git项目文件夹中点击鼠标右键,再点击 "Git Bash Here",运行 Git 的命令行交互工具。如下图所示:

说明

  • Git GUI Here 表示在当前的文件夹中,运行Git 的图形化交互工具。

  • Git Bash Here 表示在当前的文件夹中,运行 Git 的命令行交互工具。

我们首先学习 Git 的命令行交互工具,学会了 Git的相关命令,可以更效率地管理我们的文档。

在弹出的Git命令行交互工具中,输入git init,然后回车,即可创建 本项目的版本库,版本库是以 .git 命名的隐藏文件夹。如下图所示:

注意

版本库(.git 文件夹)默认是隐藏的文件夹,如果要看到此文件夹,需要点击资源浏览器的【查看】,然后勾选【隐藏的项目】,如下图所示:

第三步配置版本库参数

项目版本库(.git 文件夹)创建之后,我们就可以 “存档” 我们的文件夹了,但在此之前我们需要配置用户信息,并且针对windows用户我们还要解决中文显示的问题。

提示

Git命令非常多,我们只要掌握最常用的几个,满足日常文档管理需求即可。

1配置用户信息

用 Git 管理文档,首先要让 Git 知道这些文档的作者是谁。配置项目用户信息需要用到如下命令:
git config --local user.name  user_name
git config --local user.email user_email
命令解读:
  • git config 用来设置版本库参数,本质是把输入信息写入到 config 配置文件中(提示:config文件在 .git 目录中有一份 )
  • --local 表示设置的参数只针对此项目生效(只对当前目录下的 .git 版本库生效)
  • user.name 表示 设置 config 文件中的 用户名称
  • user.email 表示 设置 config 文件中的 用户联系方式
  • user_name 和 user_email 是用户自定义的
基本操作如下图所示:
git config 的本质是把输入信息写入到配置文件中。我们可以进入到项目版本库中,打开 config 文件进行验证。
.git 文件夹中的其他文件夹和文件我们在后续推文中会一一讲解。现在,我们需要知道 .git 下的 config 文件是 版本库的配置参数文件。

2防止中文乱码

在 windws 中执行 Git 相关命令,会出现中文无法正常显示的情况。需要我们在 Git 命令行交互工具中运行:git config --global core.quotepath false
操作如下:

注意

git status 可以暂时理解为查看项目中文档的变动情况。Untracked files 表示文档还没有被Git管理,我们将在第四步中详细介绍。

第四步将当前文档提交到版本库

之前的三步都是铺垫工作。现在我们要让Git管理我们的文档  "Git学习笔记.docx" 。让 Git 管理文档的必要操作是把文档提交到版本库(类似我们玩游戏时需要点击保存)。
需要执行以下两个命令:
git add .
git commit -m "创建了版本库,创建了 Git学习笔记.docx"
命令说明:
  • git add . 将项目文件夹中的所有文档提交到版本库的暂存区。我们也可以指定文件如 git add Git学习笔记.docx ,暂存区是什么我们在下期推文中详细介绍。
  • git commit -m "注释信息"  将暂存区的文档提交到版本库的master分支,关于 master 分支的介绍也在下期推文中。

重点提示

git commit -m "注释信息"  这个命令中,"注释信息"非常重要,当我们持续提交多个版本后,恢复到指定的版本需要通过注释信息来判断!
操作如下:
提交成功后,Git 就会记录下此时文档的信息,即当前的文档版本被Git保管起来,如果有需要就可以把文档切换到这个版本。

第五步修改文档并提交修改

做完第四步后,Git 已经开始管理我们的文档了。现在我们修改 "Git学习笔记.docx" 文档,删除一些文本,修改后内容如下:
我们将修改后的文档提交到版本库。
git add .
git commit -m "删除了文档中的内容"
操作如下图所示:

重点提醒

文档发生重大更改,或者我们希望保存当前的文档时,则要提交当前的文档,否则文档丢失,只能从版本库中恢复之前一次 "存档" !一句话,及时提交修改后的文档,并做好版本备注!

第六步将文档切换到指定版本

安装上述流程操作,我们已经提交了两个版本的文档:
  • 第一个版本是初始化项目,并创建了文档(第四步的操作)
  • 第二个版本是删除了文档中的一些文字(第五步的操作)
现在我需要把文档回退到第一个版本,应该如何操作呢?
首先查看版本库中有哪些“存档”(每一次提交都是一个存档),使用 git reflog 命令,如下图所示:
上图中,2bddd43 和 afdb765 分别是两次提交的提交ID号(前7位)。每一次提交可以视为Git保存了文档的一个版本 (一次游戏存档记录)。
如果要回到ID为 afdb765 的这个版本,我们只要输入命令:git reset --hard afdb765,操作如下图所示:
此时,我们再次打开文档发现,删除的内容回来了:

个人文档管理总结

使用 Git 管理个人文档的基本流程如下:
  1. 创建一个项目文件夹(空文件夹),放入需要被Git管理的文件
  2. 在项目文件夹中,用 git init 创建版本库
  3. 在项目文件夹中,用 git config 命令设置用户信息和添加防中文乱码配置
  4. 使用 git add . 和git commit -m"注释" 将文档提交到版本库
  5. 使用 git reflog 查看 提交ID(前7位)
  6. 使用 git reset --hard 提交ID(前7位) 将文档切换到指定的版本


注意:
  • 修改文档内容后,需要把修改后的文档提交到版本库。否则,Git不会保存修改后的文档。
  • 提交时的注释信息要尽可能详细
  • 本文我们先体会Git的基本操作,文中我们提到了 暂存区、master分支这些名词,我会在下期推文中介绍
我们将在数据治理板块中推出一系列原创推文,帮助读者搭建一个完整的社科研究数据治理软硬件体系。该板块将涉及以下几个模块(点击标题即可跳转至相应合集):
  1. 计算机基础知识
  2. 编程基础
  3. 数据采集
  4. 数据存储
  5. 数据清洗
  6. 数据实验室搭建
  7. 数据治理特别篇



星标⭐我们不迷路!想要文章及时到,文末“在看”少不了!

点击搜索你感兴趣的内容吧

往期推荐


基本无害 | 使回归有意义——异质性和非线性(全)

数据治理 | 还在手动保存副本?那你一定还不知道这个小工具!

数据可视化 | 美丽的危机!被藻华淹没的港口——青岛

数据可视化 | 为什么你需要使用哑铃图

数据治理 | 有效防止跑数据卡顿!社科人必须掌握的计算机知识





数据Seminar




这里是大数据、分析技术与学术研究的三叉路口


文 | 《社科领域大数据治理实务手册》


    欢迎扫描👇二维码添加关注    

点击下方“阅读全文”了解更多

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存